Markdown Leitfaden

Was ist Markdown?

Markdown ist eine leichtgewichtige Markup-Sprache, die Sie verwenden können, um Formatierungselemente zu einfachen Textdokumenten hinzuzufügen. Es ermöglicht Ihnen, formatierten Text mit einer einfachen, leicht lesbaren Syntax zu erstellen, die zu HTML und anderen Formaten konvertiert werden kann.

Denken Sie an Markdown als eine Möglichkeit, formatierte Dokumente zu schreiben, ohne komplexe Textverarbeitungsprogramme zu benötigen. Sie fügen einfach spezielle Zeichen zu einfachem Text hinzu, um Formatierungen wie fett, kursiv oder Code anzuzeigen.

Warum Markdown verwenden?

Markdown ist unglaublich einfach und leicht zu erlernen. Sie können die Grundlagen in nur 10 Minuten meistern. Die Formatierungssymbole sind intuitiv - Sternchen für Betonung, Hashes für Überschriften. Sie tippen einfach und fügen einfache Symbole hinzu, um Ihren Text zu formatieren.

Markdown funktioniert auf jeder Plattform und jedem Texteditor. Da Dateien einfacher Text sind, werden sie immer lesbar sein, sogar Jahrzehnte von jetzt. Die Dateien sind leichtgewichtig und laden schnell.

Markdown hat breite Unterstützung auf verschiedenen Plattformen. GitHub, Reddit, Discord und Slack verwenden alle Markdown. Beliebte Apps wie Obsidian, Notion und VS Code unterstützen es nativ. Das macht es perfekt für Dokumentation, Notizen und Webinhalte.

Markdown funktioniert perfekt mit Versionskontrollsystemen wie Git. Sie können sich auf den Inhalt konzentrieren, ohne Formatierungsablenkungen. Teamzusammenarbeit ist einfacher, weil jeder Dateien ohne spezielle Software bearbeiten kann.

Markdown Entwicklungsgeschichte

Der Anfang: Vanilla Markdown (2004)

Markdown wurde ursprünglich von John Gruber im Jahr 2004 erstellt, mit bedeutenden Beiträgen von Aaron Swartz. Gruber entwarf es als einfache Möglichkeit zum Schreiben mit einem leicht lesbaren und leicht schreibbaren einfachen Textformat, das zu strukturell gültigem HTML konvertiert werden konnte. Dies ist der "Kern", den John Gruber ursprünglich entwarf und implementierte, der die grundlegendste Formatierungssyntax enthält - was wir den "grundlegenden Vanilla-Geschmack" nennen.

Grundlegende Syntax (Vanilla Markdown beinhaltet):

  • Überschriften: Verwenden Sie das # Symbol (# Überschrift)
  • Betonung:
  • Kursiv: Verwenden Sie * oder _ um Text zu umschließen (*kursiv* oder _kursiv_)
  • Fett: Verwenden Sie ** oder __ um Text zu umschließen (**fett** oder __fett__)
  • Listen:
  • Ungeordnete Listen: Verwenden Sie *, -, oder + (- Element)
  • Geordnete Listen: Verwenden Sie Zahlen mit Punkten (1. Element)
  • Links: Verwenden Sie [Link-Text](Link-Adresse)
  • Bilder: Verwenden Sie ![Bildbeschreibung](Bildadresse)
  • Code-Blöcke: Einrücken mit Leerzeichen (normalerweise 4 Leerzeichen oder 1 Tab)
  • Blockzitate: Verwenden Sie das > Symbol (> Das ist ein Zitat)
  • Horizontale Linien: Verwenden Sie --- oder ***

Das Problem: Inkonsistente Implementierungen

Allerdings fehlte Vanilla Markdown eine strenge, formale Spezifikation. Dies führte zu inkonsistentem Verhalten zwischen verschiedenen Markdown-Parsern bei der Behandlung von Grenzfällen.

Leerzeichenbehandlung: Zum Beispiel, in Listenelementen, wie viele Leerzeichen Einrückung zählen als Unterliste? Sind es 2 Leerzeichen, 3 Leerzeichen oder 4 Leerzeichen? Verschiedene Parser könnten unterschiedliche Urteile haben.

Zeilenbrechungsverarbeitung: In bestimmten Situationen, sollte ein regulärer Zeilenumbruch (\n) als <br> (Zeilenumbruch) Tag geparst werden, oder sollte er einfach als Leerzeichen im Text behandelt werden? Dies kann auch je nach Parser variieren.

Gemischte HTML-Verwendung: Markdown erlaubt eingebettetes HTML. Jedoch in einigen komplexen HTML-Strukturen, wie Markdown-Parser die Markdown-Syntax innerhalb von ihnen handhaben, präsentiert auch mehrdeutige Bereiche.

Die Lösung: CommonMark (2014)

Im September 2014 wurde CommonMark eingeführt, um diese Inkonsistenzprobleme zu lösen. Unter der Leitung von John MacFarlane bietet es eine rigorose Spezifikation für Markdown.

CommonMark bietet eine präzise Spezifikation, wo jeder Grenzfall klar definiert ist. Es beinhaltet eine umfassende Test-Suite mit über 600 Testfällen, um Konsistenz zwischen Implementierungen sicherzustellen. Die Spezifikation bietet eine Referenzimplementierung, die als Standard für andere Parser dient. Sie behält Rückwärtskompatibilität mit den meisten bestehenden Markdown-Dokumenten bei, während sie eindeutiges Parsing gewährleistet, wo die gleiche Eingabe immer die gleiche Ausgabe in allen kompatiblen Parsern produziert.

Erweiterte Geschmacksrichtungen und Zusätzliche Funktionen

Da Benutzer unterschiedliche Bedürfnisse hatten, entstanden verschiedene erweiterte Geschmacksrichtungen von Markdown, um spezifische Anforderungen zu erfüllen.

GitHub Flavored Markdown (GFM) Zusätzliche Syntax:

  • Tabellen: Verwenden Sie Pipe-Syntax, um Tabellen zu erstellen
  | Überschrift 1 | Überschrift 2 | Überschrift 3 |
|---------------|---------------|---------------|
| Zelle 1 | Zelle 2 | Zelle 3 |
| Zelle 4 | Zelle 5 | Zelle 6 |
  • Durchgestrichen: Verwenden Sie ~~ um Text zu umschließen (~~gelöschter Text~~)
  • Aufgabenlisten: Erstellen Sie interaktive Checkboxen
  - [x] Abgeschlossene Aufgabe
- [ ] Unvollständige Aufgabe
  • Umzäunte Code-Blöcke: Verwenden Sie dreifache Backticks mit Sprachspezifikation
  ```javascript
function hello() {
console.log("Hello World!");
}
```
  • Automatische Verlinkung: URLs und E-Mail-Adressen werden automatisch anklickbar
Andere Beliebte Erweiterungen:

  • Fußnoten: Verwenden Sie [^1] Syntax für akademisches Schreiben
  Das ist ein Satz mit einer Fußnote[^1].
[^1]: Das ist der Inhalt der Fußnote.

Ergebnis: Das ist ein Satz mit einer Fußnote¹.

  • Mathematische Ausdrücke: Verwenden Sie $E=mc^2$ für wissenschaftliche Dokumente
  • Emoji-Shortcuts: Verwenden Sie :smile: wird zu 😊
  • Definitionslisten: Für Glossare und technische Dokumentation
  Begriff 1
: Definition für Begriff 1

Begriff 2
: Definition für Begriff 2
: Eine weitere Definition für Begriff 2

Ergebnis: Erstellt formatierte Listen mit hervorgehobenen Begriffen und eingerückten Definitionen

Wie funktioniert es?

Markdown folgt einem einfachen dreistufigen Arbeitsablauf:

Schritt 1: Eine Markdown-Datei erstellen

Zuerst erstellen Sie eine einfache Textdatei mit einer .md oder .markdown Erweiterung mit einem beliebigen Texteditor. Sie schreiben Ihren Inhalt mit einfachen Formatierungssymbolen:

Schritt 2: Mit Markdown-Tools verarbeiten

Ihre .md Datei wird dann von Markdown-Konvertierungstools oder -prozessoren verarbeitet. Diese Tools lesen Ihre Markdown-Datei und konvertieren sie in das gewünschte Ausgabeformat.

Schritt 3: Ausgabe in verschiedene Formate

Der Markdown-Prozessor kann Ihre Datei in mehrere Formate konvertieren:

Für Web-Anzeige:

  • Konvertiert zu HTML für Websites, Blogs und Webanwendungen
  • Zeigt formatierten Inhalt in Browsern mit angemessener Stilisierung an
Für Dokumente:

  • Konvertiert zu PDF für druckbare Dokumente und Berichte
  • Generiert Word-Dokumente (.docx) für Bürogebrauch
  • Erstellt LaTeX für wissenschaftliche Arbeiten und Publikationen
Für Veröffentlichung:

  • Generiert eBooks (EPUB-Format)
  • Erstellt Präsentationsfolien
  • Produziert Dokumentations-Websites
Dieser Arbeitsablauf bedeutet, dass Sie einmal in Markdown schreiben und dann verschiedene Tools verwenden, um Ihren Inhalt in jedes Format zu konvertieren, das Sie benötigen - ob es auf einer Website angezeigt, als PDF gedruckt oder als Dokument geteilt wird.

Zusätzliche Ressourcen

Wesentliche Dokumentation

  • John Grubers Markdown-Dokumentation : Der ursprüngliche Leitfaden, geschrieben vom Schöpfer von Markdown. Wesentliche Lektüre zum Verständnis der Philosophie und grundlegenden Syntax.
  • Wikipedia - Markdown : Umfassender Überblick über Markdowns Geschichte, Variationen und technische Details.
  • Markdown Leitfaden : Ein umfassender, anfängerfreundlicher Leitfaden mit Beispielen und bewährten Praktiken für alle Skill-Level.