Commit Graph

4 Commits

Author SHA1 Message Date
Michael Grant
cf7aad1ce8 Fix Kitty key encoding: legacy fallback, F3, case, send-keys drop. 2026-09-29 07:40:01 +01:00
Michael Grant
25caebc173 Cleanup and rebase on master. 2026-09-29 07:40:01 +01:00
Michael Grant
d85329e5f0 Detection, done like sync:
- ESC[?u goes to every VT100-like terminal at attach, whatever the
  options.
- A reply turns on a new kittykeys terminal feature. Users can force
  it on or off with terminal-features kittykeys, including kittykeys@
  to turn it off.
- Changing extended-keys now takes effect immediately for attached
  clients (options.c).

Use, per client, when extended-keys is on: Kitty for clients that have
kittykeys, modifyOtherKeys for clients with extkeys, VT10x otherwise.

Pane side:

- Applications can request either protocol; Kitty wins if one asks for
  both.
- Each application gets what it asked for, whichever client typed the
  key.
- ESC[?u is answered truthfully.
- The per-client gate is gone. window.c and popup.c are simply
  master's versions again.

extended-keys always is back to its master meaning, forcing
modifyOtherKeys mode 1 only. Forcing Kitty on every program would have
sent bash ESC[97;5u for Ctrl-A.

extended-keys-format kitty is still accepted, but now behaves the same
as csi-u.
2026-09-29 07:40:01 +01:00
Michael Grant
5e5cc3e5bc Add Kitty keyboard protocol support 2026-09-29 07:40:01 +01:00