Skip to content

0.2.0

Choose a tag to compare

@cverorg cverorg released this 06 Aug 12:03
· 2 commits to main since this release

Two months of work on the shared editor engine, most of it making the Markdown
right rather than adding anything new.

CJK

  • Full-width and non-breaking spaces no longer break structure. The engine
    matched structural whitespace with \s, and in JavaScript \s includes
    U+3000 (the ideographic space) and U+00A0 — so an ideographic space after a
    # or a -, which is ordinary in Chinese and Japanese typesetting, was read
    as a heading or a list item when it is neither. Structural whitespace is now
    a space or a tab, and nothing else.

Emphasis, by the specification's own algorithm

  • Emphasis nests. **bold with _italic_ inside** is now resolved with
    CommonMark's delimiter-run stack instead of a regular expression, including
    the rule-of-three and the intraword rule that keeps snake_case_names
    unstyled.
  • __bold__ and _italic_ are supported, with that same intraword rule.
  • Code spans and autolinks bind tighter than emphasis, so a * inside
    backticks stays a literal asterisk.
  • Backslash escapes no longer reach inside a code span`\d` keeps
    its backslash, as it must.

More of standard Markdown

  • Setext headings (=== and --- underlines).
  • A fenced code block is no longer parsed as Markdown, and neither is
    frontmatter.
  • Syntax highlighting inside a fence, and an honest decline when the language
    is one it cannot highlight.
  • CommonMark conformance is up from 57% to 63% of the official suite.

Rendered mode

  • Lists render as lists, task checkboxes are pressable, and the icons match
    Lucide, so they sit with the rest of Obsidian.