Technik

Markdown Grundlagen

Markdown ist eine einfache Markup- bzw. Auszeichnungssprache für reine Textdateien. Die Formatierungs- bzw. Auszeichnungselemente von Markdown ergeben bereits vor der Konvertierung einen gut lesbaren Text und stören daher den Textfluss kaum. Markdown wurde primär als Format zum Schreiben für das Internet entwickelt. In diesem Beitrag geht’s um ein paar einfache Grundlagen zu Markdown und die Einsatzmöglichkeiten in Obsidian.

Die erste Version von Markdown wurde im Dezember 2004 von John Gruber und dem 2013 verstorbenen Aaron Swartz erstmals veröffentlicht. Die sich daraus ergebende Markdown-Syntax folgt dem Credo der guten Lesbarkeit. Die Philosophie dahinter ist, Text so einfach lesbar und schreibbar wie möglich verfassen zu können. Und zwar ohne aufwändige Formatierungsbefehle und Tags, wie das beispielsweise bei HTML erforderlich ist. Markdown besteht daher nur aus Zeichen, die so ausgewählt wurden, dass vom Aussehen der Zeichen auch die jeweilige Bedeutung abgeleitet werden kann.

Hello world

Die Formatierungszeichen, die man in Markdown benutzt, sind ASCII-Zeichen, wie beispielsweise # oder *. Damit lassen sich während der Texteingabe Wörter oder Textabschnitte formatieren. Die Syntax ist einfach gehalten, wie die nachstehenden Beispiele zeigen:

Kursiven Text erzeugt man mit jeweils einem Sternchen am Beginn und am Ende der jeweiligen Textstelle. Die Eingabe *hello world* führt dann direkt zu hello world.

Soll ein Wort oder ein Textabschnitt im Fettdruck formatiert werden, gibt man am Beginn und am Ende jeweils zwei Sternchen ein, sodass **hello world** dann hello world ergibt.

In Obsidian kann man Text zudem noch wie mit einem Leuchtstift markiert hervorheben. Dazu wird die gewünschte Textstelle am Beginn und am Ende jeweils von zwei Gleichheitszeichen eingefasst. Aus ==hello world== wird dann ein gelb markiertes hello world, wie im Titelbild zu diesem Beitrag erkennbar. Diese Markierung wird nicht von allen Markdown-Editoren als solche interpretiert. Beispielsweise ignoriert der bekannte Editor Ulysses diese Formatierung, während der ebenfalls weit verbreitete Editor iA Writer die Textmarkierung problemlos darstellt.

Überschriften

Längere Texte können auch in Markdown mit Überschriften strukturiert werden. Überschriften werden mit einem oder mehreren Raute-Symbolen formatiert. Es gibt sechs Überschriftebenen. Für jede Ebene wird ein Raute-Symbol eingegeben, sodass # Überschrift 1 die erste Überschriftebene darstellt, ## Überschrift 2 die zweite und so weiter bis eben zur sechsten Ebene mit ###### Überschrift 6.

Listen

Markdown ermöglicht das Formatieren von Listen. Es sind zum einen einfache Aufzählungslisten und zum anderen auch nummerierte Listen möglich.

Einfache Aufzählungslisten werden mit einem Bindestrich gefolgt von einem Lerrzeichen und danach dem Text in der Form - Listenelement angelegt. Das Ergebnis ist eine Bulletpoint-Liste, die zum Beispiel wie folgt aussehen kann (zuerst der Markdown-Code im Editiermodus und danach das Ergebnis im Lesemodus):

- Listenelement 1
- Listenelement 2
- Listenelement 3
  • Listenelement 1
  • Listenelement 2
  • Listenelement 3

Nummerierte Listen folgen derselben Syntax, nur dass anstelle eines Bindestrichs eine Zahl gefolgt von einem Punkt und einem Leerzeichen eingegeben werden muss. Das sieht dann so aus:

1. Listenelement 1
2. Listenelement 2
3. Listenelement 3

Und das führt dann zu diesem Ergebnis im Lesemodus:

  1. Listenelement 1
  2. Listenelement 2
  3. Listenelement 3

Ohne dass man den Schreibfluss unterbrechen muss, führt ein zweimaliges Betätigen der Enter-Taste zum Verlassen des Listenmodus.

Obsidian unterstützt zudem auch Aufgabenlisten. Über das Aufgabenmanagement mit Obsidian habe ich hier im Blog schon geschrieben. Aufgabenlisten können in Obsidian mit der Syntax - [ ] Aufgabe für eine offene Aufgabe und - [x] Aufgabe für eine erledigte Aufgabe erzeugt werden. Eine Aufgabenliste könnte in Markdown also zum Beispiel so aussehen:

- [ ] Aufgabe 1
- [x] Aufgabe 2
- [ ] Aufgabe 3

Links

Generell werden Links in Markdown mit der Eingabe von einem eckigen Klammerpaar für den Titel, gefolgt von einem runden Klammerpaar für die Linkadresse erzeugt. In Markdown sieht das so aus: [Titel](https://...). Die Linkadresse kann sowohl zu einer Datei auf der Festplatte des eigenen Rechners führen, als auch zu einer Seite im Internet.
Links sind ein zentrales Element in Obsidian. Dabei wird zwischen internen und externen Links unterschieden.

Externe Links führen also beispielsweise zu einer Quelle ins Internet, oder zu einer Datei auf der eigenen Festplatte. Der externe Link [Basic formatting syntax in Obsidian](https://help.obsidian.md/Editing+and+formatting/Basic+formatting+syntax) öffnet die Hilfeseite von Obsidian im Browser und führt dort zum Kapitel Basic formatting syntax in Obsidian.

Interne Links sind Verbindungen zwischen Dateien im Obsidian-Vault. Sie werden durch Eingabe von zwei eckigen Klammern erzeugt. [[Markdown-Grundlagen]] erzeugt diesen internen Link zur entsprechenden Datei. Diese Links in Obsidian sind bidirektional. Das bedeutet, dass in der Datei, zu der dieser Link führt, auch ein sogenannter Backlink erzeugt wird. Details über das Verlinken von Dateien in Obsidian gibt’s in der Obsidian-Hilfe unter Internal links.
Interne Links können in Obsidian übrigens nicht nur zu anderen Markdown-Dateien erzeugt werden, sondern zum Beispiel auch zu PDF-Dateien, die im Obsidian-Vault gespeichert sind.

Bilder

Das Einbinden von Bildern in einen Text ist ebenfalls eine wichtige Grundfunktion von Markdown. Grundsätzlich können in einen Markdown-Text alle möglichen Dateien mit eingebunden werden. Es ist dabei unerheblich, ob es sich um eine Grafikdatei oder beispielsweise eine PDF-Datei handelt. Die Syntax ist wie bei einem Link, allerdings wird dem ein Rufzeichen vorangestellt. Die Eingabe von ![Bild](https://...) erzeugt den Link zur Bilddatei und zeigt nach Bestätigen mit der Enter-Taste das Bild auch gleich im Editor an.

Beispielhaft hier der Link zu einem Foto aus diesem Blog: ![Bäume](https://www.mathoi.at/wp-content/uploads/2023/06/NachhaltigeDigitalisierung-Titel.jpeg)

Bäume

Trennlinien

Horizontale Trennlinien können an jeder beliebigen Stelle in einem Markdown-Dokument entweder mit drei aufeinanderfolgenden Sternen *** oder mit ebenfalls drei aufeinanderfolgenden Bindestrichen --- erstellt werden.

Code

Auch Codeelemente oder ganze Codeblocks können in Markdown eingebaut werden. Quasi inline kann Code einfach zwischen Backticks geschrieben werden.

Ein Codeblock – also ein Ausschnitt aus einem Programmcode über mehrere Zeilen – wird jeweils zu Beginn und Ende des Blocks mit je drei Backticks formatiert.

```
Hier kann der Code stehen, wenn man weiß, wie man ihn schreibt ;-)
```

Zitate

Zitate aus Fachartikeln oder Büchern werden mit einem Größer-Zeichen in der Form > zitierter Text erzeugt. Am Ende des Zitats kann man auch die Quellenangabe mit \- Quelle einfügen.

Fußnoten

Fußnoten können mit eckigen Klammern und dem Hoch- bzw. Dach-Symbol, gefolgt von einer Zahl in der Schreibweise [^1] hergestellt werden. Unter dem Absatz mit der Fußnote kann man dann den Fußnotentext eingeben, indem man den Klammerausdruck gefolgt von einem Doppelpunkt in der Form [^1]: Fußnotentext eingibt.

Kommentare

Erklärende Kommentare können auch in Markdown-Texten hilfreich sein. Sie werden dann jeweils nur im Bearbeitungsmodus einer Markdown-Datei angezeigt und sind im Lesemodus unsichtbar.

Die generelle Markdown-Syntax für Kommentare lautet <!-- Kommentar -->. Das ist bei der Texteingabe allerdings etwas mühsam zum Eintippen, daher bietet Obsidian eine einfachere Variante mit zwei Prozentzeichen in der Schreibweise %% Kommentar %%.

Markdown für Fortgeschrittene

Über diese Grundlagen hinaus bietet Markdown noch einiges mehr an Möglichkeiten. So können mit Markdown auch Tabellen formatiert, Diagramme erzeugt und mathematische Formeln eingebunden werden. Die Obsidian-Hilfe bietet dazu die notwendigen Informationen unter Advanced formatting syntax.
Obsidian verwendet hauptsächlich CommonMark, angereichert zu einer sogenannten Obsidian flavored Markdown-Syntax mit Elementen aus GitHub Flavored Markdown und LaTeX.

Lesetipps

Im Internet gibt es zur weiteren Vertiefung unzählige Informationsquellen zur Markdown-Syntax. Die Hilfeseite von Obsidian zu Markdown habe ich weiter oben im Beitrag bereits verlinkt, ebenso die ursprüngliche erste Version von Markdown auf John Gruber’s Daring Fireball. In deutscher Sprache gibt es auch einige Seiten zum Thema Markdown. Zum Einstieg bietet die deutschsprachige Markdown Syntax-Dokumentation einen guten Überblick.
Es gibt auch einige Bücher zu Markdown. Ebenfalls in deutscher Sprache und schon etwas älter, aber immer noch gut ist das mittlerweile kostenlos erhältliche eBook „Markdown und Pandoc“ von Michael Kofler.