Der Markdown-Renderer macht aus Text, wie ihn ein Modell schreibt, echte Elemente: Überschriften, Listen und Aufgabenlisten, Zitate, Tabellen, Codeblöcke mit Kopieren-Button und Links. Er parst den Text in einen Baum und zeichnet ihn mit Templates, sodass rohes HTML Text bleibt und nie etwas als HTML eingefügt wird.
Mit streaming liest sich halb geschriebener Text schon wie der fertige: Ein offener Code-Fence ist bereits ein Codeblock, ein einzelnes ** wartet auf sein Gegenstück, und ein Cursor folgt dem letzten Wort. Unveränderte Blöcke behalten ihr DOM.
Links funktionieren nur für Web- und E-Mail-Adressen sowie Telefonnummern, und Bilder bleiben Links, bis du images einschaltest.
Ein Dokument
Überschriften beginnen bei headingLevel und passen so unter die der Seite. Breite Tabellen und Code scrollen in eigenen Bereichen.
Streaming
Derselbe Text, ein paar Zeichen auf einmal. Kein Symbol blitzt kurz auf, und nur der letzte Block wird neu gerendert.
Syntax-Highlighting
nuiMarkdownCode zeichnet Codeblöcke mit deinem eigenen Template, hier mit einem winzigen Highlighter. Es erhält den Code und seine Sprache.