1
MF-2: Markdown features
Bernd Worsch edited this page 2025-09-21 20:37:23 +00:00

Markdown is a lightweight markup language that allows you to format text using a simple, human-readable syntax. The main features are divided into two categories: Basic Syntax (universally supported) and Extended Syntax (may vary between applications).

Basic Syntax

These features are part of the original Markdown specification and are supported by virtually all Markdown processors.

  • Headings: Use one to six number signs (#) at the beginning of a line. The number of hashtags corresponds to the heading level.
  • Paragraphs and Line Breaks: Paragraphs are created by one or more blank lines. A line break is created by adding two spaces at the end of a line.
  • Emphasis:
    • Bold: Enclose text in double asterisks (**bold**) or double underscores (__bold__).
    • Italic: Enclose text in single asterisks (*italic*) or single underscores (_italic_).
  • Lists:
    • Unordered Lists: Use asterisks (*), hyphens (-), or plus signs (+) followed by a space.
    • Ordered Lists: Use numbers followed by a period (1., 2., 3.) and a space.
  • Links: Use square brackets for the link text and parentheses for the URL, like so: [text](url).
  • Images: Similar to links, but with an exclamation mark at the beginning: ![alt text](url).
  • Blockquotes: Use a right angle bracket (>) at the beginning of a line to quote text.
  • Code:
    • Inline Code: Enclose code within single backticks ( code ).
    • Code Blocks: Indent a block of code by four spaces or use triple backticks on separate lines (fenced code blocks).

Extended Syntax

These features were added to Markdown by various communities and are not part of the original specification. They are widely used, particularly in platforms like GitHub Flavored Markdown (GFM).

  • Tables: Use hyphens (-) and vertical bars (|) to create columns and rows.
  • Task Lists: Create an unordered list and add [ ] for an unchecked box or [x] for a checked box.
  • Strikethrough: Enclose text in double tildes (~~strikethrough~~).
  • Fenced Code Blocks: Use triple backticks (```) to enclose a block of code, often with a language identifier for syntax highlighting.
  • Footnotes: Use a number in brackets with a caret ([^1]) for a footnote, then define it elsewhere in the document.