Markdown-Tabellengenerator

Bauen Sie Markdown-Tabellen visuell mit einem tabellenkalkulationsähnlichen Editor.

Keine Daten verlassen Ihr Gerät
3 × 3

Klicken Sie unter jedem Spaltenkopf auf L / C / R, um die Ausrichtung festzulegen (links, zentriert, rechts).

Markdown-Ausgabe

Über Markdown-Tabellen

Markdown-Tabellen verwenden Pipes (|) und Bindestriche (-), um strukturierte tabellarische Daten in Klartext zu erstellen. Sie werden von GitHub, GitLab, Reddit und den meisten Markdown-Renderern unterstützt. Die Ausrichtungszeile nutzt Doppelpunkte, um für jede Spalte links, zentriert oder rechts anzugeben.

Markdown-Tabellen von Hand zu schreiben kann mühsam und fehleranfällig sein. Dieser visuelle Editor lässt Sie in einem tabellenkalkulationsähnlichen Raster tippen und erzeugt in Echtzeit korrekt formatiertes Markdown. Die gesamte Verarbeitung erfolgt in Ihrem Browser.

Die Pipe-Table-Syntax, mechanisch

Eine GFM-Tabelle besteht aus drei Teilen: einer Kopfzeile mit durch Pipes (|) getrennten Zellen, einer Trennzeile direkt darunter mit Bindestrichen (---) für jede Spalte und null oder mehr Datenzeilen mit derselben pipe-getrennten Struktur. Führende und schließende Pipes in jeder Zeile sind optional, werden aber konventionell für Lesbarkeit eingeschlossen. Spaltenausrichtung wird durch Doppelpunkte in der Trennzeile spezifiziert: :--- für linksbündig (Standard), :---: für zentriert, ---: für rechtsbündig. Die minimal lebensfähige Tabelle sieht in der Quelle so aus: | Header | Header | in Zeile 1, | --- | --- | in Zeile 2, | Cell | Cell | ab Zeile 3. Zelleninhalt kann jede Inline-Markdown-Formatierung (fett, kursiv, Links, Code-Spans, Bilder) enthalten, aber keine Block-Elemente (Listen, Codeblöcke, Zitate). Zeilenumbrüche innerhalb einer Zelle müssen als <br>-Tags codiert werden statt als wörtliche Zeilenumbrüche, da wörtliche Zeilenumbrüche die Tabellenstruktur brechen würden. Pipe-Zeichen innerhalb von Zelleninhalt müssen als \| escapet werden, sonst behandelt der Parser sie als Spaltentrenner und die Spaltenanzahl der Zeile geht falsch. Die meisten Parser tolerieren ungleichmäßige Spaltenbreiten; die Quelle | a | b | und | aaa | b | rendern identisch, auch wenn letztere in der Quelle „richtiger" aussieht. Dieses Tool gibt aus Lesbarkeitsgründen immer breitengleiche Quelle aus, rendert aber wie kompakte Quelle.

Wo Tabellen rendern und wo nicht

Rendert korrekt: GitHub (Issues, Pull Requests, READMEs, Wiki-Seiten, Diskussionen, Code Reviews, Kommentare überall), GitLab (gleiche Oberflächen), Bitbucket, Stack Overflow, Reddit (wenn GFM im Subreddit aktiviert ist, was bei den meisten der Fall ist), Discord (nur im Codeblock-Kontext, vollständige GFM-Tabellen rendern in Chat-Nachrichten nicht, aber markdown-it verarbeitet sie in der Docs-Oberfläche), Notion (mit eigener Tabellen-Importfunktion), Obsidian, Logseq, Bear, die meisten Static-Site-Generatoren (Hugo, Jekyll, Eleventy, Astro mit dem remark-gfm-Plugin, Next.js MDX), VS Codes Vorschau, GitHub Pages, Read the Docs (je nach Konfiguration). Rendert nicht korrekt: striktes CommonMark (Pandoc mit dem commonmark-Reader und ohne Erweiterungen, Discount C-Parser ohne Pipe-Table-Flag), Slack (rendert eine Markdown-Untermenge, aber keine Tabellen), die meisten E-Mail-Clients (das gerenderte HTML in E-Mails ist strukturell in Ordnung, aber inline-gestyltes, nicht Markdown), ältere WordPress-Installationen ohne Markdown-Plugin. Die allgemeine Regel: wenn Ihr Ziel eine entwicklerorientierte Plattform ist (GitHub-Familie, technische Dokumentation), funktionieren GFM-Tabellen. Wenn Ihr Ziel eine Plattform für ein allgemeines Publikum ist (Slack, E-Mail, Twitter), nehmen Sie an, dass Tabellen nicht rendern, und rendern Sie entweder als Bild vor oder schreiben als Liste um.

Alternative Markdown-Tabellen-Syntaxen

Das Pipe-Table-Format dominiert wegen der Reichweite von GitHub, aber es ist nicht die einzige Markdown-Tabellen-Syntax. Pandocs einfache Tabellen verwenden Leerzeilen-und-Bindestriche als Trenner und richten Spalten nach visueller Position statt nach Pipes aus, viel lesbarer für schmale Tabellen, aber schwerer von Hand zu schreiben. Pandocs Multi-Line-Tabellen unterstützen Zellen, die sich über mehrere Zeilen erstrecken, wichtig für langen beschreibenden Inhalt, der nicht in eine Zeile passt. Pandocs Grid-Tabellen verwenden ASCII-Art-Ränder (+---+---+), die von Hand mühsam zu pflegen aussehen, aber für Tools leicht auszugeben sind. reStructuredText (Sphinx) verwendet ausschließlich Grid-Tabellen, jedes Python-Projekt schreibt seine Dokumentation so. AsciiDoc verwendet eine andere Pipe-Präfix-Syntax (|===), optimiert für technisches Buchschreiben. HTML in Markdown ist immer als Notausgang verfügbar: jeder Markdown-Prozessor lässt rohes HTML durch, also können Sie, wenn Pipe-Tabellen nicht ausreichen, eine echte <table> mit vollem Row/Column-Spanning, semantischem Markup und CSS-Styling einbauen. Die Pipe-Table-Syntax, die dieses Tool erzeugt, ist GFM-Stil, die kompatibelste Wahl für das moderne Entwickler-Ökosystem.

Häufige Anwendungsfälle

Das Breitenproblem und andere Einschränkungen

Pipe-Tabellen haben mehrere inhärente Einschränkungen, die man kennen sollte. Spaltenbreite wird durch den längsten Zelleninhalt beschränkt, eine lange URL oder ein beschreibender Absatz in einer Zelle zwingt die gesamte Spalte breit zu werden, was unhandliche Tabellen produzieren kann, die nicht auf Standard-Dokumentationsseitenbreiten passen. Die Lösung ist entweder, langen Inhalt zu kürzen (mit Verlinkung zu Details anderswo), oder Inline-HTML zu verwenden, wenn Sie umbruchsfähige Zellen brauchen. Kein Row- oder Column-Spanning, jede Zelle belegt genau eine Zeile und eine Spalte. Komplexe Tabellen mit zusammengeführten Zellen brauchen echtes HTML <table> mit rowspan / colspan-Attributen. Keine verschachtelten Tabellen, Sie können in Markdown keine Tabelle in die Zelle einer anderen Tabelle setzen. Kein Block-Inhalt in Zellen, keine Listen, keine Codeblöcke, keine Zitate innerhalb einer Zelle. Inline-Inhalt (fett, kursiv, Code-Spans, Links, Bilder) ist ok, aber alles Mehrzeilige braucht <br>-Tags. Die Kopfzeile ist verpflichtend in GFM, es gibt keine Syntax für eine kopflose Tabelle. Wenn Sie eine Tabelle ohne sichtbare Kopfzeile wollen, lassen Sie die Kopfzellen leer, aber die Zeile muss trotzdem vorhanden sein. Ausrichtung gilt pro Spalte für die ganze Spalte, Sie können nicht unterschiedliche Ausrichtungen für unterschiedliche Zellen in derselben Spalte haben. Für anspruchsvolle Tabellenlayouts, die diese Einschränkungen überschreiten, ist das richtige Werkzeug HTML in Ihrer Markdown-Quelle, nicht Markdown selbst.

CSV ↔ Markdown-Konvertierung

Die meisten realen Tabellendaten leben in CSV-Dateien (Tabellenkalkulations-Exporte, API-Antworten, Log-Analyse-Ausgaben), die Konvertierung in und aus Markdown ist ein häufiger Workflow. CSV → Markdown: das CSV parsen (Felder in Anführungszeichen mit eingebetteten Kommata, escapete Anführungszeichen, Zeilenumbrüche innerhalb von Feldern behandelnd), dann jede Zeile als | Wert | Wert | mit den entsprechenden Kopf- und Trennzeilen formatieren. Die meisten Tabellengeneratoren einschließlich dieses bieten CSV-Import; für einmalige Konvertierungen können Sie auch das Kommandozeilen-Werkzeug csvlook von csvkit verwenden, das eine ähnliche Pipe-Format-Ausgabe produziert. Markdown → CSV: die GFM-Tabelle zurück in Zeilen und Spalten parsen, dann CSV mit korrektem Quoting ausgeben. Nützlich beim Extrahieren strukturierter Daten aus Dokumentation zurück in Tabellenkalkulationsform zur Analyse. Die Richtung Markdown-zu-CSV bieten Werkzeuge wie pandoc (mit der richtigen Reader/Writer-Kombination), tableconvert.com und verschiedene Kommandozeilen-Utilities. Der Hin- und Rückweg ist in einer Richtung verlustbehaftet, Formatierung (fett, Links, Bilder) überlebt den CSV-Schritt nur intakt, wenn Sie den CSV-Zelleninhalt als rohen Markdown-Text schreiben und das Ergebnis erneut als Markdown behandeln.

Datenschutz: warum Browser-only sogar hier zählt

Tabellen wirken nicht wie sensible Daten, aber der Inhalt von Tabellen ist es oft. Projektpläne enthalten Personalentscheidungen und unangekündigte Features. Preistabellen enthalten kommerzielle Informationen. Vergleichstabellen in unveröffentlichten Blog-Posts offenbaren redaktionelle Positionierung. Action-Items aus Besprechungsnotizen enthalten Zuweisungs- und Verantwortungsinformationen. Serverseitige Tabellengeneratoren laden Ihre Daten zu einem Dritten hoch, wo sie in Logs liegen. Dieses Tool läuft vollständig in Ihrem Browser per JavaScript, prüfen Sie im Network-Tab der DevTools, während Sie Zellen bearbeiten, oder schalten Sie die Seite nach dem Laden offline (Flugmodus), und der Editor funktioniert weiter. Sicher für unveröffentlichte Dokumentationsentwürfe, interne Projektplanung, Vergleichstabellen für noch nicht veröffentlichte Blog-Posts oder beliebigen Tabelleninhalt, den Sie nicht auf der Festplatte eines Fremden kopiert sehen wollen.

Häufige Fragen

Welche Markdown-Tabellensyntax wird erzeugt?

Sie erzeugt die Standard-GFM-Syntax (GitHub Flavored Markdown) mit Pipes, einer Trennzeile aus Bindestrichen und optionalen Doppelpunkten zur Ausrichtung. Diese Syntax funktioniert in GitHub, GitLab, Reddit, Jekyll, Hugo und den meisten Markdown-Prozessoren.

Wie lege ich die Spaltenausrichtung fest?

Klicken Sie unter jedem Spaltenkopf auf die Buttons L (links), C (zentriert) oder R (rechts). Linksbündig nutzt :---, zentriert :---: und rechtsbündig ---: in der Trennzeile.

Kann ich aus CSV importieren oder aus einer Tabellenkalkulation einfügen?

CSV-Import steht auf der Roadmap. Vorerst funktioniert Einfügen aus Excel/Google Sheets oft, weil die meisten Tabellenkalkulations-Apps tab-getrennte Daten in die Zwischenablage legen, die Sie in einzelne Zellen einfügen können. Für Massen-CSV-Import ohne manuelles Einfügen erzeugen Kommandozeilen-Werkzeuge wie csvlook von csvkit ähnliche GFM-Tabellen-Ausgabe, oder pandoc kann CSV direkt in Markdown umwandeln mit pandoc --from csv --to gfm input.csv.

Was ist mit zusammengeführten Zellen, verschachtelten Tabellen oder Block-Inhalt in Zellen?

GFM-Pipe-Tabellen unterstützen diese nicht. Jede Zelle belegt genau eine Zeile und eine Spalte; kein rowspan oder colspan. Keine verschachtelten Tabellen. Kein Block-Inhalt (Listen, Codeblöcke, Zitate) innerhalb einer Zelle, nur Inline-Inhalt (fett, kursiv, Code-Spans, Links, Bilder, Zeilenumbrüche über <br>). Für anspruchsvolle Tabellenlayouts, die diese Einschränkungen überschreiten, betten Sie rohes HTML <table> direkt in Ihre Markdown-Quelle ein, jeder Markdown-Prozessor lässt HTML unverändert durch. Der Kompromiss ist, dass die Quelle viel schwerer von Hand zu lesen und zu bearbeiten wird.

Gibt es ein Limit für Zeilen oder Spalten?

Sie können bis zu 20 Spalten und 100 Zeilen anlegen. Für die meisten Dokumentationen und README-Dateien ist das mehr als ausreichend. Die Tabelle wird beim Tippen in Echtzeit aktualisiert.

Werden meine Tabelleninhalte irgendwohin gesendet?

Nein. Die Generierung läuft vollständig in Ihrem Browser per JavaScript. Die Zellen, die Sie bearbeiten, und die Markdown-Ausgabe überqueren niemals das Netz, prüfen Sie im Network-Tab der DevTools, während Sie tippen, oder schalten Sie die Seite nach dem Laden offline (Flugmodus), und der Editor funktioniert weiter. Sicher für unveröffentlichte Dokumentationsentwürfe, interne Projektpläne, noch nicht veröffentlichte Preisvergleichstabellen oder beliebige tabellarische Inhalte, die Sie nicht auf der Festplatte eines Fremden kopiert sehen wollen.

Verwandte Tools