Skip to main content

Markdown formatting

Style your messages with bold, italics, headings, code, lists, and more.

Root supports Markdown, a lightweight syntax for formatting text. You can apply formatting in two ways:

  • Formatting toolbar: Highlight text and select a formatting button (or use a keyboard shortcut)
  • Markdown syntax: Type special characters directly, like **bold** or *italic*

Both methods produce the same result. The toolbar buttons insert Markdown syntax for you.

Basic formatting​

Select text and use the formatting buttons below the message field, or use keyboard shortcuts:

FormatButtonShortcutMarkdown
BoldBCtrl+B**text**
ItalicICtrl+I*text*
StrikethroughSNone~~text~~
Spoiler👁None||text||
Inline code</>None`code`

Headings​

Structure longer messages with headings. Root supports six levels of headings.

Start a line with one or more # symbols followed by a space. The number of # symbols sets the heading level:

# Heading 1
## Heading 2
### Heading 3
#### Heading 4
##### Heading 5
###### Heading 6

Share URLs in your messages.

Paste a URL directly: Type or paste a URL and Root automatically makes it clickable.

Check out https://example.com for more info.

Add custom link text: Use Markdown syntax to display text instead of the URL.

Check out [this site](https://example.com) for more info.

Lists​

Create bulleted or numbered lists to organize information.

Bulleted list: Start each line with - or * followed by a space.

- First item
- Second item
- Third item

Numbered list: Start each line with a number followed by . and a space. You can use 1. for every item. Markdown automatically numbers them in sequence.

1. First item
1. Second item
1. Third item

Blockquotes​

Use blockquotes to reference or highlight text from another source.

Start with > followed by a space:

> This is a blockquote.

For a multi-line quote:

> This is a blockquote.
> This is part of the same blockquote.

The > is optional after the first line:

> This is a blockquote.
It can span multiple lines, this will be part of the blockquote.

This won't be part of the blockquote because of the empty line.

Inline code​

Use inline code to highlight short code snippets, commands, or technical terms within a sentence.

Wrap text in single backticks:

Use `console.log()` for debugging.

You can also highlight text and select the Code button (</>) in the formatting toolbar.

Spoilers​

Hide message content that others can reveal by clicking or tapping.

Wrap text in double pipes:

||This text is hidden until revealed.||

You can also highlight text and select the Spoiler button (eye icon) in the formatting toolbar.

Spoiler text appears as a gray block. Click it to reveal the hidden content.

Code blocks​

Use code blocks to share multi-line code snippets or preformatted text.

  1. Select the Code button (</>) in the formatting toolbar, or type three backticks (```) on a new line.
  2. Type or paste your code.
  3. Close the block with three backticks on a new line.

To specify a programming language for syntax highlighting, add the language name after the opening backticks:

```json
{ "key": "value" }
```

Supported languages for syntax highlighting​

Root supports syntax highlighting for the following languages. Use the Language name value after the opening backticks (for example, ```csharp).

LanguageLanguage name
AsciiDocasciidoc
Batch (Windows)bat
Cc
C++cpp
C#csharp
Clojureclojure
CoffeeScriptcoffeescript
CSScss
Dartdart
Diffdiff
Dockerfiledockerfile
F#fsharp
Git commit/rebasegit-commit, git-rebase
Gogo
Groovygroovy
Handlebarshandlebars
HLSLhlsl
HTMLhtml
INIini
Javajava
JavaScriptjavascript, js
JSONjson
Juliajulia
LaTeXlatex, tex
Lessless
Loglog
Lualua
Makefilemakefile
Markdownmarkdown, md
Objective-Cobjective-c
Pascalpascal
Perlperl
PHPphp
PowerShellpowershell, ps1
Pugpug
Pythonpython
Rr
Razorrazor
Rubyruby
Rustrust
SCSSscss
ShaderLabshaderlab
Shell/Bashshellscript, bash, sh
SQLsql
Swiftswift
TypeScripttypescript, ts
Typsttypst
Visual Basicvb
XMLxml
YAMLyaml
tip

Language names are case-insensitive. Both JSON and json work the same way.

Markdown reference​

FormatSyntaxResult
Heading 1# textHeading level 1
Heading 2## textHeading level 2
Heading 3### textHeading level 3
Heading 4#### textHeading level 4
Heading 5##### textHeading level 5
Heading 6###### textHeading level 6
Bold**text**bold text
Italic*text*italic text
Strikethrough~~text~~strikethrough
Spoiler||text||Hidden text
Inline code`code`inline code
Code block```code```Multi-line code
Code block with syntax highlighting```languageHighlighted code
Blockquote> textQuoted text
Bulleted list- item or * item• List item
Numbered list1. item1. List item
Link (auto)https://example.comClickable URL
Link (custom text)[text](url)Clickable link