Markdown Support

Text the client displays is rendered as Markdown. Only the syntax listed here is supported — anything else is shown verbatim or dropped.

Short Form

This is the whole spec as it goes to whatever generates the text; the sections below only expand on it.

Use Markdown. Use asterisks for emphasis: **bold**, *italic*, ***both***.
Supports ~~strikethrough~~, subscript ~x~, superscript ^x^, headings, lists, blockquotes, nesting,
code inline and blocks, pipe tables. Softline break a line by ending it with a backslash,
new paragraph with double newline. Write URLs as [text](https://example.com) or <https://example.com>.
Put blank lines around --- rules and headings. No task lists, HTML, images, or footnotes.

Text

  • Bold **x**, italic *x*, both ***x***. Use asterisks: _x_ also renders, but not inside a word, so snake_case stays literal either way.

  • Strikethrough ~~x~~, subscript ~x~, superscript ^x^.

  • Inline code in single backticks, rendered in a monospace face.

  • Links as [text](https://example.com). A bare URL needs pointy brackets: <https://example.com>. Only http and https links are clickable.

  • Emoji are fine as literal characters.

  • Prefix a character that would otherwise be markup (*, ~, ^, #, [, backtick) with a backslash to show it literally.

Lines

A blank line starts a new paragraph. A single newline inside a paragraph is only a space, so lines may be wrapped freely. To break a line without starting a paragraph, end it with a backslash:

first line\
second line

Trailing double spaces work too but are invisible and easily stripped, so the backslash is the documented form. <br> is not supported.

Blocks

Leave a blank line before and after every block — headings and --- rules included, as those are the two that silently misparse without one.

  • Headings # through ######, with a space after the hashes and nothing after the text.

  • Bullet lists as - item; ordered lists as 1. item. Nest by indenting two spaces — nested ordinals cycle 1.a.i. by depth.

  • Block quotes with > on every line; > > nests.

  • Code blocks fenced with three backticks on their own line, rendered in a monospace face. The language tag is accepted but ignored — there is no syntax highlighting.

  • Horizontal rule --- on its own line.

  • Tables as a header row, a delimiter row, then one line per row. Colons in the delimiter row align the column (:-- left, :-: centre, --: right); a cell must stay on one line.

| Tier | Price |
|------|-------|
| Free | 0     |

Do Not Use

  • Task lists (- [ ]), footnotes ([^1]), definition lists.

  • HTML tags of any kind — shown verbatim or dropped.

  • Images (![alt](url)) — nothing is drawn; the alt text is all that is left behind, in place of the image.

  • Headings underlined with === or ---. These do render, but the second form also means a --- meant as a rule turns the line above it into a heading — hence the blank line.

  • Indenting a line by four or more spaces, or by a tab — that becomes a code block.