On this page
Text
Each section gives the syntax in one example, links to the full syntax, and says what Wymark does with it. Where it is on the toolbar and its shortcut are in the constructs table.
Headings
## A heading
Full syntax: headings on markdownlang.com.
#to######. The toolbar’s Paragraph style, or⌘1to⌘6(also⌥⌘1to⌥⌘6).⌘0makes a paragraph.- Every heading is a link target by GitHub’s rules. See heading links.
- Settings > Appearance > Hide heading markers hides the
#in the Formatted view.
Emphasis
**bold**, *italic*, ~~struck~~ and `code`
bold, italic, struck and code
Full syntax: emphasis and strikethrough on markdownlang.com.
⌘B,⌘I,⇧⌘X,⌘E, or the Text styles buttons.- With a selection, the key formats it. With none, the style is on for what you type next.
- Over a partly formatted selection, the toggle formats all of it. It removes only when everything selected already has the style.
- Formatting inside a link stays inside the link:
[**word** rest](url). ⌘Edoes nothing over a selection that half-covers a link. Inline code cannot cross a link’s edge.- Nothing inside a code span is read as markdown.
The text you see is never changed by formatting it.
Line breaks
A single newline
is a space on screen, as on GitHub.
A backslash ends a line\
and so does <br>.
Full syntax: paragraphs and line breaks on markdownlang.com.
| A line break | Written by |
|---|---|
\ at the end of a line |
⇧↩ in a paragraph |
<br> |
⇧↩ in a table cell |
<br> on a line of its own |
↩ twice in the Formatted view (an empty paragraph) |
| Two trailing spaces | Read as a break. Not kept when that paragraph is edited. |
- The file keeps your newlines inside a paragraph. A tool that only re-splits the lines of a paragraph has changed nothing, and the review shows nothing.
- A
<br>already in the file is written back as it was, in any spelling (<br>,<br/>,<br />). One with attributes is left as markup.
Escapes
\*not a list\*
Full syntax: escaping on markdownlang.com.
| View | A backslash |
|---|---|
| Source | Kept exactly as typed. |
| Formatted | A literal backslash. Text that looks like an inline construct or a heading is one. |
Use the Source view for literal delimiters. The one escape Wymark writes itself is a backslash when an edit would turn a paragraph into a list, heading or fence: see what Wymark adds to your file.
Math
$$
E = mc^2
$$
Full syntax: math on markdownlang.com.
$$ ... $$ on its own lines |
A display formula. Always rendered. Insert > Math block, or ⌥⌘B. |
$ ... $ inline |
Rendered only when Settings > Appearance > Inline math is on. Off by default. |
| Prices | Coffee costs $5 and tea costs $6 is prose: a formula needs a non-space after the opening $ and no digit after the closing one. |
\( ... \), \[ ... \] and math fences are not read as math.
Emoji
- Type
:and two letters (:ro) for a menu of emoji, in both views. - Picking one writes the emoji character itself to the file, not a shortcode.
- A shortcode already in a file, such as
:rocket:, is shown as text. GitHub draws it as the emoji. - Settings > Appearance > Emoji suggestions after sets how many letters open the menu.
# Text
Each section gives the syntax in one example, links to the full syntax, and says what Wymark does with it. Where it is on the toolbar and its shortcut are in the [constructs table](/docs/reference/markdown#constructs).
## Headings
```markdown
## A heading
```
Full syntax: [headings on markdownlang.com](https://www.markdownlang.com/basic/headings.html).
- `#` to `######`. The toolbar's Paragraph style, or `⌘1` to `⌘6` (also `⌥⌘1` to `⌥⌘6`). `⌘0` makes a paragraph.
- Every heading is a link target by GitHub's rules. See [heading links](/docs/reference/links-footnotes-pictures#heading-links).
- Settings > Appearance > Hide heading markers hides the `#` in the Formatted view.
## Emphasis
```markdown
**bold**, *italic*, ~~struck~~ and `code`
```
**bold**, *italic*, ~~struck~~ and `code`
Full syntax: [emphasis](https://www.markdownlang.com/basic/emphasis.html) and [strikethrough](https://www.markdownlang.com/extended/strikethrough.html) on markdownlang.com.
- `⌘B`, `⌘I`, `⇧⌘X`, `⌘E`, or the Text styles buttons.
- With a selection, the key formats it. With none, the style is on for what you type next.
- Over a partly formatted selection, the toggle formats all of it. It removes only when everything selected already has the style.
- Formatting inside a link stays inside the link: `[**word** rest](url)`.
- `⌘E` does nothing over a selection that half-covers a link. Inline code cannot cross a link's edge.
- Nothing inside a code span is read as markdown.
The <!--wymark: {"author":"Claude","time":"2026-10-09T20:40:00Z"}@@John: the draft of the Writing page asked whether to cut the paragraph on a space typed at the end of a bold phrase (it sits inside the `**` until you move on, then settles outside, because `**bold **` is not valid markdown; in Pure mode bold continues through spaces). That question was never answered and the paragraph is gone. Say if it should come back here.-->text you see is never changed by formatting it.<!--wymark-end-->
## Line breaks
```markdown
A single newline
is a space on screen, as on GitHub.
A backslash ends a line\
and so does <br>.
```
Full syntax: [paragraphs and line breaks on markdownlang.com](https://www.markdownlang.com/basic/paragraphs.html).
| A line break | Written by |
| --- | --- |
| `\` at the end of a line | `⇧↩` in a paragraph |
| `<br>` | `⇧↩` in a table cell |
| `<br>` on a line of its own | `↩` twice in the Formatted view (an empty paragraph) |
| Two trailing spaces | Read as a break. Not kept when that paragraph is edited. |
- The <!--wymark: {"author":"Claude","time":"2026-10-09T20:40:00Z"}@@John: the old Markdown page had a worked example here: a two-line paragraph that Wymark and GitHub show as one line, and Typora and Obsidian show as two by default. The draft asked whether to keep that comparison, and the question was never answered. It is the one thing a Typora or Obsidian user trips on in the first hour; one sentence naming them would do.-->file keeps your newlines inside a paragraph.<!--wymark-end--> A tool that only re-splits the lines of a paragraph has changed nothing, and the review shows nothing.
- A `<br>` already in the file is written back as it was, in any spelling (`<br>`, `<br/>`, `<br />`). One with attributes is left as markup.
## Escapes
```markdown
\*not a list\*
```
Full syntax: [escaping on markdownlang.com](https://www.markdownlang.com/basic/escaping.html).
| View | A backslash |
| --- | --- |
| **Source** | Kept exactly as typed. |
| **Formatted** | A literal backslash. Text that looks like an inline construct or a heading is one. |
Use the Source view for literal delimiters. The one escape Wymark writes itself is a backslash when an edit would turn a paragraph into a list, heading or fence: see [what Wymark adds to your file](/docs/reference/markdown#what-wymark-adds-to-your-file).
## Math
```markdown
$$
E = mc^2
$$
```
Full syntax: [math on markdownlang.com](https://www.markdownlang.com/advanced/math.html).
| | |
| --- | --- |
| `$$ ... $$` on its own lines | A display formula. Always rendered. Insert > Math block, or `⌥⌘B`. |
| `$ ... $` inline | Rendered only when Settings > Appearance > Inline math is on. Off by default. |
| Prices | `Coffee costs $5 and tea costs $6` is prose: a formula needs a non-space after the opening `$` and no digit after the closing one. |
`\( ... \)`, `\[ ... \]` and `math` fences are not read as math.
## Emoji
- Type `:` and two letters (`:ro`) for a menu of emoji, in both views.
- Picking one writes the emoji character itself to the file, not a shortcode.
- A shortcode already in a file, such as `:rocket:`, is shown as text. GitHub draws it as the emoji.
- Settings > Appearance > Emoji suggestions after sets how many letters open the menu.