Skip to content

Match the terminal's glyph weight in diffs - #295

Merged
jiweiyuan merged 1 commit into
mainfrom
fix/diff-glyph-smoothing
Aug 12, 2026
Merged

Match the terminal's glyph weight in diffs#295
jiweiyuan merged 1 commit into
mainfrom
fix/diff-glyph-smoothing

Conversation

@jiweiyuan

Copy link
Copy Markdown
Collaborator

The same font at the same size read heavier in a diff than in the terminal one pane over — measured at 13.6% more ink with Berkeley Mono 16. AppKit smooths every glyph it draws; Ghostty rasterizes the terminal's own and dilates them only when font-thicken is on. Two different answers to the same question, on two surfaces sitting side by side.

DiffWashLayoutManager now follows that same switch: with Thicken glyphs off it turns font smoothing off before drawing, so one setting governs both surfaces. resolvedTerminalFont also drops its 11pt floor, so a code surface keeps shrinking with the terminal it is meant to match.

Touches the working-tree diff, the PR files diff, and the shared chrome theme.

Release Notes:

Diffs now render text at the same weight as the terminal, and follow the Thicken Glyphs setting.

AppKit smooths every glyph it draws, while Ghostty rasterizes the terminal's
own and only dilates them when `font-thicken` is on — so the same face at the
same size read heavier in a diff than in the terminal beside it (measured:
13.6% more ink at Berkeley Mono 16). The diff's layout manager now follows that
switch, and `resolvedTerminalFont` drops its 11pt floor so a code surface keeps
shrinking with the terminal it is supposed to match.
@vercel

vercel Bot commented Aug 12, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
landing Ready Ready Preview Aug 12, 2026 10:43pm

Request Review

@jiweiyuan
jiweiyuan merged commit 2a8faef into main Aug 12, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant