Headings
Headings are created by prefixing text with the hash symbol (#). The number of hashes corresponds to the heading level, supporting up to six levels.
Alternative Syntax
Underlining text with equals signs (===) creates an H1, while hyphens (---) create an H2. Note that some editors like Typora may not support this alternative well.
Best Practices
Always include a space between the hash and the heading text to ensure compatibility across different Markdown parsers.
Paragraphs
Separate paragraphs using blank lines. Avoid indenting paragraphs with spaces or tabs, as this can lead to unexpected rendering issues.
Line Breaks
To force a line break within a paragraph, append two or more spaces at the end of a line before pressing Enter. In editors like Typora, simply pressing Enter is often sufficient to produce a line break.
Emphasis
Emphasize text using bold or italic formatting.
Bold
Wrap text with double asterisks (**) or double underscores (__). For mid-word emphasis, asterisks are recommended for broader compatibility.
Italic
Wrap text with single asterisks (*) or single underscores (_). Similar to bold, use underscores carefully within words.
Bold and Italic
Combine both using triple asterisks (***) or triple underscores (___) around the target text.
Blockquotes
Create a blockquote by prefixing a paragraph with a greater-than sign (>).
Multiple Paragraphs
Add a > on the blank line between paragraphs. Typora users can simply press Enter to continue the blockquote.
Nested Blockquotes
Use double greater-than signs (>>) to nest quotes. In Typora, pressing Enter twice exits the current quote level.
Blockquotes with Other Elements
Blockquotes can contain other Markdown elements like bold or italic text.
Lists
Organize items into ordered or unordered lists.
Ordered Lists
Start each line with a number followed by a period and a space (e.g., 1. ). Avoid using parentheses like 1). The actual numbers don't need to be sequential, but starting with 1 is standard. Pressing Enter continues the sequence in Typora; press Enter twice to end.
Unordered Lists
Prefix items with hyphens (-), asterisks (*), or plus signs (+), followed by a space. Indent items to create nested lists. Press Enter twice or thrice to exit the list in Typora.
Adding Other Elements to Lists
To include a separate block element (like a blockquote) within a list without breaking the list continuity, indent the element by four spaces or one tab.
Code
Wrap text with backticks (`) to format it as inline code.
Escaping Backticks
Use double backticks (``) if the code itself contains a backtick.
Code Blocks
Indent each line with four spaces or one tab. Alternatively, wrap the block with triple backticks (```) or triple tildes (~~~). Specify the language immediately after the opening fences for syntax highlighting.
def greet_user():
print("Welcome aboard!")
const calculateSum = (a, b) => a + b;
Horizontal Rules
Insert a horizontal rule by placing three or more asterisks (***), hyphens (---), or underscores (___) on a single line. Add blank lines before and after for compatibility. Note that rendering thickness might vary in editors like Typora.
Links
Links use the syntax [link text](URL "Optional Title").
Adding Titles
While the specification allows titles, some Markdown implementations like older Typora versions might not parse them correctly.
URLs and Email Addresses
Wrap URLs or email addresses in angle brackets (< >) to render them as clickable links.
Formatted Links
Apply emphasis to links by surrounding the brackets with asterisks, or format the link text as code using backticks inside the brackets.
Images
Embed images using .
Linking Images
Make an image clickable by wrapping the image syntax in square brackets, followed by the link URL in parentheses. Note that some Typora versions might have issues with this syntax.
Tables
Construct tables using hyphens (---) for column headers and pipes (|) to separate columns.
Formatting Text in Tables
Text within tables can include links, inline code, and emphasis. However, block-level elements like headings, blockquotes, lists, images, or HTML tags are not supported.
Footnotes
Define footnotes using [^identifier] within the text. Explain the footnote elsewhere using [^identifier]: explanation text. Identifiers can be numbers or words but must not contain spaces or tabs.
Strikethrough
Apply strikethrough formatting by wrapping text with double tildes (~~).
Task Lists
Create task lists using hyphens, square brackets, and a space (- [ ]). Mark tasks as complete by placing an x inside the brackets (- [x]). Note that some Markdown editors might not fully support this feature.
Typora Keyboard Shortcuts
| Action | Shortcut |
|---|---|
| Bold | Ctrl+B |
| Underline | Ctrl+U |
| Italic | Ctrl+I |
| Strikethrough | Alt+Shift+5 |
| Insert Image | Ctrl+Shift+I |
| Insert Table | Ctrl+T |
| Ordered List | Ctrl+Shift+[ |
| Unordered List | Ctrl+Shift+] |
| Insert Link | Ctrl+K |
| Inline Code | Ctrl+Shift+` |
| Code Block | Ctrl+Shift+K |
| Math Block | Ctrl+Shift+M |
| Blockquote | Ctrl+Shift+Q |
| Heading Levels 1-6 | Ctrl+1 to Ctrl+6 |
| Paragraph | Ctrl+0 |
| Find | Ctrl+F / F3 |
| Replace | Ctrl+H |
| Select All | Ctrl+A |
| Select Current Line | Ctrl+L |
| Select Formatted Text | Ctrl+E |
| Undo | Ctrl+Z |
| Redo | Ctrl+Y |
| Select Current Word | Ctrl+D |
| Delete Current Word | Ctrl+Shift+D |
| Jump to Document Start | Ctrl+Home |
| Jump to Document End | Ctrl+End |
| New File | Ctrl+N |
| Quick Open | Ctrl+P |
| Save | Ctrl+S |
| Save As | Ctrl+Shift+S |
| Close Window | Ctrl+W |
| Outline View | Ctrl+Shift+1 |
| File Tree View | Ctrl+Shift+2 |
| Zoom In/Out | Ctrl+Shift+ / - |
| Reset Zoom | Ctrl+Shift+9 |