Das Problem ist zweifach. Zuerst wird tmux
standardmäßig wandelt die Steuerpfeiltasten aus einer Art von Escape - Sequenz zu einem anderen. So werden spezielle Schlüssel, wie controlleftsie vim
ohne den Modifikator gesendet werden, z left. Wenn Sie cat -v
die verschiedenen Escape-Sequenzen anzeigen, wird möglicherweise Folgendes angezeigt
^[OD
im Vergleich dazu (außerhalb von tmux):
^[[1;5D
Die Linie
set-window-option -g xterm-keys on
behebt diesen Aspekt. Der andere Teil ist, dass tmux
standardmäßig die Terminalbeschreibung für verwendet wird screen
. Das Terminal Beschreibung nicht beschreiben die Steuer-Pfeiltasten. Diese Einträge aus der Terminaldatenbank sind für VTE (Gnome-Terminal) am besten geeignet:
Es gibt andere, wie z
die automatisch ausgewählt werden würde , wenn in läuft , screen
wenn die entsprechende TERM
Außenseite war vte
, vte-256color
etc. tmux
nicht tut diese automatische Auswahl-; Sie müssen die Konfigurationsdatei ändern.
Übrigens gibt es keinen "screen.xterm" -Eintrag, da dies einige Verwendungen von stören würde screen
. Es gibt keinen Konflikt mit TERM=xterm-new
.
Wenn Sie eine Standard-Terminaldatenbank (minimal) wie ncurses-base
in Debian haben, haben Sie diese möglicherweise nicht. Häufiger wäre xterm-256color
, was nah genug ist, um mit vim und tmux verwendet zu werden.
Wenn ich dies beispielsweise zu meiner .tmux.conf
Datei hinzufüge , verhält es sich wie erwartet in vim:
set -g default-terminal "xterm-256color"
Weiterführende Literatur:
Control
+Left
funktioniert;Control
+Right
ist nicht. Ich werde später testen und aktualisieren.