Skip to content

1.1.0 - 2026-05-18

Choose a tag to compare

@github-actions github-actions released this 17 May 21:36
9e03a6f

Release Notes

Note-vault syntax: inline highlight, WikiLinks, and Pandoc inline footnotes — Obsidian/Pandoc/MediaWiki-style docs export to PDF without leaking syntax as literal text. Plus two lexer/validation edge cases surfaced during the work.

  • Inline footnotes (text^[note body]) ([#80]) — Pandoc-style footnotes inline, no separate [^id]: definition. Lexer scans a balanced bracket pair (nesting and \-escapes respected), sub-lexes the body as inline content, and assigns a doc-unique internal label from a counter shared across nested sub-lexers. Inline and [^id] footnotes share one numbering sequence in first-reference order, the marker is the same superscript linking to #footnote-N, and bodies collect into the single tail Footnotes section without splitting their host paragraph. Unbalanced ^[ or empty ^[] degrades to literal text.
  • WikiLinks ([[Target]], [[Target|Label]]) ([#82]) — target slugifies to an in-document anchor and flows through the same resolution path as [text](#slug): match becomes a clickable internal jump; unmatched logs a warning and falls back to styled text so a partial export isn't broken. Unclosed [[ or escaped \[\[…\]\] renders literally.
  • Inline highlight (==text==) ([#79]) — new Highlight token painting a configurable background; nestable with other inline styles (==**bold**== is bold and highlighted). New [mark] config block with background_color (default #FFF59D). Dispatch runs after Setext detection so ===/--- lines still underline the paragraph above. Unterminated == degrades.
  • Lexer fix — unclosed [… spanning a line break no longer emits a .notdef box. parse_link's no-closing-bracket fallback used to flatten the multi-line body into one Text token with an embedded \n, which the renderer had no glyph for. Multi-line bodies now route through the pending-token path so each break survives as a real Token::Newline. Covered by an invariant regression test (no Token::Text ever carries a literal newline).
  • Validation fix — footnote syntax no longer trips the "unmatched square brackets" warning. The crude [ vs ] tally falsely flagged [^id] refs/defs, inline ^[…], and the intentional ^[ degradation; footnote brackets are now neutralized before the tally and a genuine [unclosed link still warns.
  • Docs — new syntax documented in docs/configuration.md; doc filenames lowercased (docs/cli.md, docs/configuration.md, docs/library.md) and all inbound references updated.

Resolves #79, #80, and #82.

Install markdown2pdf 1.1.0

Install prebuilt binaries via Homebrew

brew install theiskaa/tap/markdown2pdf

Download markdown2pdf 1.1.0

File Platform Checksum
markdown2pdf-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
markdown2pdf-x86_64-apple-darwin.tar.xz Intel macOS checksum
markdown2pdf-x86_64-pc-windows-msvc.zip x64 Windows checksum
markdown2pdf-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
markdown2pdf-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum