Différences entre les versions de « Conversion wiki vers html avec sed »

De April MediaWiki
Aller à la navigationAller à la recherche
(Nouvelle page : Voici un script sed tout simple qui converti l'essentiel de Médiawiki vers du html près à être intégré en ''filtered html'' sur le Drupal. A améliorer : * Prendre correctemen...)
 
 
(6 versions intermédiaires par 3 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
Voici un script sed tout simple qui converti l'essentiel de Médiawiki vers du html près à être intégré en ''filtered html'' sur le Drupal.
+
Voici un script sed tout simple qui convertit l'essentiel de Médiawiki vers du html prêt à être intégré en ''filtered html'' sur le Drupal.
  
 
A améliorer :
 
A améliorer :
Ligne 12 : Ligne 12 :
 
  <nowiki>s/{{[ ]*[Tt]ravail [Ee]n [Cc]ours.*}}//g</nowiki>
 
  <nowiki>s/{{[ ]*[Tt]ravail [Ee]n [Cc]ours.*}}//g</nowiki>
 
  <nowiki>s/<references *\/>//g</nowiki>
 
  <nowiki>s/<references *\/>//g</nowiki>
  <nowiki></nowiki>
+
   
 
  <nowiki># Mise en forme</nowiki>
 
  <nowiki># Mise en forme</nowiki>
 
  <nowiki>s/'''\(.*\)'''/<strong>\1<\/strong>/g</nowiki>
 
  <nowiki>s/'''\(.*\)'''/<strong>\1<\/strong>/g</nowiki>
 
  <nowiki>s/''\(.*\)''/<em>\1<\/em>/g</nowiki>
 
  <nowiki>s/''\(.*\)''/<em>\1<\/em>/g</nowiki>
  <nowiki></nowiki>
+
   
 
  <nowiki># Liens</nowiki>
 
  <nowiki># Liens</nowiki>
 
  <nowiki>s/\[\[\([^|]*\)|\([^]]*\)\]\]/<a href="http:\/\/wiki.april.org\/\1">\2<\/a>/g</nowiki>
 
  <nowiki>s/\[\[\([^|]*\)|\([^]]*\)\]\]/<a href="http:\/\/wiki.april.org\/\1">\2<\/a>/g</nowiki>
Ligne 25 : Ligne 25 :
 
  <nowiki># Structure</nowiki>
 
  <nowiki># Structure</nowiki>
 
  <nowiki>s/<\(\/\?\)ref>/<\1fn>/g</nowiki>
 
  <nowiki>s/<\(\/\?\)ref>/<\1fn>/g</nowiki>
  <nowiki>s/^\s*=====\s\?\(.*\)\s\?=====/<h5>\1<\/h5>/</nowiki>
+
  <nowiki>s/^\s*=====\(.*\)=====/<h5>\1<\/h5>/</nowiki>
  <nowiki>s/^\s*====\s\?\(.*\)\s\?====/<h4>\1<\/h4>/</nowiki>
+
  <nowiki>s/^\s*====\(.*\)====/<h4>\1<\/h4>/</nowiki>
  <nowiki>s/^\s*===\s\?\(.*\)\s\?===/<h3>\1<\/h3>/</nowiki>
+
  <nowiki>s/^\s*===\(.*\)===/<h3>\1<\/h3>/</nowiki>
  <nowiki>s/^\s*==\s\?\(.*\)\s\?==/<h2>\1<\/h2>/</nowiki>
+
  <nowiki>s/^\s*==\(.*\)==/<h2>\1<\/h2>/</nowiki>
  <nowiki>s/^\s*=\s\?\(.*\)\s\?=/<h1>\1<\/h1>/</nowiki>
+
  <nowiki>s/^\s*=\(.*\)=/<h1>\1<\/h1>/</nowiki>
 
   
 
   
 
  <nowiki>s/__TOC__/[toc list: ol; title: Table of Contents; minlevel: 2; maxlevel: 3;]/</nowiki>
 
  <nowiki>s/__TOC__/[toc list: ol; title: Table of Contents; minlevel: 2; maxlevel: 3;]/</nowiki>
  <nowiki></nowiki>
+
   
 
  <nowiki># Typographie</nowiki>
 
  <nowiki># Typographie</nowiki>
  <nowiki>s/«\s\+/«\&nbsp;/g</nowiki>
+
  <nowiki>s/«\s\+/«\&amp;nbsp;/g</nowiki>
<nowiki>s/\s\+»/\&nbsp;»/g</nowiki>
+
  <nowiki>s/\s\+\([:;?!]\)/\&amp;nbsp;\1/g</nowiki>
  <nowiki>s/\s\+\([:;?!]\)/\&nbsp;\1/g</nowiki>
 
 
   
 
   
 
  <nowiki># Listes (impossible à bien faire en sed pur)</nowiki>
 
  <nowiki># Listes (impossible à bien faire en sed pur)</nowiki>
  <nowiki>s/^\s*\*\s*\(.*\)/<li>\1<\/li>/</nowiki>
+
  <nowiki>s/^\s*\[#*]\s*\(.*\)/<li>\1<\/li>/</nowiki>
 +
 
 +
[[Catégorie:Aide]]
 +
[[Catégorie:Transcriptions]]

Dernière version du 14 octobre 2011 à 10:08

Voici un script sed tout simple qui convertit l'essentiel de Médiawiki vers du html prêt à être intégré en filtered html sur le Drupal.

A améliorer :

  • Prendre correctement en charge les listes.

Du fait des limitations de Médiawiki, vous devez copier/coller le script suivant dans un éditeur et enregistrer sous wiki2html.sed.

# wiki2html.sed : passer du wiki à du Html avec Sed

# À voir ultérieurement
s/\[\[[Cc]at[ée]gorie[^]]*\]\]//g
s/{{[ ]*[Tt]ravail [Ee]n [Cc]ours.*}}//g
s/<references *\/>//g

# Mise en forme
s/'''\(.*\)'''/<strong>\1<\/strong>/g
s/''\(.*\)''/<em>\1<\/em>/g

# Liens
s/\[\[\([^|]*\)|\([^]]*\)\]\]/<a href="http:\/\/wiki.april.org\/\1">\2<\/a>/g
s/\[\[\([^]]*\)\]\]/<a href="http:\/\/wiki.april.org\/\1">\1<\/a>/g
s/\[\([^ ]*\) \([^]]*\)\]/<a href="\1">\2<\/a>/g
s/ \(http[^ <]*\)/ <a href="\1"><tt>\1<\/tt><\/a>/g

# Structure
s/<\(\/\?\)ref>/<\1fn>/g
s/^\s*=====\(.*\)=====/<h5>\1<\/h5>/
s/^\s*====\(.*\)====/<h4>\1<\/h4>/
s/^\s*===\(.*\)===/<h3>\1<\/h3>/
s/^\s*==\(.*\)==/<h2>\1<\/h2>/
s/^\s*=\(.*\)=/<h1>\1<\/h1>/

s/__TOC__/[toc list: ol; title: Table of Contents; minlevel: 2; maxlevel: 3;]/

# Typographie
s/«\s\+/«\&nbsp;/g
s/\s\+\([:;?!i»]\)/\&nbsp;\1/g

# Listes (impossible à bien faire en sed pur)
s/^\s*\[#*]\s*\(.*\)/<li>\1<\/li>/