Rendering has only ever been checked in one terminal. progress.md lists this as unverified:
"Render check across kitty, alacritty, wezterm, GNOME Terminal and tmux — needs those terminals".
The parts most likely to differ are the ones that were hardest to get right, which is the
uncomfortable combination:
- The braille area chart in the Graph view. Braille cell rendering varies more between fonts
than almost anything else.
- Double-width glyph handling. Text is measured in cells via
Utf8ToGlyphs, with an empty entry
standing in for the second column of a wide glyph. If a terminal disagrees with that model about
any particular glyph, the right-hand border tears — the exact failure this design exists to
prevent.
- Colour depth detection.
DetectColorDepth reads TERM/COLORTERM, recognises WT_SESSION,
and treats a -direct terminfo entry as 24-bit. Each of these terminals advertises itself
differently, and guessing low is not free: two palettes that differ in 24-bit can land on the same
256 index, which makes a theme switch look like a broken key.
- tmux specifically, which sits between gittop and the real terminal and rewrites both the
colour capability and the mouse protocol. It deserves its own pass rather than being one entry in
the list.
- Mouse reporting. SGR sequences are used for clicks and the wheel; tmux and some terminals need
configuration before those arrive at all.
Proposed
Run the same short script in each: switch every tab, open the graph, open a diff with a
double-width filename, toggle themes with t, click a tab, scroll with the wheel. Record what
gittop --version and the settings page report for detected colour depth in each one, since a wrong
detection is the failure most likely to go unnoticed.
The nerd glyph set is separately unverified in appearance — its mechanism is tested (the right
strings reach the screen and widths are computed from them) but there was no patched font available
to render it with. A terminal check is the natural moment to close that too.
Rendering has only ever been checked in one terminal.
progress.mdlists this as unverified:"Render check across kitty, alacritty, wezterm, GNOME Terminal and tmux — needs those terminals".
The parts most likely to differ are the ones that were hardest to get right, which is the
uncomfortable combination:
than almost anything else.
Utf8ToGlyphs, with an empty entrystanding in for the second column of a wide glyph. If a terminal disagrees with that model about
any particular glyph, the right-hand border tears — the exact failure this design exists to
prevent.
DetectColorDepthreadsTERM/COLORTERM, recognisesWT_SESSION,and treats a
-directterminfo entry as 24-bit. Each of these terminals advertises itselfdifferently, and guessing low is not free: two palettes that differ in 24-bit can land on the same
256 index, which makes a theme switch look like a broken key.
colour capability and the mouse protocol. It deserves its own pass rather than being one entry in
the list.
configuration before those arrive at all.
Proposed
Run the same short script in each: switch every tab, open the graph, open a diff with a
double-width filename, toggle themes with
t, click a tab, scroll with the wheel. Record whatgittop --versionand the settings page report for detected colour depth in each one, since a wrongdetection is the failure most likely to go unnoticed.
The nerd glyph set is separately unverified in appearance — its mechanism is tested (the right
strings reach the screen and widths are computed from them) but there was no patched font available
to render it with. A terminal check is the natural moment to close that too.