Markdown syntax

Context Raven reads and writes standard Markdown plus a small set of extensions, and never rewrites what you didn't touch.

What's understood

  • GitHub Flavored Markdown as the base: headings, emphasis, lists, blockquotes, code spans and blocks, links, images.
  • Tables, including column alignment. See Tables.
  • Task lists — - [ ] and - [x].
  • Footnotes — [^label] with its [^label]: definition — see Diagrams, math and footnotes.
  • Wikilinks — [[target]], or [[target|display text]] for a different display text. target resolves against every tracked folder, not just the one the link lives in — if the same name exists in more than one folder, the note in the SAME folder as the link wins. Add a heading to jump straight to it: [[target#Heading]] (or [[target#Heading|display text]]) opens the note scrolled to that heading; an unmatched heading just opens the note at the top.
  • Math — inline $…$, display $$…$$, \(…\) and \[…\], or a fenced ```math block — see Diagrams, math and footnotes.
  • Mermaid diagrams in a fenced ```mermaid block.
  • HTML comments (<!-- … -->).
  • Raw HTML, including tags written with HTML entities.
  • Reference-style links — [text][id], with [id]: https://… defined elsewhere in the document.
  • YAML frontmatter, between --- lines at the top of the file. See Frontmatter.

Preserved byte for byte

Saving rewrites only the lines you actually changed. Reference-link definitions, raw HTML blocks, frontmatter, blank lines, and the exact list markers you used all round-trip unchanged, so a document you didn't mean to touch never shows up as a diff in Git or another editor.

HTML comments

An HTML comment shows as a small, non-editable chip in the editor rather than raw text — you can't type inside it, and it's invisible to anyone reading the rendered document.

Raw HTML

Raw HTML tags, including ones written with HTML entities, pass through as you wrote them. Context Raven doesn't sanitize or reformat them, so a hand-written HTML block keeps its exact structure.

Not supported

Definition lists (Term on one line, : Definition on the next) aren't recognized. Writing that syntax leaves it as plain text rather than rendering a definition list.

Having trouble loading?

The app seems stuck. This can happen after an update. Clearing the cache should fix it.