3 while [ "$#" -gt 0 ]; do case "$1" in
4 --exec) _EXEC="$2"; shift 2;;
5 --data) _DATA="$2"; shift 2;;
6 *) moin="$1"; shift 1;;
10 . "${_EXEC:-${0%/*}}/cgilite/cgilite.sh"
16 s;<<BR>>;\ \; \n;g
18 s;'\'\'\'';**;g; s;'\'\'';*;g;
20 s;^====== (.+) ======$;\n###### \1;g
21 s;^===== (.+) =====$;\n##### \1;g
22 s;^==== (.+) ====$;\n#### \1;g
23 s;^=== (.+) ===$;\n### \1;g
24 s;^== (.+) ==$;\n## \1;g
29 s;\{\{attachment:([^}|]*)\|([^}|]*)\|([^}|]*)\}\};![\2](\1 "\3");g
30 s;\{\{attachment:([^}|]*)\|([^}|]*)\}\};![\2](\1);g
31 s;\{\{attachment:([^}|]*)\}\};![](\1);g
32 s;\[\[([^]|]*)\|([^]|]*)\|([^]|]*)\]\];[\2](\1);g
33 s;\[\[([^]|]*)\|([^]|]*)\]\];[\2](\1);g
37 s;:#!wiki (.*)$;: {\1};
43 s;<<([^\(>]+)\(([^,)]+),?([^)]*)\)>>;<<\1 "\2"(\3)>>;g;
45 s;<<([^\(>]+)\(\)>>;<<\1>>;g;
49 find "$moin" -maxdepth 1 -printf '%P\n' \
50 | while read mpage; do
51 [ -f "${moin}/${mpage}/current" ] || continue
52 read revision <"${moin}/${mpage}/current"
54 page="$(printf %s\\n "$mpage" |sed -r '
56 s;\(([0-9a-f][0-9a-f])(([0-9a-f]{2})+)\);%\1(\2);g
57 s;\(([0-9a-f][0-9a-f])\);%\1;g
60 page="$(HEX_DECODE % "$page" |PATH)"
62 mkdir -vp -- "${_DATA}/pages/${page}"
63 reformat <"${moin}/${mpage}/revisions/${revision}" >"${_DATA}/pages/${page}/#page.md"
65 [ -d "${moin}/${mpage}/attachments" ] \
66 && cp -vrfT -- "${moin}/${mpage}/attachments" "${_DATA}/pages/${page}/#attachments"