Finden Sie genau heraus, welche Escape-Sequenz Ihr Terminal für Ctrl sendet +Pfeil durch Eingabe von Strg +V , Strg +Pfeil im Einfügemodus:Dies fügt den führenden ESC
ein Zeichen (angezeigt als ^[
in vim) wörtlich, gefolgt vom Rest der Escape-Sequenz. Dann teilen Sie vim diese Escape-Sequenzen mit etwas wie
map <ESC>[5D <C-Left>
map <ESC>[5C <C-Right>
map! <ESC>[5D <C-Left>
map! <ESC>[5C <C-Right>
Ich meine mich zu erinnern, dass Putty eine Standardeinstellung für den Modus der Anwendungs-Cursortasten hat, die unpraktisch ist (ich habe vergessen, warum), Sie möchten diese Einstellung vielleicht zuerst umschalten.
Beachten Sie, dass, obwohl Escape-Sequenzen zwischen Terminals variieren, Konflikte (d. h. eine Escape-Sequenz, die verschiedenen Schlüsseln in verschiedenen Terminals entspricht) selten sind, sodass es nicht notwendig ist, zu versuchen, die Zuordnungen nur auf einen bestimmten Terminaltyp anzuwenden.
Am besten schauen Sie sich wahrscheinlich die Moduskonfiguration der Anwendungs-Cursortasten von PuTTY an.
Die Standardsequenzen senden ESC als Präfix und [
gefolgt von A
anhängen oder C
Hange oder andere Dinge, die Sie in den Einfügemodus werfen.
hinzugefügt, Gilles folgend
Eine etwas explizitere Version des ^V-Escapes kann mit od(1) gesehen werden. Hier tippe ich an meinem Terminal ^Up, ^Down, ^Right, ^Left:
$ od -a
0000000 esc [ 1 ; 5 A esc [ 1 ; 5 B esc [ 1 ;
0000020 5 C esc [ 1 ; 5 D
Also sendet mein Terminal ^[[1;5A
wenn ich Strg drücke + ↑
Ich habe hier eine bessere Lösung gefunden:http://vim.wikia.com/wiki/Fix_arrow_keys_that_display_A_B_C_D_on_remote_shell
Fügen Sie einfach diesen String in Ihren .vimrc
ein Datei:
:set term=cons25
Aktualisieren
Kopieren Sie diese Datei auf Ihren /home
, und benenne es in .vimrc
um :
/usr/share/vim/vim_VERSION_/vimrc_example.vim