Skip to content

v0.2.9

Latest

Choose a tag to compare

@github-actions github-actions released this 06 Jul 00:03

Fixed

  • Task-list checkboxes rendered on their own line, above the item text. cmark-gfm emits GFM task-list checkboxes as <li><input type="checkbox"> with no wrapping element, but tasklist.js looked for a .task-list-item class that never existed, so the checkbox-inline CSS rule never matched. The script now selects li > input[type="checkbox"] directly, and all 7 bundled theme stylesheets get a matching rule to keep the checkbox and its text on the same line.
  • [TOC] links pointed at anchors that didn't exist. MarkdownRenderer computed a slug for each heading to build the table of contents, but never wrote a matching id attribute onto the heading itself — so every generated link 404'd within the page. Headings now get deduplicated ids (GitHub-style -1, -2 suffixes for repeated titles) that the TOC links actually target.

Changed

  • Prism → highlight.js for code syntax highlighting. Prism's line-numbers plugin needed a separate script and CSS file per theme and lagged on language coverage; highlight.js covers more languages through one init script. The highlighting theme picker in Settings is now a proper Picker populated from the bundled themes, instead of a free-text field.

Testing

  • Added WKWebView-driven end-to-end coverage (GFMFeatureCoverageTests, PreviewThemeCoverageTests, BundleResolutionTests) asserting against real rendered DOM — heading ids/TOC links, checkbox layout, and highlight.js tokenization — across all 7 bundled themes, light and dark.

Full Changelog: v0.2.8...v0.2.9