Über Markdown-Viewer
Zyffs Markdown-Viewer öffnet eine .md-Datei — oder alles, was Sie einfügen — und zeigt sie so, wie GitHub es täte: Überschriften, Tabellen, Aufgabenlisten, Fußnoten, syntaxhervorgehobenen Code und eingebettetes HTML, mit einem Inhaltsverzeichnis, das aus den eigenen Überschriften des Dokuments gebaut ist. Das Rendern geschieht auf Zyffs Servern statt clientseitig, was bei diesem Tool ebenso eine Sicherheits- wie eine Architekturentscheidung ist. Markdown reicht rohes HTML bewusst durch, ein Dokument aus einem Repository, von einem Kunden oder von einem Fremden ist also per Definition nicht vertrauenswürdige Auszeichnung; jedes Tag in der Ausgabe hier stammt entweder vom Renderer selbst oder hat eine serverseitige Positivliste überstanden, die Skripte, Ereignis-Handler, iframes und Inline-Styles entfernt. Ihre Datei wird im Arbeitsspeicher verarbeitet und nie gespeichert. Es gibt keine Anmeldung, kein Wasserzeichen und keine Grenze, wie viele Dokumente Sie öffnen.
So öffnen und betrachten Sie eine Markdown-Datei
Öffnen oder fügen Sie das Dokument ein
Klicken Sie auf Datei öffnen und wählen Sie eine .md-, .markdown- oder .txt-Datei, ziehen Sie eine auf eine der beiden Flächen, oder wechseln Sie auf den Markdown-Tab und fügen Sie ein. Eine Datei wird auf dem Server hochgeladen und dekodiert, sodass eine Datei, die nicht UTF-8 ist, Ihnen das sagt, statt als Fragezeichen dargestellt zu werden.
Lesen Sie sie in der Vorschau oder bearbeiten Sie sie geteilt
Die Vorschau zeigt das gerenderte Dokument für sich allein. Geteilt setzt den Quelltext daneben und rendert beim Tippen neu, was Sie wollen, wenn Sie eine Tabelle reparieren, die sich nicht anzeigen lässt. Markdown zeigt nur den Quelltext.
Prüfen Sie die Variante, wenn etwas falsch aussieht
Öffnen Sie die Optionen und bestätigen Sie, dass GitHub Flavored Markdown eingeschaltet ist — Tabellen, Aufgabenlisten, Durchstreichung und Fußnoten sind GFM-Erweiterungen und nicht Teil des Markdown-Kerns, und ein Renderer ohne sie zeigt Ihre Tabelle als reine Pipe-Zeichen.
Springen Sie mit dem Inhaltsverzeichnis
Jedes Dokument mit mehr als einer Überschrift bekommt ein Inhaltsverzeichnis aus diesen Überschriften, jede mit einem Link auf ihren eigenen Anker. Die Anker entsprechen GitHubs Slug-Format, sodass ein bereits in Ihre README geschriebenes Inhaltsverzeichnis auch hier funktioniert.
Exportieren Sie, was Sie brauchen
Kopieren Sie das gerenderte HTML, laden Sie eine eigenständige .html-Datei herunter, die sich überall mit bereits enthaltenen Styles öffnet, speichern Sie das Markdown erneut, oder nutzen Sie Drucken, um ein PDF zu erzeugen. Gedruckt wird das Dokument, nicht die Seite drumherum.
Was Markdown-Viewer kann
GitHub Flavored Markdown, samt Fußnoten
Tabellen mit Spaltenausrichtung, Aufgabenlisten, Durchstreichung, automatische Verlinkung nackter URLs, Fußnoten und GitHubs Hinweisblöcke [!NOTE] und [!WARNING]. Das sind die Erweiterungen, auf die eine echte README angewiesen ist, und genau die, die ein strikter CommonMark-Renderer Ihnen nicht zeigt.
Eingebettetes HTML wird dargestellt, nicht entfernt — über eine Positivliste
Badges, <details>-Blöcke, <img align="right"> und <picture> werden so dargestellt wie auf GitHub. Skripte, Ereignis-Handler, iframes, Formulare, Inline-Styles und unbekannte Attribute werden auf dem Server entfernt, was das Dokument auch enthält.
Syntaxhervorhebung für die Sprachen, die Sie tatsächlich einfügen
JavaScript, TypeScript, Python, Go, Rust, Java, C und C++, C#, PHP, Ruby, SQL, JSON, YAML, TOML, HTML, CSS, Shell, Dockerfile, GraphQL, Unified Diffs und Markdown selbst, aufgelöst aus der Info-Zeichenkette des Codeblocks und ihren üblichen Aliassen.
Ein Inhaltsverzeichnis mit GitHub-kompatiblen Ankern
Aus denselben Überschriften gebaut, die der Renderer ausgegeben hat, sodass ein Eintrag nie auf einen Anker zeigen kann, der nicht auf der Seite ist. Wiederholte Überschriften bekommen den Zusatz -1, -2, den GitHub verwendet — und genau das lässt ein handgeschriebenes Inhaltsverzeichnis weiter funktionieren.
Front Matter erkannt, nicht abgedruckt
Ein YAML- oder TOML-Block am Dateianfang wird herausgehoben und als Felder gezeigt, statt als versprengtes --- und eine Folge von key: value-Zeilen dargestellt zu werden — so sieht eine Hugo- oder Jekyll-Seite in einem Viewer aus, der nichts davon weiß.
Dokumentstatistik aus demselben Parse
Wörter, Lesezeit, Überschriften, Links, Bilder, Codeblöcke, Tabellen und erledigte Aufgaben, alle während des Renderns gezählt. Codeblöcke und Front Matter bleiben bei der Wortzahl außen vor, sodass die Lesezeit beschreibt, was Sie tatsächlich lesen würden.
CommonMark-Modus, um herauszufinden warum
Schalten Sie GitHub Flavored Markdown ab, und das Dokument wird nach striktem CommonMark dargestellt. Das ist der schnellste Weg herauszufinden, ob die Tabelle, die auf npm nicht erscheint, eine GFM-Tabelle auf einem Renderer ohne deren Unterstützung ist.
At a glance
| Akzeptierte Dateien | .md, .markdown, .mdown, .mkd, .mkdn, .mdx, .txt — bis 2 MB |
|---|---|
| Dokumentgrenze | 500.000 Zeichen oder 60.000 Zeilen, auf dem Server durchgesetzt |
| Varianten | GitHub Flavored Markdown (Standard) oder striktes CommonMark |
| Eingebettetes HTML | Über eine serverseitige Positivliste dargestellt oder als reiner Text gezeigt |
| Hervorgehobene Sprachen | Aus der Info-Zeichenkette des Codeblocks und ihren üblichen Aliassen aufgelöst |
| Hervorhebungsgrenze | Blöcke über 40.000 Zeichen werden als schlichte Festbreitenschrift dargestellt |
| Inhaltsverzeichnis | Bis zu 500 Überschriften, mit GitHub-kompatiblen Anker-Slugs |
| Lesegeschwindigkeit | Standardmäßig 225 Wörter pro Minute; 180 oder 300 ebenfalls verfügbar |
| Exporte | HTML kopieren, eigenständige .html, das ursprüngliche .md und Drucken als PDF |
| Speicherung | Keine — das Dokument wird nur für die Anfrage im Arbeitsspeicher gehalten |
Frequently asked questions
Wie öffne ich eine .md-Datei?
Öffnen Sie sie in einem beliebigen Markdown-Viewer, auch in diesem — klicken Sie auf Datei öffnen oder ziehen Sie die .md auf die Seite. Eine .md-Datei ist reiner Text, ein Texteditor öffnet sie also ebenfalls, aber Sie sehen dann die Syntax statt der Formatierung. Es muss nichts installiert werden, und die Datei wird nie gespeichert.
Warum wird meine Markdown-Tabelle nicht dargestellt?
Fast immer, weil der Renderer GitHub Flavored Markdown nicht unterstützt oder weil die Trennzeile fehlt oder fehlerhaft ist. Tabellen sind eine GFM-Erweiterung und nicht Teil des Markdown-Kerns, deshalb zeigen npm, manche Dokumentationsgeneratoren und strikte CommonMark-Renderer die Pipe-Zeichen als reinen Text. Die Reihe aus Bindestrichen unter der Kopfzeile ist das, was eine Tabelle zur Tabelle macht — ohne sie sind die Pipes einfach Pipes.
Warum sind meine Zeilenumbrüche verschwunden?
Weil ein einzelner Zeilenumbruch innerhalb eines Absatzes in Standard-Markdown ein Leerzeichen ist und kein Umbruch. Die Zeile mit zwei Leerzeichen oder einem Backslash zu beenden erzwingt einen — oder schalten Sie hier "Zeilenumbrüche werden zu <br>" ein, so wie sich Kommentarfelder und Chat-Apps verhalten. Das ist die mit Abstand häufigste Überraschung für alle, deren erstes Markdown in einem Issue-Tracker entstand.
Führt dieser Viewer das HTML in meinem Markdown aus?
Er stellt es dar, über eine Positivliste, und nichts darin kann ausgeführt werden. Skripte, Ereignis-Handler, iframes, Objekte, Formulare, Inline-Styles und unbekannte Attribute werden auf dem Server entfernt, bevor das HTML je Ihren Browser erreicht, und Links auf javascript:- oder data:-URLs werden verworfen. Sie können die HTML-Darstellung auch ganz abschalten, was die Auszeichnung als reinen Text zeigt.
Wird meine Datei irgendwo hochgeladen?
Sie wird zum Rendern an Zyffs Server gesendet und nie auf die Festplatte geschrieben, protokolliert oder zwischengespeichert. Das Dokument existiert für die Dauer einer Anfrage im Arbeitsspeicher. Serverseitig zu rendern ist das, was eine einzige geprüfte Positivliste für die Sicherheit der Ausgabe verantwortlich macht statt einer Kopie dieser Logik in jedem Browser-Bundle.
Kann ich damit Markdown in HTML umwandeln?
Ja. HTML kopieren gibt Ihnen das gerenderte Fragment, und HTML herunterladen gibt Ihnen eine vollständige eigenständige Datei mit bereits enthaltenen Styles, sodass sie auf einem Rechner korrekt öffnet, der noch nie von Zyff gehört hat. Beides stammt aus demselben Rendering, das Sie gerade ansehen.
Unterstützt es Mermaid-Diagramme oder LaTeX-Formeln?
Nein. Ein ```mermaid- oder ```math-Block wird als hervorgehobener Codeblock dargestellt, der seinen Quelltext zeigt — was er ja auch ist. Beides braucht eine clientseitige Rendering-Engine, und dieses Tool führt bewusst keine aus — die ganze Grundlage seiner Sicherheit ist, dass der Browser fertiges, bereinigtes HTML empfängt und nichts ausführt.
Kann es eine .mdx-Datei öffnen?
Ja, und das Markdown darin wird normal dargestellt, aber seine JSX-Komponenten werden als Text gezeigt statt ausgeführt — der Viewer sagt das in einem Hinweis, sobald er eine import-Anweisung sieht. Komponenten aus der Datei eines anderen auszuführen ist nichts, was ein Viewer tun sollte.
Warum funktionieren meine Überschriftenlinks auf GitHub, aber nicht anderswo?
Weil Anker-Slugs nicht standardisiert sind, sodass zwei Renderer für dieselbe Überschrift verschiedene ids erzeugen können. Dieser Viewer nutzt GitHubs Algorithmus — Kleinschreibung, Zeichensetzung entfernt, Leerzeichen zu Bindestrichen, mit einem Zusatz -1 oder -2 bei Wiederholungen — sodass ein für GitHub geschriebenes Inhaltsverzeichnis auch hier funktioniert.
Gibt es eine Grenze für die Dateigröße?
2 MB für eine hochgeladene Datei und 500.000 Zeichen oder 60.000 Zeilen für das Dokument selbst. Das ist ein sehr großes Einzeldokument — die CommonMark-Spezifikation in Markdown hat unter 300.000 Zeichen. Darüber hinaus sehen Sie sich einen Abschnitt nach dem anderen an.