Tool zum Konvertieren zwischen verschiedenen Nur-Text-Formaten

Es gibt verschiedene Arten von Klartext-Strukturierungs-/Formatierungssyntax, zum Beispiel:

  • MarkDown
  • MedienWiki
  • XWiki
  • HTML

Gibt es ein generisches Tool (einfacher / geeigneter als Reg-Ex), das beim Definieren und Ausführen von Konvertierungsregeln hilft?

Antworten (2)

Pandoc (Lizenz: GPL) kann importieren:

  • Abschlag
  • restrukturierterText
  • Textil-
  • HTML
  • DocBook
  • Latex
  • MediaWiki-Markup
  • OPML
  • Schellfisch-Markup

und in diese und verschiedene andere Formate konvertieren . (Benutzerdefinierte Formate können mit Lua hinzugefügt werden.)

Es ist ein eigenständiges Befehlszeilenprogramm und wird mit einer Haskell-Bibliothek geliefert.

Sie können es online testen: http://johnmacfarlane.net/pandoc/try/

Mit txt2tags ( https://txt2tags.org/ ) können Sie in mindestens 20 verschiedene Formate exportieren, darunter RTF (Rich Text Format), Latex, HTML, Wikipedia, Creole, Dokuwiki, restrukturierter Text, Markdown, Spip, AsciiDoc. ..

Es gibt einen HTML-Importer für txt2tags ( https://wiki.txt2tags.org/index.php/Main/Html2wiki ), sodass Sie so ziemlich alles damit machen können.

(Bearbeiten) Um meine Antwort vollständiger zu machen, ja, ich verwende txt2tags seit mehreren Jahren (mindestens 7 oder 8).

Der einzige Nachteil, der mir einfällt, ist, dass es weniger bekannt ist als beispielsweise Markdown, aber es ist älter (seit 2001) und meiner Meinung nach besser (anpassbarer, erweiterbarer, logischer und nicht fragmentiert in seiner Syntax).

Es hat eine Python 2-Implementierung für alle oben genannten Exporte und eine PHP-Implementierung nur für den HTML-Export.

Sie können spezielle Exportregeln entweder mit einem neuen Syntaxdefinitionsmodul oder mit Regex erstellen. Fürs Erste ist es ganz einfach, hier ist zum Beispiel die Exportregel für Fett im html-Modul:

'fontBoldOpen'         : '<B>'            ,
'fontBoldClose'        : '</B>'           ,

Mit Regex können Sie dies in Ihrem Dokument oder als Konfigurationsdatei tun.

Um beispielsweise in Ihrer HTML-Ausgabe strong anstelle von b zu verwenden, können Sie diese Regel erstellen:

%!postproc: '<b>' '<strong>'
%!postproc: '</b>' '</strong>'
Willkommen bei den Softwareempfehlungen! Wir bevorzugen persönliche Erfahrungen bei den Antworten, also haben Sie dieses Tool verwendet? Was sind Ihre Erfahrungen? Hat es einige Nachteile oder knifflige Teile, die erwähnt werden sollten? Auf welchem ​​Betriebssystem läuft es? Sehen Sie sich dieses Meta an, um zu erfahren, wie Sie diese Antwort großartig machen können: meta.softwarerecs.stackexchange.com/questions/356/…