Skip to content

Better rendering in tmux and ghostty#2146

Merged
dgageot merged 3 commits intodocker:mainfrom
dgageot:better-tmux
Mar 17, 2026
Merged

Better rendering in tmux and ghostty#2146
dgageot merged 3 commits intodocker:mainfrom
dgageot:better-tmux

Conversation

@dgageot
Copy link
Member

@dgageot dgageot commented Mar 17, 2026

This requires a well configured tmux with:

export TERM=xterm-256color
export LANG=en_US.UTF-8
export COLORTERM=truecolor

dgageot added 3 commits March 17, 2026 13:14
Signed-off-by: David Gageot <david.gageot@docker.com>
Signed-off-by: David Gageot <david.gageot@docker.com>
Signed-off-by: David Gageot <david.gageot@docker.com>
@dgageot dgageot requested a review from a team as a code owner March 17, 2026 12:44
Copy link

@docker-agent docker-agent bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review Summary

Assessment: 🟡 NEEDS ATTENTION

This PR simplifies terminal rendering by removing multiplexer detection logic (tmux/screen) and associated workarounds. The changes remove FPS throttling and ASCII spinner fallbacks that were previously used for multiplexers.

Findings

1 NOTABLE issue found:

  • MEDIUM: Scrollbar thumb and track now use identical characters, potentially making the thumb invisible in certain terminal themes

Analysis

The PR removes:

  • inMultiplexer() detection functions from both cmd/root/new.go and pkg/tui/components/spinner/spinner.go
  • FPS throttling (30 FPS cap) for multiplexers
  • ASCII fallback for spinners (now always uses Braille characters)

The scrollbar change from to for the thumb character creates a visual distinction issue, as both thumb and track now use the same glyph and rely solely on color/style differences.

Recommendation

Review the scrollbar thumb character change to ensure adequate visual distinction across different terminal themes and configurations.

width: Width,
trackChar: "⎪",
thumbChar: "",
thumbChar: "",
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Scrollbar thumb and track use identical character

The scrollbar thumb and track now both use the same character () after changing from thumbChar: "┃" to thumbChar: "⎪".

The thumb and track are now only distinguished by their styles:

  • Track: BorderSecondary foreground color
  • Thumb: Info foreground color with BackgroundAlt background and bold styling

Issue: If these colors are similar in a particular theme, or if the terminal doesn't render the bold/background styling clearly, the thumb will be difficult or impossible to see against the track since they use the same glyph.

The original (box drawings heavy vertical, U+2503) was a visually heavier/bolder character that provided clear visual distinction even with similar colors. The new (right vertical box line, U+23AA) is the same as the track character, reducing visual distinction to style-only.

Recommendation: Consider using a visually distinct character for the thumb (like the original or another heavier glyph) to ensure the scrollbar remains usable across different terminal themes and configurations.

@dgageot dgageot merged commit 2efd1bb into docker:main Mar 17, 2026
8 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.

2 participants