Markdown in verschiedenen Geschmacksrichtungen—ein Überblick

Markdown-Mark von Dustin Curtis Wer sauberes HTML verfassen und zugleich lesbare Manuskripte erstellen will, schreibt mit Markdown. In wenigen Jahren hat sich die einfache Markdown-Syntax bei professionellen Web-Autoren durchgesetzt. Allerdings gibt es sie in verschiedenen Versionen. Hier ein Überblick:

Ich schreibe seit Jahren fast nur noch mit Markdown und ich empfehle es meinen Studenten. Für zwei Handbuchartikel habe ich jetzt zum ersten Mal Scrivener und MultiMarkdown von Fletcher Penney benutzt, und ich werde für alle längeren Texte dabei bleiben. HTML als Ausgabe-Format und Markdown zum Schreiben sind für mich für fast alle Zwecke ausreichend. Ich finde wenig Software so überflüssig wie Microsoft Word und andere „Textverarbeitungs“-Programme.

Ich habe mich mit der Entwicklung von Markdown selbst nie beschäftigt. Ich habe gar nicht gewusst, dass es eine solche Entwicklung gibt. Erst durch Posts von Dave Winer bei Scripting News (wie Email to Gruber) bin ich darauf gekommen, dass es—gelegentlich erbitterte—Konflikte zwischen Anhängern unterschiedlicher Versionen oder flavors von Markdown gibt. Zum Glück spielen sie keine Rolle für jemand, der einfach alltäglich Markdown zum Bloggen benutzt. Aber das Publizieren mit Markdown in komplizierteren Workflows können sie behindern. Und sie sind der ideale Vorwand, um von Markdown abzuraten oder—wie es Dave Winer befürchtet—einer der großen Softwarefirmen mit ihren Allmachtsansprüchen eine Legitimation zu geben, Markdown selbst weiterzuentwickeln.

Ich habe ein Paar Informationen zu unterschiedlichen Markdown-flavors zusammengestellt. Ich werde sie wohl gelegentlich aktualisieren (und bitte um Korrekturen):

Markdown Extra

Markdown Extra ist eine vorsichtige Erweiterung von Markdown mit Möglichkeiten, z.B. Tabellen und Definitionslisten in Markdown zu schreiben und Fußnoten anzulegen. WordPress.com hat Markdown Extra implementiert, auch in dem Markdown, das das Jetpack-Plugin von WordPress für selbstgehostete WordPress-Blogs zur Verfügung stellt (dazu mehr hier). Markdown Extra wurde von Michel Fortin entwickelt. Ich habe von John Gruber, dem Entwickler von Markdown selbst,keine negativen Statements, wohl aber ein positives zu den Fußnoten in Markdown Extra gefunden. (Zu den WordPress-Markdown-Plugins—es gibt nicht nur das von wordpress.com—siehe How to Use Markdown in WordPress.)

MultiMarkdown

MultiMarkdown von Fletcher Penney verwendet die Tabellen und die Fußnoten von Markdown Extra. Hinzu kommen viele weitere Features, z.B. für Zitate. Während Markdown Extra von Fortin in PHP implementiert wurde, hat Fletcher Penney MultiMarkdown mit C umgesetzt. Wenn ich es richtig sehe, liegt der Fokus bei MultiMarkdown nicht auf HTML und kurzen Texten für das Web, sondern auf einem Format für alle möglichen Ausgabeformen, vor allem Bücher. Mich interessiert es, weil es äußerst angenehm ist, mit Scrivener längere Texte in MultiMarkDown zu schreiben, vor allem ihre Gliederung zu organisieren, und weil man es leicht mit bibliographischen Angaben kombinieren kann, die in BibTeX vorliergen. MultiMarkdown wird auch vom iA Writer unterstützt, mit dem ich am liebsten schreibe.

Ich habe mich nicht in MultiMarkdown vertieft und lediglich versucht, es für Fußnoten und bibliographische Angaben zu benutzen. MultiMarkdown ist komplexer als Markdown. Man kann es nicht, wie Markdown, in 10 Minuten lernen. (Allerdings braucht man wohl auch nicht sehr viel länger.) Es ist auch nicht so einfach zu lesen wie Markdown. Damit bricht es mit dem Prinzip, dass ein mit Markdown geschriebener Text so angenehm und leicht zu lesen sein sollte wie ein Email. Das ist vermutlich der Hauptgrund dafür, dass es dem Markdown-Erfinder John Gruber nicht sympathisch ist.

GitHub Flavored Markdown

Die—von Entwicklern—wohl am meiste verwendete Markdown-Version ist GitHub Flavored Markdown. Die Ergänzungen dienen—abgesehen von Tabellen—vor allem den Bedürfnissen von Leuten, die Code dokumentieren und entwickeln. Hier die Dokumentation.

CommonMark

CommonMark ist keine Erweiterung des ursprünglichen Markdown, sondern der Versuch, seine Syntax eindeutig zu formulieren. Es geht vor allem auf Jeff Atwood, den Gründer von Stack Overflow zurück. Atwood und John Gruber haben sich über Jahre öffentlich befetzt. Atwood hat Gruber vorgeworfen, die Markdown-Community und die Weiterentwicklung von Markdown zu vernachlässigen. Gruber hat seinerseits erreicht, das Atwood seinen Standardisierungsvorschlag nicht mehr Markdown nennt (Standard Markdown is now Common Markdown).Nico Brünjes hat auf Deutsch
über den Konflikt zwischen Atwood und Gruber geschrieben.

CommonMark ist wohl vor allem für Leute relevant, die sich mit der technischen Verarbeitung von Markdown-Dokumenten beschäftigen. Grubers Beschreibung von Markdown, so die Argumentation von Atwood und Kollegen, legt die Markdown-Syntax nicht genau genug fest, so dass es zu inkompatiblen Implementierungen kommt. (Siehe zu den vielen verschiedenen Implementierungen Babelmark 2 – Compare markdown implementations).

Markdown als Leseformat

Man kann sich nicht einfach für eine Version von Markdown entscheiden, sondern muss sich danach richten, welche Tools man verwendet. Da ich viel mit dem IA Writer und jetzt mit Scrivener schreibe, werde ich meist MultimMrkdown benutzen, wobei ich für ein Post wie dieses keine der Erweiterungen von MultiMarkdown brauche.

Markdown ist nicht nur ein Format zum Schreiben sondern auch zum Lesen. Möglicherweise übersehen das die Kritiker Grubers, die vor allem auf die saubere Verarbeitbarkeit achten.

Readability, however, is emphasized above all else. A Markdown-formatted document should be publishable as-is, as plain text, without looking like it’s been marked up with tags or formatting instructions. While Markdown’s syntax has been influenced by several existing text-to-HTML filters – including Setext, atx, Textile, reStructuredText, Grutatext, and EtText – the single biggest source of inspiration for Markdown’s syntax is the format of plain text email [Daring Fireball: Markdown Syntax Documentation].

Ich werde selbst darauf achten, dass meine Texte in Markdown auch für sich lesbar sind, nicht nur in der HTML-Version. Um mich über die syntaktischen Feinheiten und die weitere Entwicklung besser zu informieren, habe ich mich auf der Markdown-Mailing Liste eingetragen.

Konflikte wie die um Markdown sind ärgerlich. Aber sie signalisieren, dass Markdown tatsächlich zu einem Standard für professionelles Web-Authoring geworden ist.