DokuWiki

It's better when it's simple

User Tools

Site Tools


tips:mediawiki_to_dokuwiki_converter

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tips:mediawiki_to_dokuwiki_converter [2015-02-26 14:32] – [yamdwe tool] 85.158.227.32tips:mediawiki_to_dokuwiki_converter [2017-10-12 17:51] (current) – [yamdwe tool] 207.191.190.131
Line 21: Line 21:
 **Cons**:  **Cons**: 
   * Is Python based so it's more involved to set up than most of the other tools listed here (install steps for Linux are provided.)   * Is Python based so it's more involved to set up than most of the other tools listed here (install steps for Linux are provided.)
-  * Unordered List ItemSlow for much mediawiki content +  * Slow for large amounts of Mediawiki content 
-  * Categorys are not converted (the content within the category pages)+  * Categories are not converted (the content within the category pages)
 ===== Older scripts: ===== ===== Older scripts: =====
 ===== Updated Scripts for Converting Mediawiki 1.15.1 to Anteater. ===== ===== Updated Scripts for Converting Mediawiki 1.15.1 to Anteater. =====
Line 491: Line 491:
  
  --- [[user>gtournat|gtournat]] //2011/11/06 13:16//  --- [[user>gtournat|gtournat]] //2011/11/06 13:16//
 +
 +
 +====== Mediawiki 2 Dokuwiki Converter ======
 +
 +<code perl>
 +#! /bin/sh
 +# Mediawiki2Dokuwiki Converter
 +# originally by Johannes Buchner <buchner.johannes [at] gmx.at>
 +# License: GPL (http://www.gnu.org/licenses/gpl.txt)
 +
 +# Headings
 +cat mediawiki | \
 +   perl -pe 's/^[ ]*=([^=])/<h1> ${1}/g' | \
 +   perl -pe 's/([^=])=[ ]*$/${1} <\/h1>/g' | \
 +   perl -pe 's/^[ ]*==([^=])/<h2> ${1}/g' | \
 +   perl -pe 's/([^=])==[ ]*$/${1} <\/h2>/g' | \
 +   perl -pe 's/^[ ]*===([^=])/<h3> ${1}/g' | \
 +   perl -pe 's/([^=])===[ ]*$/${1} <\/h3>/g' | \
 +   perl -pe 's/^[ ]*====([^=])/<h4> ${1}/g' | \
 +   perl -pe 's/([^=])====[ ]*$/${1} <\/h4>/g' | \
 +   perl -pe 's/^[ ]*=====([^=])/<h5> ${1}/g' | \
 +   perl -pe 's/([^=])=====[ ]*$/${1} <\/h5>/g' | \
 +   perl -pe 's/^[ ]*======([^=])/<h6> ${1}/g' | \
 +   perl -pe 's/([^=])======[ ]*$/${1} <\/h6>/g' \
 +    > mediawiki1
 +
 +cat mediawiki1 | \
 +   perl -pe 's/<\/?h1>/======/g' | \
 +   perl -pe 's/<\/?h2>/=====/g' | \
 +   perl -pe 's/<\/?h3>/====/g' | \
 +   perl -pe 's/<\/?h4>/===/g' | \
 +   perl -pe 's/<\/?h5>/==/g' | \
 +   perl -pe 's/<\/?h6>/=/g' | \
 +   cat > mediawiki2
 +
 +# lists
 +cat mediawiki2 |
 +  perl -pe 's/^[\*#]{4}\*/          * /g'  | \
 +  perl -pe 's/^[\*#]{3}\*/        * /g'    | \
 +  perl -pe 's/^[\*#]{2}\*/      * /g'      | \
 +  perl -pe 's/^[\*#]{1}\*/    * /g'        | \
 +  perl -pe 's/^\*/  * /g'                  | \
 +  perl -pe 's/^[\*#]{4}#/          \- /g'  | \
 +  perl -pe 's/^[\*\#]{3}\#/      \- /g'    | \
 +  perl -pe 's/^[\*\#]{2}\#/    \- /g'      | \
 +  perl -pe 's/^[\*\#]{1}\#/  \- /g'        | \
 +  perl -pe 's/^\#/  - /g'                  | \
 +  cat > mediawiki3
 +
 +#[link] => [[link]]
 +cat mediawiki3 |
 +  perl -pe 's/([^\[])\[([^\[])/${1}[[${2}/g' |
 +  perl -pe 's/^\[([^\[])/[[${1}/g' |
 +  perl -pe 's/([^\]])\]([^\]])/${1}]]${2}/g' |
 +  perl -pe 's/([^\]])\]$/${1}]]/g' \
 +  > mediawiki4
 +
 +#[[url text]] => [[url|text]]
 +cat mediawiki4 |
 +  perl -pe 's/(\[\[[^| \]]*) ([^|\]]*\]\])/${1}|${2}/g' \
 +  > mediawiki5
 +
 +# bold, italic
 +cat mediawiki5 |
 +  perl -pe "s/'''/**/g" |
 +  perl -pe "s/''/\/\//g" \
 +  > mediawiki6
 +
 +# talks
 +cat mediawiki6 |
 +  perl -pe "s/^[ ]*:/>/g" |
 +  perl -pe "s/>:/>>/g" |
 +  perl -pe "s/>>:/>>>/g" |
 +  perl -pe "s/>>>:/>>>>/g" |
 +  perl -pe "s/>>>>:/>>>>>/g" |
 +  perl -pe "s/>>>>>:/>>>>>>/g" |
 +  perl -pe "s/>>>>>>:/>>>>>>>/g" \
 +  > mediawiki7
 +
 +cat mediawiki7 |
 +  perl -pe "s/<pre>/<code>/g" |
 +  perl -pe "s/<\/pre>/<\/code>/g" \
 +  > mediawiki8
 +
 +cat mediawiki8 > dokuwiki
 +</code>
 +
tips/mediawiki_to_dokuwiki_converter.1424957534.txt.gz · Last modified: 2015-02-26 14:32 by 85.158.227.32

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki