Seite 1 von 1

Markdown oder HTML Ökosystem

Verfasst: 09.01.2018 13:31
von TroaX
Ich bin gerade am überlegen, für Dokumente ein Ökosystem in Markdown oder HTML zu realisieren. Ziel ist es, aus dem Kontext von RTF, technischen Steuerzeichen und Sequenzen sowie fummeligen Konvertierungen auszubrechen und einen einheitlichen Standard innerhalb von Purebasic zu definieren, mit denen sich zum einen Dokumente speichern lassen, die auch eine kompatibilität mit anderen Anwendungen aufweisen (Web, CMS, Typora und andere Markdown-Editoren, Wikisysteme etc.), auch ohne installierte Programme lesbar sind, sich leicht parsen und in andere Formate überführen lassen.

Für Purebasic soll im ersten Schritt ein Markdown-Parser geschrieben werden, der ein Dokument in einen XML- oder JSON-Baum zerlegt. HTML hat ja bereits schon eine XML-Struktur, wodurch HTML theoretisch leichter wäre. Die Knoten sollen einzeln angesprochen und dann innerhalb der Anwendung abgefragt werden können. Außerdem lassen sich Formulare schnell und einfach in ein solches Dokument einarbeiten. Dann soll aus dem Baum mit den Zeichenbefehlen ein druckbares Dokument erstellt werden. Später könnte ich mir auch ein eigenes Editor-Gadget vorstellen.

Der Vorteil an Markdown bzw. HTML ist, das es schon unfassbar viele Tools zur Konvertierung gibt. Pandoc z.B. ist so eines, das aus HTML, Markdown und andere Formate PDF's, Word-Dokumente, Latex und co. erzeugen kann. Das Tool lässt sich elegant über die Kommandozeile steuern und präzise mit den anforderungen einer Konvertierung füttern: https://pandoc.org/index.html

Ich habe nun schon die Suche bemüht. Aber anscheinend gibt es da wohl noch keinen Markdown-Parser oder HTML/XML Mapper auf die Zeichenbefehle. Hat da jemand einen Tipp, ob da schon ein nützliches Modul/Include existiert, welches man nicht erneut schreiben muss oder muss man bei 0 anfangen? Denn die Idee an sich finde ich eigentlich schon sehr gut, zumal Pandoc auch auf allen interessanten Plattformen verfügbar ist ;)

Re: Markdown oder HTML Ökosystem

Verfasst: 09.01.2018 13:52
von NicTheQuick
Wenn ich an Dokumente denke, denke ich an das Open Document Format for Office Applications, das auch von LibreOffice benutzt wird. Das ist ein gutes Format und ich habe selbst schon Konverter geschrieben von einfachem JSON und XML ins ODT-Format. Dabei ist der Vorteil, dass man alle Absatz-, Zeichen-, Listen-, Seiten-, Tabellen-, Rahmen- und Bildformate schön in der GUI von Libreoffice gestalten kann und dann kann man das resultierende ODT in meinem Fall mit Python öffnen, automatisiert den Text einfügen und mit den Stilvorlagen verknüpfen, und dann am Ende Libreoffice aus der Konsole benutzen um ein PDF zu rendern. Das geht wunderbar.

Pandoc kannte ich bisher noch nicht, verspricht aber scheinbar sehr viel. Vielleicht werde ich das auch mal austesten und schauen, was es wirklich alles unterstützt.

Re: Markdown oder HTML Ökosystem

Verfasst: 09.01.2018 19:25
von Sicro
Hallo TroaX,

schreib mal den Tristano vom englischem Forum an. Der macht einiges mit Pandoc.

Auf seinem GitHub-Account ist z. B. das zu finden:
https://github.com/tajmone/pandoc-goodies

Aktuell arbeitet er auch an einem "Markdown zu HTML5"-Konverter:
https://github.com/tajmone/pb-archives- ... ng-changes

Re: Markdown oder HTML Ökosystem

Verfasst: 09.01.2018 23:56
von TroaX
@NicTheQuick: Ich habe mich für Markdown/HTML/Pandoc entschieden, weil sich damit nicht nur offene Standards, sondern auch docx-Dokumente erzeugen und theoretisch auch lesen lassen. Die MS-Office Formate sind leider immernoch in den meisten Büro's standard. Außerdem soll die Funktionalität dank des Pandoc-CLI's bereits über eine einzige Benutzeroberfläche ablaufen. Die geplanten Module sollen die Dokument-Formate auch nicht selbst erstellen. Sie sollen nur sicherstellen, das HTML oder Markdown das Brückenformat zwischen Pandoc, Drucker und andere Formate ist. Zum Beispiel Rechnungserstellung. Die Rechnung wird als Markdown oder HTML gerendert, wird vom Parser in Sequenzen übersetzt, mit der in PB nativ mit den Zeichenbefehlen das Dokument zum drucken erstellt wird. Das gleiche Markdown/HTML kann verwendet werden, um die Rechnung zeitgleich per Pandoc als PDF, ODF oder DOCX zu exportieren. Das ganze ist also nicht auf einen bestimmten Einsatzzweck zugeschnitten.

@Sicro: Naja für Markdown zu HTML könnte ich auch Pandoc direkt nehmen. Ich habe jetzt dieses und das englische Forum zerpflückt, aber nicht wirklich was passendes gefunden. ich werde wohl den HTML-Parser mit der XML-Lib realisieren und einen eigenen Markdown-Parser schreiben. Habe ich schon in PHP gemacht. In PB wird es wohl kaum anders sein ^^

Nebenbei suche ich noch nach einem Include für 1D Barcodes. Das was ich gefunden habe ist entweder tot oder nicht das, was ich suche ^^

Re: Markdown oder HTML Ökosystem

Verfasst: 10.01.2018 14:15
von Micha122
Warum soviel Arbeit?
Was würde gegen unRTF sprechen?

Re: Markdown oder HTML Ökosystem

Verfasst: 11.01.2018 00:12
von TroaX
Die Tatsache, das unRTF aus einem RTF-File eine HTML erzeugt. Das wäre vielleicht eine Lösung, wenn man das komplette Dokument in einem RTF-Gadget erzeugt. Aber das ist nicht das Problem, das ich lösen möchte. Ich suche ein zentrales Format, welches ich aus der Software heraus erzeugen kann. Das Dokument soll aus der Software heraus druckbar sein (also nicht ODF erzeugen und zum Drucken an Open/LibreOffice senden) und es soll sich mit z.B. Pandoc in andere Formate umwandeln lassen. Ich will versuchen, das handling mit Dokumenten zu vereinfachen.

Re: Markdown oder HTML Ökosystem

Verfasst: 11.01.2018 13:41
von Micha122
Hallo TroaX,
verstehe jetzt was du vor hast. :wink:
Wäre natürlich super wenn man in PB mit einem gängigen Dokumentenformat arbeiten könnte und dieses dann auch noch drucken könnte.
Wenn du es hin bekommst, ich könnte es gebrauchen.
Nebenbei suche ich noch nach einem Include für 1D Barcodes. Das was ich gefunden habe ist entweder tot oder nicht das, was ich suche ^
Habe auch mal versucht Barcodes selber zu zeichnen.
Der Aufwand stand allerdings in keinem Verhältnis zum nutzen.
Ich realisierte mein Vorhaben dann mit fertigen Barcode- Zeichensätzen.
Hier in diesem Thread gab es ja mal einen Ansatz:http://www.purebasic.fr/german/viewtopi ... it=barcode

Grüße

Edit by NicTheQuick: Link korrigiert und SessionID gelöscht

Re: Markdown oder HTML Ökosystem

Verfasst: 11.01.2018 13:55
von ts-soft
@Micha122

Bitte immer Links mit: purebasic.fr/german nutzen! SID tut auch nicht not :mrgreen:
Obiger Link mal angepaßt: http://www.purebasic.fr/german/viewtopi ... it=barcode

Hat den Vorteil, man bleibt eingeloggt :D

Edit: Nic war schneller :mrgreen:

Re: Markdown oder HTML Ökosystem

Verfasst: 11.01.2018 23:24
von TroaX
Micha122 hat geschrieben:Habe auch mal versucht Barcodes selber zu zeichnen.
Der Aufwand stand allerdings in keinem Verhältnis zum nutzen.
Ich realisierte mein Vorhaben dann mit fertigen Barcode- Zeichensätzen.
Hier in diesem Thread gab es ja mal einen Ansatz:http://www.purebasic.fr/german/viewtopi ... it=barcode
Da ich eh gerade dabei bin, HTML und das Webgadget für meine kleinen Dokument-Experimente nutzen will, habe ich mich dazu entschlossen, Barcodes mit JQuery Barcode-Plugin zeichnen zu lassen: http://barcode-coder.com/en/barcode-jqu ... n-201.html
Bei meinen Test-Prints waren sie mit drauf. Passt also ^^