Skip to content

fix(status): repaint the command-prompt over the status line - #9

Merged
jals1212 merged 1 commit into
mainfrom
fix/command-prompt-fill
Jul 1, 2026
Merged

jals1212 merged 1 commit into
mainfrom
fix/command-prompt-fill

Conversation

@jals1212

@jals1212 jals1212 commented Jul 1, 2026

Copy link
Copy Markdown
Owner

Summary

Fixes the command-prompt (rename-window, command mode :, confirm-before) visually mixing with the status line — the prompt drew over the custom status-format and the window list/modules bled through until it closed.

Root cause

tmux's message overlay fully replaces the status line only with fill (repaints the whole width) and no align (any alignment leaves the status visible on the uncovered side). themux set message-style/message-command-style with align=centre and no fill. With a transparent status bar (@themux_status_background none) the overlay also needs an opaque background.

Reproduced by running the target tmux inside a pane of another tmux and driving it with send-keys + capture-pane; tmux's own default message-command-style uses fill (no align), which is why native rename is clean.

Fix (themux.conf)

  • message-*-style: fill=$TMX_MESSAGE_BACKGROUND instead of align=centre.
  • status_background none: the message overlay uses an opaque @thm_mantle (status bar stays transparent).

Test plan

  • Reproduced and verified the fix (rename shows a clean (rename-window) …, transparent status intact)
  • 14/14 suites pass on tmux 3.6b
  • No test covers message-style — the harness can't drive an interactive command-prompt

Releases as 0.3.1 (patch) via Release-As in the commit.

The rename-window and command-mode (`:`) prompt drew over the custom
status-format, so the window list and modules bled through the prompt until it
closed. tmux's message overlay fully replaces the line only with `fill` (which
repaints the whole width) and without `align` (any alignment leaves the status
visible on the uncovered side); themux previously set `align=centre` and no
`fill`. When the status bar is transparent (@themux_status_background none) the
overlay also needs an opaque background, so it uses @thm_mantle there.

Release-As: 0.3.1
@jals1212
jals1212 merged commit 1c7dfca into main Jul 1, 2026
2 checks passed
@jals1212
jals1212 deleted the fix/command-prompt-fill branch July 1, 2026 16:50
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