fix(tui,coding-agent): handle tmux xterm extended keys and warn on tmux setup fixes #1872

This commit is contained in:
Mario Zechner 2026-03-07 23:01:08 +01:00
parent e3decbcdd6
commit 9a8bc61300
7 changed files with 214 additions and 61 deletions

View file

@ -8,13 +8,30 @@ Work out of the box.
## Ghostty
Add to your Ghostty config (`~/.config/ghostty/config`):
Add to your Ghostty config (`~/Library/Application Support/com.mitchellh.ghostty/config` on macOS, `~/.config/ghostty/config` on Linux):
```
keybind = alt+backspace=text:\x1b\x7f
```
Older Claude Code versions may have added this Ghostty mapping:
```
keybind = shift+enter=text:\n
```
That mapping sends a raw linefeed byte. Inside pi, that is indistinguishable from `Ctrl+J`, so tmux and pi no longer see a real `shift+enter` key event.
If Claude Code 2.x or newer is the only reason you added that mapping, you can remove it, unless you want to use Claude Code in tmux, where it still requires that Ghostty mapping.
If you want `Shift+Enter` to keep working in tmux via that remap, add `ctrl+j` to your pi `newLine` keybinding in `~/.pi/agent/keybindings.json`:
```json
{
"newLine": ["shift+enter", "ctrl+j"]
}
```
## WezTerm
Create `~/.wezterm.lua`: