| @@ -0,0 +1,58 @@ | |||||
| #! /bin/sh | |||||
| # Konwertuje artykuły z Micropedii i SclaviniaWiki na format | |||||
| # Encyklopedii Wandejskiej. | |||||
| # Copyright © 2017 Paulina Laura Emilia <vilene@posteo.net> | |||||
| # | |||||
| # This program is free software. It comes without any warranty, to | |||||
| # the extent permitted by applicable law. You can redistribute it | |||||
| # and/or modify it under the terms of the Do What The Fuck You Want | |||||
| # To Public License, Version 2, as published by Sam Hocevar. See | |||||
| # http://www.wtfpl.net/ for more details. | |||||
| show_usage=0 | |||||
| source= | |||||
| # Sprawdź czy pandoc jest zainstalowany. | |||||
| if ! pandoc --version > /dev/null 2>&1; then | |||||
| printf '%s: %s\n' "$0" 'Nie zainstalowano narzędzia pandoc.' >&2 | |||||
| exit 1 | |||||
| fi | |||||
| # Jeżeli zadeklarowano źródło inne niż Micropedia. | |||||
| case $1 in | |||||
| --*) | |||||
| source=${1#--} | |||||
| shift | |||||
| esac | |||||
| # Sprawdź czy podano wszystkie parametry. | |||||
| if [ -z "$1" ]; then | |||||
| printf '%s: %s\n' "$0" 'Musisz podać nazwę pliku źródłowego.' >&2 | |||||
| show_usage=1 | |||||
| fi | |||||
| if [ -z "$2" ]; then | |||||
| printf '%s: %s\n' "$0" 'Musisz podać tytuł strony źródłowej.' >&2 | |||||
| show_usage=1 | |||||
| fi | |||||
| if [ $show_usage -eq 1 ]; then | |||||
| printf 'Użycie: %s [--sclavinia] nazwa_pliku tytuł_strony\n' "$0" >&2 | |||||
| exit 1 | |||||
| fi | |||||
| # Skonwertuj plik wejściowy ze znaczników MediaWiki na znaczniki Markdown-SSW. | |||||
| sed -Ee 's/\[\[[^]]+\]\]/<nowiki>&<\/nowiki>/g' "$1" | \ | |||||
| pandoc --from=mediawiki --to=markdown_phpextra+auto_identifiers \ | |||||
| --base-header-level=2 --wrap=none | \ | |||||
| sed -Ee 's/\\\[\\\[([^]]+)\\\]\\\]/[[::\1]]/g' -e 's/^-\s+/* /' | |||||
| # Dodaj informację o źródle strony i licencji. | |||||
| urlname=$(printf '%s\n' "$2" | sed -e 's/ /_/g') | |||||
| case $source in | |||||
| sclavinia) | |||||
| printf '\n### Źródła\n\n_Strona zawiera materiał pochodzący z artykułu **[%s](http://vonthorn.sarmacja.org/wiki/index.php/%s)** ([lista autorów](http://vonthorn.sarmacja.org/wiki/index.php?title=%s&action=history)) w [Sclavinia Wiki](http://vonthorn.sarmacja.org/wiki/), udostępnionego na licencji [GNU FDL 1.2](https://www.gnu.org/licenses/old-licenses/fdl-1.2.html)._\n' "$2" "$urlname" "$urlname" | |||||
| ;; | |||||
| *) | |||||
| printf '\n### Źródła\n\n_Strona zawiera materiał pochodzący z artykułu **[%s](http://micropedia.wikia.com/wiki/%s)** ([lista autorów](http://micropedia.wikia.com/wiki/%s?action=history)) w [Micropedii](http://micropedia.wikia.com/), udostępnionego na licencji [CC BY-SA 3.0](http://creativecommons.org/licenses/by-sa/3.0/deed.pl)._\n' "$2" "$urlname" "$urlname" | |||||
| esac | |||||