Skip to content

feat: tui ux pass for sizing, theme, and triage - #21

Merged
flexdinesh merged 1 commit into
mainfrom
tui-ux-pass
Oct 15, 2026
Merged

flexdinesh merged 1 commit into
mainfrom
tui-ux-pass

Conversation

@flexdinesh

Copy link
Copy Markdown
Owner
  • Wrapping (internal/tui): prose wraps at words and paths at /; the compact view pins the footer to the last line and drops whole summary segments in priority order. Fixes mid-word breaks in delete prompts and lost behind/stale counts.
  • Theme (theme.go, background.go): CompleteAdaptiveColor tokens with hand-picked ANSI256/ANSI16 values, so no two colors collapse into one and selected-row text is at least 4.5:1 in 256-color mode. ANSI16 selection drops its background; no-color mode adds a ‹ cap. Background detection inside tmux/screen so light panes get the light palette.
  • Narrow layouts: a detail strip below 104 cols shows ~path · reason · upstream. The second summary line is only reserved when the summary would wrap.
  • Reasons (internal/inspect): Result.Reason classifies fetch, status and sync failures into short text, shown in the side panel, strip and compact view without --verbose.
  • Summary (internal/ui): Title counts ahead, plus synced and skipped under --sync, in a fixed priority order. Header colors match row colors; untracked files are no longer red.
  • Identity (internal/discover): linked worktrees take their main checkout's name, ignore :: remote-helper URLs, and sort after their main checkout. Repositories rows tag them as repo · worktree.
  • Input/copy: a burst of keys (jjj) replays in order and never triggers delete or confirm keys; singular/plural fixed; · is the only separator; loading text matches the mode; the delete notice names the worktree; X is hidden from the footer and listed in --help.
  • DESIGN.md updated to match, including the delete behavior it described incorrectly.
  • Validation: mise run check passes; checked visually in tmux at 120x35 down to 20x6, in 16-color mode, with NO_COLOR, and on a light tmux pane.

- Word-wrap prose and paths, pin compact footer, keep priority counts
- Explicit ANSI256/ANSI16 palette fallbacks, no-color selection cap, tmux background detection
- Detail strip below 104 cols, short stale/failed reasons, ahead/synced/skipped tallies
- Tag linked worktrees in Repositories, fix ext:: and worktree display names
- Handle key bursts, plurals, separators, hide X from footer
@flexdinesh
flexdinesh marked this pull request as ready for review October 15, 2026 12:17
@flexdinesh
flexdinesh merged commit 56dc1f8 into main Oct 15, 2026
1 check 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