Skip to content

Vinculum 1.4.1

Choose a tag to compare

@clintecker clintecker released this 16 Jul 01:22
· 102 commits to main since this release

Native LaTeX math typesetting for Apple platforms and Linux — real glyph shapes and TeX metrics read straight from the font's OpenType MATH table, following Knuth's Appendix G. No MathJax, no KaTeX, no WebView.

What's in 1.4.1

The Silica dependency is now opt-in — default consumers are Silica-free. 1.4.0 declared the Silica/Cairo dependency unconditionally, so every consumer (even Apple-only) was forced to resolve the whole Silica/Cairo/PureSwift graph. Fixed with a package trait (LinuxRaster, default OFF): the Silica dependency and its product links are gated behind it, so a default resolve fetches zero external dependencies — verified on both macOS and Linux. Opt in for the native Linux raster backend with traits: ["LinuxRaster"] (or --traits LinuxRaster). No render logic changed.

Built on the 1.3.0 → 1.4.0 Linux rendering line: VinculumRender draws a MathScene to a PNG on Linux via Silica/Cairo + FreeType (FreeTypeFont loads bundled .otf bytes, provides advances, real per-glyph ink extents, and FT_Outline_Decompose outlines). All five bundled MATH fonts render; a 20-equation corpus renders near-identically on both backends.

Install

.package(url: "https://github.com/2389-research/Vinculum.git", from: "1.4.1")

Highlights across the 1.x line

  • Font-truth layout — all 56 MathConstants parsed per font, per-glyph italic correction, cut-in kerning, the full display/text/script/scriptscript style lattice, and the complete TeXbook p. 170 spacing table.
  • ssty optical scripts, delimiter size-variant ladders → glyph assembly, the font's real √ glyph.
  • Five bundled fonts (Latin Modern, TeX Gyre Termes & Pagella, STIX Two, Fira Math) + any OpenType MATH font via MathFont(url:).
  • Spoken math (ClearSpeak-style), MathNode.toLaTeX() round-trip, source-ranged diagnostics, opt-in hit-testing.
  • Apple (CoreText) + Linux (Silica/Cairo/FreeType); self-contained SVG anywhere. The layout engine is platform-free.

Full detail: CHANGELOG.md · Docs & live gallery