Repository navigation
Conversation
zn draws LaTeX math with pdftex and pdftocairo from the user's own computer and ships neither, but nothing said so where it mattered. With the tools missing, every LaTeX block quietly showed its source: the preview gave no reason, and zn doctor named the tools without saying how to get them. The README covered macOS only. Now the first LaTeX block of a note carries a notice that names the missing tools, says zn does not include them and points at zn doctor; later blocks of the note stay quiet, so a page of formulas is not a page of warnings. Switching to latex in the settings without the tools raises the same message as a toast. zn doctor's failing check says zn does not include the tools and prints the install commands for the system it runs on (macOS, Debian and Ubuntu, Fedora, Arch, Windows, or a generic line), also as a hint list in --json. The README, the in-app help, the starter config.toml and the Homebrew caveats say the same, with copy-paste commands for each platform. The Debian/Ubuntu, Fedora and Arch commands were run in clean Ubuntu 24.04, Fedora 42 and Arch containers, where the resulting pdftex and pdftocairo rendered zn's default preamble. The Windows line (MiKTeX and scoop's poppler) is not tested here.
Before deciding whether zn could draw LaTeX math without the user installing TeX, a 124-case corpus ran through zn 0.12.0's pdftex path (the baseline, 120 render), d2lang/mathjax-go and the desktop's node-tikzjax engine. Neither embedded option matches the TeX path without real work: mathjax-go draws 68 of 86 math cases and drops equation numbers silently; tikzjax draws 75 of 86 math and 33 of 34 TikZ, lacks mhchem and crashes on a missing bold-math font. The decision is to keep using the user's own TeX. This folder keeps the corpus, the harness to rerun all three engines and the per-case results, with the numbers and the route to take if the question comes back. The Go harness files end in .txt so they stay out of zn's module.
MichaelC001
pushed a commit
to MichaelC001/zennotes
that referenced
this pull request
Oct 28, 2026
The bundled CLI is the floor a desktop build guarantees, and 0.12.2 is the newest release (ZenNotes/tui#20). It brings LaTeX to the terminal preview: with [terminal] math = "latex", zn draws display math and TikZ through the TeX installed on the user's computer (ZenNotes/tui#17), says plainly that zn does not include TeX and prints the install commands in zn doctor, and fits preview pictures to the pane as it grows or shrinks. The pin is the release's terminal-release.json copied byte for byte after it verified against packaging/release-signing/zn-release-1.pub in ZenNotes/tui (source commit 3f1f638a, integration protocol 1, all four archives it names matching checksums.txt). Staged through `npm run terminal:stage`; the native darwin-arm64 binary reports zn v0.12.2. The in-app manual's CLI card says 0.12.2 and what 0.12.0 to 0.12.2 change.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
zn draws LaTeX math with
pdftexandpdftocairofrom the user's own computer and ships neither. Until now, with them missing, LaTeX blocks quietly showed their source, andzn doctornamed the tools without saying how to get them.zn doctor. Later blocks of the note stay quiet.--jsoncarries them ashint.config.tomland the Homebrew caveats.Verified:
go vet ./...,go test ./...(new tests for the hints per system, doctor text and JSON, the once-per-note notice and the settings toast), Homebrew formula tests andbrew style, and the binary driven with no TeX on PATH (notice once above the first block; doctor prints the macOS steps). The Debian/Ubuntu, Fedora and Arch commands were run in clean Ubuntu 24.04, Fedora 42 and Arch containers and rendered zn's default preamble. The Windows line is not tested here.