Ich bin nicht sicher, dass es funktionieren wird, aber Sie könnten versuchen, diesen Code in Ihrem vimrc
enthalten:
if &term =~ '^screen'
sil! exe "set <xUp>=\e[1;*A"
sil! exe "set <xDown>=\e[1;*B"
sil! exe "set <xRight>=\e[1;*C"
sil! exe "set <xLeft>=\e[1;*D"
endif
ich es von here kopiert.
Wenn Sie tmux verwenden, können Sie auch die Option xterm-keys
in Ihrer tmux Konfigurationsdatei aktivieren müssen (~/.tmux.conf
):
set-option -gw xterm-keys on
Es in man tmux
beschrieben ist:
xterm-keys [on | off]
If this option is set, tmux will generate xterm(1) -style function key sequences; these have a
number included to indicate modifiers such as Shift, Alt or Ctrl. The default is off.
ich nicht wissen, was das Äquivalent für screen
ist.
Es ist auch möglich, dass etwas (Fenstermanager, Terminal-Multiplexer, Terminal-Emulator) <C-left>
vor Vim abfängt.
Um diese Möglichkeit auszuschließen, könnten Sie versuchen, <C-left>
buchstäblich in einen Vim-Puffer einzufügen, indem Sie im Einfügemodus C-v C-left
eingeben und sehen, was es anzeigt. Auf meinem Gerät wird ^[[1;5D
angezeigt, sodass ich weiß, dass nichts <C-left>
abfängt.
Wenn nichts angezeigt wird, müssen Sie herausfinden, welche Software <C-left>
abfängt, und die Schlüsselbindung in der Konfiguration entfernen.
Auf welcher Plattform befinden Sie sich? Einige Schlüssel werden vom Betriebssystem verbraucht, bevor sie Anwendungen erreichen. Zum Beispiel wird in Mac OS Ctrl {links, rechts} vom Betriebssystem für die Missionskontrolle verbraucht. –
@DanLowe Danke für den Kommentar. Es ist Centos 7. – dlz