Skip to content

fix: restore default terminal mouse behavior#19

Merged
kunchenguid merged 1 commit into
mainfrom
fm/dpub-herdr-revert-r9
Jul 12, 2026
Merged

fix: restore default terminal mouse behavior#19
kunchenguid merged 1 commit into
mainfrom
fm/dpub-herdr-revert-r9

Conversation

@kunchenguid

Copy link
Copy Markdown
Owner

Intent

Revert two config lines in this PUBLIC dotfiles repo to restore parity with the private repo after the captain corrected the live behavior. This is a pure CONFIG revert - NOT a code fix and deliberately NOT a Herdr source patch or vendored fork.

Two files changed:

  1. home/.config/herdr/config.toml: removed the [ui] mouse_capture=false line and its explanatory comment, returning Herdr to its DEFAULT host mouse capture. Kept agent_panel_sort="spaces" (this stays intentionally), but rewrote its comment because the old comment justified the setting via mouse_capture=false (header click-toggle unreachable) which is no longer true; the new comment frames "spaces" as an explicit ordering choice over "priority". No [keys] changes.
  2. home/.config/wezterm/wezterm.lua: removed config.alternate_buffer_wheel_scroll_speed=0 and its preceding comment block. return config left intact, no double blank line.

Deliberate scope decisions (should NOT be flagged as mistakes/omissions): The Neovim mouse setting (home/.config/nvim/lua/vim_config.lua o.mouse='') is intentionally left EXACTLY as-is and untouched. No keybindings touched. No local patched Herdr fork was added/built/vendored - that upstream Herdr fix remains a FUTURE follow-up only, by design. Nothing restarted or rebuilt. The Escape-swallow durable fix is explicitly NOT solved by this change and remains an upstream Herdr follow-up.

Validation already done locally: Herdr TOML parses (single [ui] table, mouse_capture gone, agent_panel_sort still "spaces"); WezTerm Lua parses cleanly via wezterm and alternate_buffer_wheel_scroll_speed no longer appears.

What Changed

  • Restore Herdr’s default host mouse capture while retaining the explicit spaces agent panel ordering.
  • Remove WezTerm’s alternate-buffer wheel-scroll override so its default scrolling behavior applies again.

Risk Assessment

✅ Low: The narrowly scoped configuration revert exactly matches the authoritative intent, preserves the required settings and untouched files, and introduces no material correctness or compatibility risks.

Testing

Inspected the target diff, loaded the explicit WezTerm config with the installed binary, parsed Herdr TOML, verified Herdr’s shipped defaults and exact untouched scope, and captured focused evidence; all executable checks passed, while a live Herdr launch was intentionally not disturbed.

Evidence: Config revert evidence

Herdr’s shipped default has mouse capture enabled; the worktree config omits that override while retaining agent_panel_sort = "spaces". WezTerm loaded the worktree configuration successfully. Exact-scope assertions also passed.

Herdr shipped default relevant UI settings:
[ui]
# mouse_capture = true
# agent_panel_sort = "spaces"

Worktree Herdr relevant UI settings:
[ui]
agent_panel_sort = "spaces"

WezTerm explicit worktree config load:
wezterm --config-file <worktree>/home/.config/wezterm/wezterm.lua show-keys
loaded successfully; generated 274 effective key assignment lines

Forbidden removed overrides across tracked files:
none found

Herdr TOML parsed by Nix:
{ keys = { close_tab = "prefix+ampersand"; copy_mode = "prefix+y"; focus_pane_down = "prefix+j"; focus_pane_left = "prefix+h"; focus_pane_right = "prefix+l"; focus_pane_up = "prefix+k"; goto = "prefix+g"; new_tab = "prefix+c"; prefix = "ctrl+b"; split_horizontal = "prefix+double_quote"; split_vertical = "prefix+percent"; workspace_picker = "prefix+w"; }; ui = { agent_panel_sort = "spaces"; }; }

Exact-scope assertions:
only the two intended config files changed
Herdr [keys] section is byte-for-byte unchanged between commits
Neovim vim_config.lua is byte-for-byte unchanged between commits
WezTerm ends with one blank line before return config
Evidence: Parsed Herdr configuration

Nix-parsed Herdr configuration showing the complete unchanged keys table and UI containing only agent_panel_sort = &#34;spaces&#34;.

{ keys = { close_tab = "prefix+ampersand"; copy_mode = "prefix+y"; focus_pane_down = "prefix+j"; focus_pane_left = "prefix+h"; focus_pane_right = "prefix+l"; focus_pane_up = "prefix+k"; goto = "prefix+g"; new_tab = "prefix+c"; prefix = "ctrl+b"; split_horizontal = "prefix+double_quote"; split_vertical = "prefix+percent"; workspace_picker = "prefix+w"; }; ui = { agent_panel_sort = "spaces"; }; }

Pipeline

Updates from git push no-mistakes

✅ **intent** - passed

✅ No issues found.

✅ **Rebase** - passed

✅ No issues found.

✅ **Review** - passed

✅ No issues found.

✅ **Test** - passed

✅ No issues found.

  • Inspected git diff --unified=80 b9ea27acd31a936ac11cc4f27e391f7096eb478b..7f14462b595475c420699585a31b4c0aae655877 for both changed files.
  • Ran wezterm --config-file &#34;$PWD/home/.config/wezterm/wezterm.lua&#34; show-keys to load the worktree configuration through the installed application.
  • Ran herdr --default-config and compared its relevant [ui] defaults with the worktree configuration.
  • Parsed home/.config/herdr/config.toml using builtins.fromTOML through nix eval.
  • Ran repository-wide git grep assertions for removed mouse_capture = false and alternate_buffer_wheel_scroll_speed overrides.
  • Asserted only the two intended files changed, Herdr’s [keys] section was unchanged, Neovim’s vim_config.lua was unchanged, and WezTerm retained one blank line before return config.
  • Attempted HERDR_CONFIG_PATH=&#34;$PWD/home/.config/herdr/config.toml&#34; herdr --no-session; the existing live Herdr instance correctly prevented a second launch, so it was not restarted or reloaded.
  • Checked git status --short and confirmed testing left no worktree changes.
✅ **Document** - passed

✅ No issues found.

✅ **Lint** - passed

✅ No issues found.

✅ **Push** - passed

✅ No issues found.

…ll override

Revert to parity with the private repo after the captain corrected live
behavior. Config-only:

- herdr: remove ui.mouse_capture=false so Herdr's default host mouse
  capture applies again; keep agent_panel_sort="spaces" (now an explicit
  ordering choice, comment updated accordingly).
- wezterm: remove alternate_buffer_wheel_scroll_speed=0 and its comment.

The Escape-swallow durable fix remains an upstream Herdr follow-up; this
change does not resolve it. Neovim mouse setting and keybindings untouched.
@kunchenguid
kunchenguid merged commit 872094d into main Jul 12, 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