tmux Einrichtung
Pi funktioniert innerhalb von tmux, aber tmux entfernt standardmäßig Modifikatorinformationen von bestimmten Tasten. Ohne Konfiguration sind Shift+Enter und Ctrl+Enter normalerweise nicht vom einfachen Enter zu unterscheiden.
Empfohlene Konfiguration
Zu ~/.tmux.conf hinzufügen:
set -g extended-keys on
set -g extended-keys-format csi-uAnschließend tmux vollständig neu starten:
tmux kill-server
tmuxPi fordert automatisch eine erweiterte Tastenberichterstattung an, wenn das Kitty-Tastaturprotokoll nicht verfügbar ist. Mit extended-keys-format csi-u leitet tmux geänderte Schlüssel im CSI-u-Format weiter, was die zuverlässigste Konfiguration darstellt. Die Option extended-keys-format erfordert tmux 3.5 oder höher.
Warum csi-u empfohlen wird
Mit nur:
set -g extended-keys ontmux ist standardmäßig extended-keys-format xterm. Wenn eine Anwendung eine erweiterte Schlüsselberichterstattung anfordert, werden geänderte Schlüssel im xterm modifyOtherKeys-Format weitergeleitet, z. B.:
Ctrl+C→\x1b[27;5;99~Ctrl+D→\x1b[27;5;100~Ctrl+Enter→\x1b[27;5;13~
Mit extended-keys-format csi-u werden die gleichen Schlüssel weitergeleitet wie:
Ctrl+C→\x1b[99;5uCtrl+D→\x1b[100;5uCtrl+Enter→\x1b[13;5u
Pi unterstützt beide Formate, aber csi-u ist das empfohlene tmux-Setup.
Was dies behebt
Ohne tmux erweiterte Tasten werden geänderte Eingabetasten auf alte Sequenzen reduziert:
| Schlüssel | Ohne Extkeys | Mit csi-u |
|---|---|---|
| Eingeben | \r |
\r |
| Umschalt+Eingabetaste | \r |
\x1b[13;2u |
| Strg+Eingabetaste | \r |
\x1b[13;5u |
| Alt/Wahl+Eingabetaste | \x1b\r |
\x1b[13;3u |
Dies betrifft die Standard-Tastenkombinationen (Enter zum Senden, Shift+Enter für Zeilenumbruch) und alle benutzerdefinierten Tastenkombinationen, die die modifizierte Eingabetaste verwenden.
Anforderungen
- tmux 3.5 oder höher für
extended-keys-format csi-u(führen Sietmux -Vzur Überprüfung aus) - Ein Terminalemulator, der erweiterte Tasten unterstützt (Ghostty, Kitty, iTerm2, WezTerm, Windows Terminal)
Bei tmux 3.2 bis 3.4 extended-keys-format csi-u weglassen; Pi unterstützt weiterhin das Standardformat xterm modifyOtherKeys von tmux.