Warum Markdown?

Dies ist Teil 2 der Serie über digitale Teilhabe, Blogging und «own your words»

Das ist der Post, den ich schon lange schreiben wollte, damit ich bei Fragen endlich einfach auf eine URL verweisen kann. Wenn Sie jemals einen Blogpost oder ein Dokument für die Online-Nutzung geschrieben haben und Markdown noch nicht kennen, sollten Sie weiterlesen

John Gruber’s Idee

2004 hatte der Autor, UI-Designer und Blogger John Gruber genug davon, die Artikel für sein Blog (damals noch «weblog») «Daring Fireball» immer wieder mühevoll von Hand als HTML zu schreiben. «Das Schlimmste», schreibt er, «war die Tatsache, dass mir dieses HTML-Coden völlig normal vorkam». Wer eine Ideen, die zur Erfindung von Markdown führen, nachlesen will (in Englisch), kann das hier tun.

Er wollte Artikel für sein Blog so schreiben, wie normale Menschen Mails schreiben. Was damit gemeint ist? Sehen Sie sich beispielsweise folgenden Text an, von dem ich denke, dass Sie die Formatierung sofort sinnvoll finden:

# Der Plan fürs Sonnwend-Feuer

## Termin und Ort

Samstag, 16. Juni 2018 am See beim Huber-Bauern **Parken im Hof!**

## Wer bringt was?

* Karl -- Feuerholz
* Gabi -- Grillsachen
* Julia -- Getränke, hier bestellen: [Getränkemarkt](http://getraenkemarkt.com/unserbier.html)

So würde man das in einer Mail schreiben und warum sollten sich so nicht auf Webseiten für ein Blog erstellen lassen? Ja genau, der Text oben ist bereits Markdown – komplizierter wird’s also eigentlich nicht. HTML erstellen ist für Gruber «monkey work», stupide Arbeit, bei der aber jeder Vertipper das Ergebnis ruiniert. Sein Ziel:

Das alles beherrschende Design-Ziel für die Syntax der Formatierung von Markdown ist es, den Text so lesbar wie nur möglich zu machen. Die Idee ist, dass sich ein Markdown-formatiertes Dokument so wie es ist veröffentlichbar ist, als reiner Text, ohne dass es ausieht, als wäre es extra mit Elementen oder Formatierungs-Anweisungen bestückt. – John Gruber

14 Jahre später kann ich rückblickend nur feststellen, dass die Idee gezündet hat. Markdown ist eine der am häugigsten verwendeten Methoden zur Textformatierung geworden.

Was ist denn das? Ich dachte, das Web ist HTML?

Ja, das Web ist HTML. Niemand schreibt aber gerne HTML1. Natürlich haben wir früher Seiten für das Web mit einem Texteditor in HTML erstellt (manche tun das heute noch), aber es ist zeitraubend und anstrenged. Vor allem sind HTML-Dokumente für Menschen nur noch schwer zu lesen. Im Laufe der Zeit wurden grafische Editoren entwickelt, bei denen man das Ergebnis des HTMLs direkt dargestellt sieht. Im Hintergrund rechnet die Software die Formatierungen und Eingaben der Nutzer dann in HTML um. Entgegen der landläufigen Meinung funktioniert das nur dann relativ gut, wenn die Möglichkeiten sehr stark beschränkt werden (weshalb der Editor Ihrer Blog-Software auch wesentlich weniger Funktionen hat als Ihr Textprogramm) oder aber es entsteht «unter der Motorhaube» furchtbar aussehender und nicht wartbarer HTML-Code. Nicht nur deshalb sind alle modernen Blogsysteme in der Lage, Markdown zu verarbeiten.

So schwer ist HTML doch auch nicht …

Wenn Sie HTML schreiben können, werden Sie sich möglicherweise genau das denken, was als Überschrift über diesem Absatz steht. Wenn Sie kein HTML können, möchten Sie vielleicht wissen, ob das wirklich so übel aussieht. Nehmen wir also den Text oben und machen HTML draus, eine Seite, wie sie für ein Blog erstellt werden würde:

<html>
    <h1>Der Plan fürs Sonnwend-Feuer</h1>
    <h2>Termin und Ort</h2>
    <p>Samstag, 16. Juni 2018 am See beim Huber-Bauern <em>Parken im Hof!</em></p>
    <h2>Wer bringt was?</h2>
    <ul>    
    <li>Karl -- Feuerholz</li>
    <li>Gabi -- Grillsachen</li>
    <li>Julia -- Getränke, hier bestellen: 
    <a href="http://getraenkemarkt.com/unserbier.html">Getränkemarkt</a></li>
    </ul>
</html>

Sie sehen, so richtig schön ist das nicht mehr. Vor allem aber hat das Eintippen dieses Codes oben locker dreimal so lange gebraucht wie die mehr oder wenige intuitive Formatierung (die jeder von uns, der noch reine Text-Mails kennt, sowie noch kennt). Wen Sie eine der spitzen Klammern vergessen oder die Schachtelung der <>-Elemente durcheinander bringen, kommt auch nur Textmatsch im Browser an. Noch ein Grund mehr, sich eine Arbeitserleichterung zu suchen. Aus diesem Grund hat John Gruber sein Script geschrieben, das Markdown einliest und automatisiert in HTML umsetzt – voilà!

Wie sieht das denn jetzt aus?

Gucken wir uns doch einfach eine Beispielseite in Markdown an. Sie werden erstaunt sein, wie intuitiv das aussieht.

# Markdown-Grundlagen

Wie man oben sieht, wird so eine Überschrift der Ebene 1 erstellt.

## Ebene 2

Das erstellt eine Überschrift der zweiten Ebene. 
Noch ein "#" mehr (`###`) erstellt eine Überschrift für
die dritte Ebene und so weiter 
(wenn Sie mehr als fünf Ebenen haben, 
sollten Sihre Ihre Textgestaltung überdenken)

### Formatierungen

Um einen neuen Absatz zu beginnen

lassen Sie mindestens eine Zeile Zwischenraum. 
So einfach ist das.

Formatierungen sind **kein** Problem. 
Auch _Hervorhebungen_ oder `Code` sind kinderleicht.
Das hier ~~ist der totale Quatsch~~natürlich hoch sinnvoll. 
So Fussnoten[^1] sind kein Problem.
Und natürlich können Sie Referenzen[^2] 
auch direkt nach der Erstellung schreiben.

[^2]: Text für die zweite Fussnote. 
Das war auch schon die [Fussnote](https://de.wikipedia.org/wiki/Fu%C3%9Fnote)

Ein [externer Hyperlink](https://www.heise.de) 
ist auch einfach zu schreiben.
Sie können auch den [Link beschriften](https://www.heise.de "Die Seite des Heise Verlags")

Bilder sind auch nur Links, mit einem Ausrufezeichen 
davor, so wie der nächste Link:

![Ein externe Bildlink](https://cdn.pixabay.com/photo/2018/04/22/12/48/owl-3340957_1280.jpg)

### Zitate

> Seitdem ich die Menschen kenne, liebe ich die Tiere.<br>
> (_Arthur Schopenhauer_)

#### Typographie

Im Normalfall wird aus zwei Minuszeichen -- ein 
"Halbgeviertstrich" (_en dash_), aus --- ein 
"Geviertstrich" (_em dash_).
Anführungszeichen werden üblicherweise in 
"schöne", typographische Anführungszeichen umgewandelt.


[^1]: Hier ist der **Text** der Fussnote, der _auch_ formatiert sein kann.

Im nächsten Abschnitt finden Sie das Ergebnis, dass mein Blogsystem Hugo aus dem Markdown erstellt. Das ist nur ein kleiner Ausschnitt aus dem, was Sie mit Markdown machen können. So gibt es Listen, Aufzählungen, Tabellen und alles, was Sie für das Bloggen benötigen. Es gibt im Web haufenweise Anleitungen wie diese zum Thema Markdown2.

 


Das Ergebnis

Markdown-Grundlagen

Wie man oben sieht, wird so eine Überschrift der Ebene 1 erstellt.

Ebene 2

Das erstellt eine Überschrift der zweiten Ebene. Noch ein «#» mehr (###) erstellt eine Überschrift für die dritte Ebene und so weiter (wenn Sie mehr als fünf Ebenen haben, sollten Sihre Ihre Textgestaltung überdenken)

Formatierungen

Um einen neuen Absatz zu beginnen

lassen Sie mindestens eine Zeile Zwischenraum. So einfach ist das.

Formatierungen sind kein Problem. Auch Hervorhebungen oder Code sind kinderleicht. Das hier ist der totale Quatschnatürlich hoch sinnvoll. So sind Fussnoten1 kein Problem. Und natürlich können Sie Referenzen3 auch direkt nach der Erstellung schreiben.

Ein externer Hyperlink ist auch einfach zu schreiben. Sie können auch den Link beschriften

Bilder sind auch nur Links, mit einem Ausrufezeichen davor, so wie der nächste Link:

Ein externe Bildlink

Zitate

Seitdem ich die Menschen kenne, liebe ich die Tiere.
(Arthur Schopenhauer)

Typographie

Im Normalfall wird aus zwei Minuszeichen – ein «Halbgeviertstrich» (en dash), aus — ein «Geviertstrich» (em dash). Anführungszeichen werden üblicherweise in «schöne», typographische Anführungszeichen umgewandelt.


Ende Ergebnis

 

Die großen Vorteile

Zu allererst: Markdown ist einfach Text. Text, den Menschen lesen können, ohne mit spitzen oder geschweiften Klammern und merkwürdigen Anweisungen überschüttet zu werden. Text, der über alle Applikationen, Betriebssysteme und fast alle modernen Blogsysteme ausgetauscht werden kann. Text, der Ihre Artikel zukunfts- und migrationssicher macht, weil Sie nicht in einem obskuren oder nicht lesbaren Format gefangen sind (schon mal versucht, TEX in etwas anderes zu konvertieren?)

  • Markdown ist extrem einfach zu lernen (meistens reicht eine Stunde oder weniger)
  • Texterstellung mit Markdown ist wesentlich schneller als HTML, TeX oder etwas anderes
  • Die Fehlerquelle ist durch die simple Syntax sehr gering
  • Markdown wird in gültiges, sauberes HTML (und andere Formate) konvertiert
  • Texterstellung und Textformatierung sind sauber getrennt (Markdown / CSS)
  • Sie können jeden Editor und jedes Tools benutzen, dass Textdateien verarbeiten kann
  • Es gibt vom Editor für den Puristen bis zum automatischen Vorschau-Editor alle Stufen
  • Alle alle modernen Systeme für das Online-Publizieren verarbeiten verarbeiten Markdown
  • Schreiben mit Markdown macht Spaß, denn Sie können sich auf den Inhalt konzentrieren und einfach schreiben!

Nicht nur HTML — Markdown für Autoren

Markdown ist auch ein schönes Format für Autoren, da ich mich als Autor auf den Schreibprozess konzentrieren kann. Es gibt (s.u.) gute Tools, um aus Markdown sauberes HTML zu erstellen, dass sich in eBooks konvertieren lässt. Eines davon habe ich hier vorgestellt.

Einige, die Sie sich als Autor oder Textproduzent eventuell ansehen möchten, sind:

Blogging

Nahezu jedes moderne Blogsystem kann Markdown verwenden. Ich würde in der heutigen Zeit auch kein Blog mehr nutzen, dass nicht nativ mit Markdown umgehen kann, schon um die Weiterverwendung von Texte oder den Umzug auf ein anderes System zu erleichtern.

Editoren

Mein „Haus-und-Hof-Editor“ seit ca. 2011 ist Sublime Text

  • Gibt es für Windows, Mac und Linux mit identischem Funktionsumfang
  • 300 MByte-Textdateien und schnell mal 45000 Ersetzungen machen kein Problem
  • Komplett anpassbar (mit sehr aktiver Community)
  • Gute Makros/Plugins und Markdown-Vorschau
  • Mehr Textwerkzeug als Editor, aber eine gewisse Lernkurve

Als Markfown-Editor nutze ich auf dem Mac gerne MacDown

  • Open Source
  • Flexible Einstellungen für Markdown
  • „Leichtgewichtig“, aber nicht funktionsarm
  • Gute Konfigurationsmöglochkeiten

Noch ein Editor für den Mac sowie iOS ist ByWord

  • „Ablenkungsfreie“ Schreib-App
  • Gibt es auch für iOS
  • Kann direkt publishen (z.B. in Evernote, WordPress)
  • Auch bei großen Dateien noch schnell

Seit kurzem ab und an genutzt wird Typora

  • Gibt es für Windows und Mac
  • Schöner „WYSIWYG“-Modus für Einsteiger
  • (Noch) kostenlos, da Beta (aber schon stabil)
  • Haufenweise Markdown-Extensions (z.B. für Mathe) schon drin

Als Online-Editor habe ich wahrscheinlich mehr als ein halbes Dutzend ausprobiert, kommt aber immer wieder zu StackEdit zurück

  • Unter allen, die ich kenne, der beste Online-Editor
  • Kostenlos nutzbar
  • Für Einsteiger WYSIWYG-Modus
  • Preview scrollt sauber mit (andere Online-Editoren haben da Probleme)
  • Web-orientiert (Anbindung für WordPress, Github, Google Drive…)
  • Kommentare und kollaboratives Arbeiten! Und es funktioniert!

Sprachen haben Dialekte

Markdown ist ein Kind der Praxis. Das bedeutet nach dem Pareto-Prinzip, dass sich mit 20% des Aufwands 80% der Anforderungen erschlagen lassen. John Gruber hat sich damals bestimmt nicht vorgestellt, welche Kreise sein kleines Perl-Script einmal ziehen würde, dass die Funktionalität in Dutzenden Programmiersprachen implementiert und natürlich bestimmte Aspekte auch unterschiedlich aufgefasst werden würden. Vor allem, weil es keine formale Definition von Markdown gab. Daher entstanden wie bei natürlichen Sprachen auch bald «Dialekte», die Markdown um bestimmte Funktionen erweiterten. Dazu gehören Tabellen, erweiterte Fußnoten und andere Dinge.

Umlernen müssen Sie dazu nicht, es sind jeweils nur Erweiterungen, die sich aber erschließen lassen, wie z.B. Tabellen:

| Tables        | Are           | Cool  |
| ------------- |-------------| -----|
| col 3 is      | right-aligned | $1600 |
| col 2 is      | centered      |   $12 |
| zebra stripes | are neat      |    $1 |

Spalten müssen mindesten drei Minuszeichen breit sein. Die äußeren Linien können fast überall weggelassen werden und die Linie rechts muss auch nciht sauber ausgerichtet sein. Wie Sie sehen, also sehr schnell zu erfassen.

Die wichtigsten Dialekte sind aktuell:

John Macfarlane stellt mit Babelmark2 ein Tool zur Verfügung, mit dem ein Quelltext in Markdown in mehr als zwei Dutzend Implementierungen getestet und die Ausgabe verglichen werden kann.

Fazit

Markdown ist nicht die Lösung aller Probleme, aber für viele Probleme die Lösung. Ob Sie nun ein Blog betreiben und einfach, schnell und intuitiv Artikel schreiben wollen, ein über alle Systeme transportierbares Dokumentenformat suchen oder sogar Bücher mit Markdown schreiben wollen – das alles funktioniert. In den letzten Jahren hat sich Markdown zu einer Art «lingua franca» für Online-Publikationen entwickelt. Sie kommen damit für viele Einsatzzwecke einem «single source publishing» schon sehr nahe. Aus dem Blog-Post für Hugo, Bludit oder Ghost.org schnell ein PDF machen mit Pandoc oder ein eBook mit Calibre – kein Problem!

Der Vollständigkeit halber sei erwähnt, dass es auch andere solche leichtgewichtigen Auszeichnungssprachen gibt, die jeweils einen bestimmten Schwerpunkt haben. Wenn Sie sich für dieses Thema interessieren, sehen Sie sich einfach auch mal AsciiDoc oder ReStructuredText an. Gerade wenn Sie komplexere Ansprüche an Texte haben oder eher wissenschaftliche Texte schreiben, ist AsciiDoc mehr als einen Blick wert. Das grundlegende Konzept (menschenlesbare Auszeichnungen) ist jedenfalls das Gleiche, auch wenn Markdown immer noch leichter erfassbar und in einer Stunde zu lernen ist. Und Sie haben dann ein Format, für das Sie nicht brauchen ausser einem Texteditor und Sie haben nie wieder Migrationsprobleme. 😏

(Weiter geht es in Kürze mit dem Teil 3 «Hugo — Bloggen ohne PHP, CMS oder Datenbank»)


  1. HTML ist die Abkürzung für Hyper Text Markup Language und bezeichnet die Syntax, mit der Dokumente für das Word Wide Web erstellt werden. «Erfunden» hat HTML Tim Berners-Lee Ende der 80er, indem er eine andere Auszeichnungssprache (engl. «markup language») als Vorbild nahm und radikal vereinfachte. Mehr dazu hier.
  2. Markdown heisst übrigens Markdown, weil das englische Wort für eine Auszeichnungssprache wie HTML «markup language» lautet. Und Gruber wollte etwas einfacheres, mehr «down to earth» – ergo MarkDown.
  3. Text für die zweite Fussnote. Das war auch schon die Fussnote
Share Kommentieren
X

Ich habe einen Kommentar zum Artikel

Sie können die Kommentarfunktion ohne die Speicherung personenbezogener Daten nutzen. Schreiben Sie Ihren Kommentar und klicken Sie auf "Abschicken", der Versand erfolgt per Mail von meinem Auftritt aus an mich zur Prüfung. Dieser Versand und die Übertragung Ihres Kommentars ist zur Erfüllung der von Ihnen mit dem Klick auf "Abschicken" ersichtlichen Absicht technisch notwendig und bedarf keiner weiteren Einwilligung.

Wichtiger Hinweis: Sie haben keinen Anspruch auf die Veröffentlichung Ihres Kommentars. Jeder hier eingegebene Kommentar wird zuerst geprüft. Ich behalte mir die Entscheidung vor, welche Kommentare ich als Ergänzung an den Artikel anfüge.