docs(coding-agent): move terminal setup to docs/terminal-setup.md

This commit is contained in:
Mario Zechner 2026-01-25 21:34:07 +01:00
parent d7410fafc0
commit e112d2a917
2 changed files with 66 additions and 47 deletions

View file

@ -0,0 +1,65 @@
# Terminal Setup
Pi uses the [Kitty keyboard protocol](https://sw.kovidgoyal.net/kitty/keyboard-protocol/) for reliable modifier key detection. Most modern terminals support this protocol, but some require configuration.
## Kitty, iTerm2
Work out of the box.
## Ghostty
Add to your Ghostty config (`~/.config/ghostty/config`):
```
keybind = alt+backspace=text:\x1b\x7f
keybind = shift+enter=text:\n
```
## WezTerm
Create `~/.wezterm.lua`:
```lua
local wezterm = require 'wezterm'
local config = wezterm.config_builder()
config.enable_kitty_keyboard = true
return config
```
## VS Code (Integrated Terminal)
Add to `keybindings.json` to enable `Shift+Enter` for multi-line input:
```json
{
"key": "shift+enter",
"command": "workbench.action.terminal.sendSequence",
"args": { "text": "\u001b[13;2u" },
"when": "terminalFocus"
}
```
## Windows Terminal
Add to `settings.json` (Ctrl+Shift+, or Settings → Open JSON file):
```json
{
"actions": [
{
"command": { "action": "sendInput", "input": "\u001b[13;2u" },
"keys": "shift+enter"
}
]
}
```
If you already have an `actions` array, add the object to it.
## IntelliJ IDEA (Integrated Terminal)
The built-in terminal has limited escape sequence support. Shift+Enter cannot be distinguished from Enter in IntelliJ's terminal.
If you want the hardware cursor visible, set `PI_HARDWARE_CURSOR=1` before running pi (disabled by default for compatibility).
Consider using a dedicated terminal emulator for the best experience.