Highlights
Since v0.2.0, ymprint gains multi-page layouts, richer text control, saner list syntax, and a CLI that no longer crashes on authoring mistakes.
New features
- Multiple named page templates (#9) — define several page templates (e.g.
first,body) with their own margins and backgrounds, and switch between them mid-document with_pagebreak/_nextpagetemplate. - Scoped, switchable text styles (#7) — swap named text styles within a frame via
_textstyle, plus per-stylealignandunderlineattributes. - Explicit list syntax (#6) —
_ul/_olblocks for unordered/ordered lists; bare YAML lists now render as sequential paragraphs (fixing the overloaded-list ambiguity). - Background paths relative to source or config (#5) — control how background PDF paths are resolved.
CLI: graceful error handling (#10)
- YAML syntax errors and
_pyblock exceptions are caught and shown as compact, actionable panels that make clear the problem is in your document, not an ymprint bug. - Python-block tracebacks are truncated to their top + bottom frames and mapped back to the author's block source, highlighting the exact failing line.
SyntaxErrors get special handling, including a hint for the commonsource:vssource: |block-scalar mistake.livemode is redesigned as a two-part panel (watch list + throbber over a status area) with a state-coloured border; a failed reload shows the error in place instead of killing the session.
Packaging
- Build backend switched to flit with dynamic
version/description.
Full changelog: v0.2.0...v0.3.0