Markdown Reference
Complete reference for every Markdown element supported in Papersmith, with side-by-side syntax and rendered output for each.
Headings#
Create headings using one to six # characters followed by a space. The number of # symbols maps directly to the HTML heading level (H1–H6).
| Markdown | Rendered output |
|---|---|
| # Heading 1 | Heading 1 |
| ## Heading 2 | Heading 2 |
| ### Heading 3 | Heading 3 |
| #### Heading 4 | Heading 4 |
| ##### Heading 5 | Heading 5 |
| ###### Heading 6 | Heading 6 |
Text Formatting#
Wrap text in special characters to apply inline formatting. All of these work anywhere within a paragraph, heading, list item, or table cell.
| Markdown | Rendered output |
|---|---|
| **bold text** | bold textAlso: __bold text__ |
| *italic text* | italic textAlso: _italic text_ |
| ***bold and italic*** | bold and italicAlso: ___bold and italic___ |
| ~~strikethrough~~ | |
| `inline code` | inline code |
Blockquotes#
Prefix a line with > to create a blockquote. Add more > symbols to nest blockquotes.
| Markdown | Rendered output |
|---|---|
| > This is a blockquote. | This is a blockquote. |
| > First level >> Nested quote | First level Nested quote |
| > **Bold** inside a quote > with *italic* too | Bold inside a quote with italic too |
Lists#
Unordered lists#
Use -, *, or + followed by a space to create bullet list items. Indent with two or four spaces to create nested lists.
- First item
- Second item
- Nested item
- Another nested
- Deeply nested
- Third itemOrdered lists#
Use a number followed by a period and a space. The actual numbers you use don't matter — the renderer increments automatically.
1. First item
2. Second item
1. Nested ordered
2. Another nested
3. Third itemTask lists#
Use - [ ] for an unchecked item and - [x] for a checked item (case-insensitive). This is a GFM extension.
| Markdown | Rendered output |
|---|---|
| - [ ] Unchecked task | ☐ Unchecked task |
| - [x] Completed task | ☑ Completed task |
github-markdown-css stylesheet. In the exported PDF, they render as standard bullet list items with [ ] or [x] text.Code Blocks#
Inline code#
Wrap code in single backticks for inline code. This is rendered in a monospace font and is ideal for referencing variable names, commands, or short snippets.
| Markdown | Rendered output |
|---|---|
| Use `npm install` to install. | Use npm install to install. |
| Set `const x = 42` in your file. | Set const x = 42 in your file. |
Fenced code blocks#
Use triple backticks to open and close a code block. Add a language identifier immediately after the opening backticks to enable syntax highlighting.
```typescript
function greet(name: string): string {
return `Hello, ${name}!`
}
console.log(greet('World'))
```Papersmith uses Prism.js for syntax highlighting. The following language identifiers are supported:
/codeblock slash command (or /cb) to insert a fenced code block. The cursor is placed inside so you can type the language identifier immediately.Horizontal Rules#
Create a horizontal rule (a thematic break) using three or more dashes, asterisks, or underscores on their own line.
| Markdown | Rendered output |
|---|---|
| --- | |
| *** | Same output as --- |
| ___ | Same output as --- |
--- to avoid it being interpreted as a Setext-style heading underline.Links#
| Markdown | Rendered output |
|---|---|
| [Link text](https://example.com) | Link text |
| [Link text](https://example.com "Tooltip") | Link text(with tooltip on hover) |
| https://example.com | https://example.comAuto-linked (linkify is enabled) |
| [ref link][my-ref] [my-ref]: https://example.com | ref link(reference-style) |
Images#
Images use the same syntax as links, prefixed with !. The text in brackets becomes the alt attribute.
| Markdown | Rendered output |
|---|---|
|  | 🖼 image |
|  | 🖼 local imageLocal file paths work in PDF export |
|  | 🖼 with titleTitle shown as tooltip on hover |
https://). Base64-encoded images embedded in the Markdown also work reliably in PDF output.Tables#
Tables use pipe characters (|) to separate columns and a row of dashes to separate the header from the body. Column alignment is controlled by colons in the separator row.
| Name | Role | Status |
|----------|-----------|---------|
| Alice | Developer | Active |
| Bob | Designer | Away |Column alignment#
| Markdown | Rendered output |
|---|---|
| |:---------| | Left-aligned (default) |
| |---------:| | Right-aligned |
| |:--------:| | Center-aligned |
| Left | Center | Right |
|:---------|:--------:|---------:|
| Apple | Banana | Cherry |
| 1 | 2 | 3 |/table slash command to insert a pre-formatted 3-column table template. The column widths don't need to be padded — just the pipes and at least one dash per column are required.Typographer (Smart Punctuation)#
Papersmith enables markdown-it's typographer option, which automatically converts certain ASCII sequences into typographically correct Unicode characters.
| Markdown | Rendered output |
|---|---|
| "double quotes" | “double quotes” |
| 'single quotes' | ‘single quotes’ |
| (c) (r) (tm) | © ® ™ |
| -- | – (en dash) |
| --- | — (em dash) |
| ... | … (ellipsis) |
-- in text, escape it: \-\-.HTML in Markdown#
Raw HTML is enabled. You can embed any HTML element directly in your Markdown and it will be passed through to the rendered output and PDF.
<!-- Page break hint for PDF -->
<div style="page-break-after: always"></div>
<!-- Centered text -->
<p style="text-align: center">Centered paragraph</p>
<!-- Custom color -->
<span style="color: #e74c3c">Red text</span>PDF Export Notes#
Most Markdown renders identically in the preview and the exported PDF. A few things behave differently or require special handling.
Page breaks PRO#
Use <!-- pagebreak --> on its own line to force a new PDF page at that position. In the live preview it appears as a dashed indicator line. You can also insert one via the /Page Break slash command. Page breaks require a Pro account — the syntax is ignored in the free plan.
## Chapter One
Content here...
<!-- pagebreak -->
## Chapter Two
This starts on a new page.Links in PDFs#
External links (https://) are fully clickable in the exported PDF. Internal anchor links (#section) are not currently navigable within the PDF — this is a known limitation.
Code block wrapping#
Long lines in fenced code blocks are clipped at the PDF page margin and do not wrap automatically. Break long lines manually, or reduce the font size via the toolbar before exporting.
Themes affect rendering#
The selected PDF theme controls typography, heading colors, blockquote styles, and code block appearance. Switch themes from the THEME dropdown in the toolbar — the live preview updates immediately so you can compare before exporting.