Skip to content

ZenNotes

v2.13.3 Feature

This release adds 1 notable feature for engineering teams evaluating rollout.

Published 11d Productivity & Wikis
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

electron local-first markdown mcp notes vim

Summary

AI summary

Fixed Vim navigation into rendered math blocks, closing fence handling in reading view, click accuracy for scrolled math widgets, and heading marker consistency.

Changes in this release

Feature Low

Launching with `ZEN_PERF=1` prints a boot timeline for performance diagnostics.

Launching with `ZEN_PERF=1` prints a boot timeline for performance diagnostics.

Source: llm_adapter@2026-07-15

Confidence: high

Bugfix Medium

Vim `j`/`k` (and arrow keys) now step into rendered math blocks correctly.

Vim `j`/`k` (and arrow keys) now step into rendered math blocks correctly.

Source: llm_adapter@2026-07-15

Confidence: high

Bugfix Medium

Closing `$$` at end of a line works in reading view.

Closing `$$` at end of a line works in reading view.

Source: llm_adapter@2026-07-15

Confidence: high

Bugfix Medium

Mouse clicks land exactly where clicked regardless of scroll depth.

Mouse clicks land exactly where clicked regardless of scroll depth.

Source: llm_adapter@2026-07-15

Confidence: high

Bugfix Medium

Heading `##` markers now reveal with cursor anywhere in the heading.

Heading `##` markers now reveal with cursor anywhere in the heading.

Source: llm_adapter@2026-07-15

Confidence: high

Full changelog

ZenNotes 2.13.3: editor polish (block-math navigation, reading-view parity, click accuracy, consistent heading markers)

A patch release: three fixes to the live math rendering that shipped in 2.13.2 (all found within a day of release) plus a heading-marker consistency fix. Installers for macOS, Windows, and Linux (x64 + arm64) are attached below.

🐛 Fixes

  • Vim j/k (and the arrow keys) now step into rendered math blocks. A rendered $$…$$ block is a single widget, and vertical cursor motion used to skip clean over it: only a mouse click could reveal the source, and on notes with several blocks the reveal-induced height changes compounded into multi-line jumps, freezes, and "double skips". Moving onto a block now reveals it and walks the raw LaTeX line by line, in both directions, then re-renders it when you move on. Counts (3j), gj/gk, operators, and movement over other widgets (tables, embeds) are unchanged.

  • A closing $$ at the end of a content line now works in the reading view. The editor accepted a block ending in content$$ (and a whole $$x^2$$ block on one line), but the reading view's parser only closes a block on a fence-only line, so those notes rendered in Edit and broke in Preview, swallowing everything after the block. The reading view now parses exactly the shapes the editor renders; notes already using canonical $$-on-its-own-line fences are untouched. (#399, reported by @ShowhyT)

  • Mouse clicks land where you click, no matter how far you scroll. The math block widget carried vertical margins the editor cannot measure, so every rendered block above the pointer added a few unaccounted pixels: the deeper you scrolled in a math-heavy note, the further below your click the cursor landed. The widget now uses measurable padding, so click position and cursor position agree at any scroll depth.

  • Heading ## markers now reveal with the cursor anywhere in the heading. Headings were the one live-preview element that behaved differently: the marks only appeared when the cursor sat left of the first letter, while list bullets, quote marks, tasks, and inline formatting all reveal anywhere on the active line. The active heading line now reads as source like everything else, and the marks still hide when the cursor is elsewhere. (reported by Julie on Discord)

Also in this release: launching with ZEN_PERF=1 now prints a boot timeline (main.boot.module-loaded, main.boot.app-ready, and absolute uptimeMs on the window marks), so slow-startup reports, like a Linux AppImage taking a minute to first paint, can be pinned to the guilty phase from one terminal run.


Keyboard-first and local-first, as always.

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track ZenNotes

Get notified when new releases ship.

Sign up free

About ZenNotes

Keyboard-first Markdown note-taking

All releases →

Related context

Related tools

Beta — feedback welcome: [email protected]