Skip to content

Latest commit

 

History

History
67 lines (55 loc) · 3.22 KB

markdown-support.md

File metadata and controls

67 lines (55 loc) · 3.22 KB

Markdown support

Element Support Notes
Headings # through ###### Yes The first # becomes the PDF title
Paragraphs Yes Consistent typographic spacing
Bold and italic Yes Combined styles are supported
Strikethrough Yes CommonMark extension enabled
Links Yes Clickable PDF annotations
Local images Yes Paths relative to the source; missing files warn and keep alt text
Remote images Yes HTTPS downloaded by default; --no-external denies; --allow-http permits cleartext HTTP
Ordered lists Yes Nested lists supported
Unordered lists Yes Nested lists supported
Task lists Yes Rendered with Unicode symbols
Tables Yes Dark header and alternating rows
Block quotes Yes Callout with an accent rule
Horizontal rules Yes Full-width separator; slide break with --slides
Inline code Yes Monospace font
Fenced code blocks Yes Language follows the opening fence
Mermaid diagrams Yes mermaid / mmd fences rendered to SVG
Raw HTML Partial Displayed as text
Footnotes Partial Superscript reference only
Mathematics Partial Displayed as raw content

Code blocks

Fenced blocks use complete TextMate grammars. The main Syntect/two-face catalog supports common systems, web, data, shell, and application languages. Liquid uses its full grammar with embedded HTML, CSS, JSON, and JavaScript contexts. Unknown identifiers fall back to plain text. Long lines are wrapped visually. --line-numbers numbers visual lines and is disabled by default.

See Syntax highlighting for tested identifiers and examples.

Mermaid diagrams

Fenced blocks tagged mermaid or mmd are rendered to SVG with a pure-Rust Mermaid engine and embedded as centered images. SVG canvases are transparent so they inherit the page background. Documents and light slide templates use Mermaid's classic light palette; dark slides use its complete dark palette. Labels use the embedded DejaVu Sans font. Wide pipelines grow more generously in slide decks, while tall and non-wide diagrams stay within the slide area. Invalid Mermaid source fails PDF generation with a clear error. No browser or Node.js runtime is required.

Supported diagram families include flowcharts, sequence, class, state, ER, pie, XY, quadrant, gantt, timeline, journey, mindmap, and git graphs, subject to the embedded renderer. Gantt and timeline schedules are left-aligned and use the full printable width so their dates and labels remain readable.

Images

Supported formats follow Typst's image engine and include PNG, JPEG, GIF, and SVG. An image alone in a paragraph becomes a centered block. An image embedded in text is sized to the line height.

Remote HTTPS images are downloaded and embedded by default (Typst itself has no network access). Cleartext http:// URLs are blocked unless --allow-http is set. Pass --no-external to skip all remote downloads. Failed downloads and missing local files emit a warning, keep any alt text, and continue PDF generation so linked badges still produce clickable labels.

Result callout

A paragraph beginning with Expected result: automatically receives a green validation style.