Arbeit an einem Skript zum Import PmWiki -> PlomWiki.
#!/bin/bash rm -rf pages/ mkdir pages mkdir pages/diffs group='Mind' filenames=`ls | grep $group'.[A-Za-z0-9-]\+$' | sed 's/'$group'.\([A-Za-z0-9-]\+\)$/\1/g'` for title in $filenames do filename=$group.$title echo 'Working on: '$filename cat $filename \ | grep '^text=' \ | sed 's/^text=//' \ | sed 's/%0a/\n/g' \ > pages/$title; truncate --size=-1 pages/$title cat $filename | awk ' BEGIN { RS = "\nhost"; FS = "\n" } { A[0] = $2; A[1] = $3; A[2] = $4; A[3] = $5; A[4] = $6; A[5] = $7; A[6] = $8; A[7] = $9; A[8] = $10; A[9] = $11; A[10] = $12; A[11] = $13; A[12] = $14; author = csum = diff = "!" for (var in A) { if ( match(A[var], /^author/) ) { author = A[var] sub(/^author:[0-9]+=/, "", author) } if ( match(A[var], /^csum/) ) { csum = A[var] sub(/^csum:[0-9]+=/, "", csum) } if ( match(A[var], /^diff/) ) { diff = A[var] match(diff, /^diff:[0-9]+:/) time = substr(diff, 6, RLENGTH - 6) sub(/^diff:[0-9]+:[0-9]+:(minor)?=/, "!diff", diff) } } if ( diff != "!" ) { print "!!" print time print author print csum print diff print "%%" } } ' \ | sed 's/^!diff/%0a/g' \ | sed 's/%0a\([0-9,]\+\)\([acd]\)\([0-9,]\+\)/\n\3\2\1\n/g' \ | sed 's/^\([0-9,]\+\)a\([0-9,]\+\)$/\1d\2/g' \ | sed 's/^\([0-9,]\+\)d\([0-9,]\+\)$/\1a\2/g' \ | sed 's/\([^\n]\+\)%0a---\([^\n]\+\)/\2\n\1/g' \ | sed 's/%0a> /%0a</g' \ | sed 's/%0a%3c /%0a>/g' \ | sed 's/^%0a//g' \ | sed 's/%0a$//g' \ | sed 's/%0a\\ No newline at end of file//g' \ | sed 's/%0a>/\n>/g' \ | sed 's/%0a</\n</g' \ | grep -v '^$' \ | sed 's/^!$//' > temp x=`cat temp | grep '^!!$' | wc -l` cat temp | awk -v x=$x ' { if ( match($0, "^!!$" ) ) { i++ print x - i } else print }' \ >> pages/diffs/$title; rm temp done
Das Ergebnis ist nicht perfekt und bedarf einiger Nachkorrekturen, vor allem in den Diffs. Zu dem Zweck habe ich mir eine Diff-Probleme-Diagnostik-und-Reparatur-Suite gebastelt fürs PlomWiki: https://github.com/plomlompom/PlomWiki/blob/master/plugins/DiffRepair.php
Keine Autolink-Rückverweise zu dieser Seite gefunden.
Keine Kommentare zu dieser Seite.
Kommentar-Schreiben derzeit nicht möglich: Kein Captcha gesetzt.