Averigüe exactamente qué secuencia de escape envía su terminal para Ctrl +flecha escribiendo Ctrl +V , Ctrl +flecha en modo insertar:esto insertará el ESC
inicial carácter (mostrado como ^[
en vim) literalmente, seguido por el resto de la secuencia de escape. Luego cuéntale a vim sobre estas secuencias de escape con algo como
map <ESC>[5D <C-Left>
map <ESC>[5C <C-Right>
map! <ESC>[5D <C-Left>
map! <ESC>[5C <C-Right>
Me parece recordar que Putty tiene una configuración predeterminada para el modo Teclas de cursor de la aplicación que es inconveniente (no recuerdo por qué), es posible que desee alternar esta configuración primero.
Tenga en cuenta que aunque las secuencias de escape varían entre terminales, los conflictos (es decir, una secuencia de escape que corresponde a diferentes teclas en diferentes terminales) son raros, por lo que no es necesario tratar de aplicar las asignaciones solo en un tipo de terminal en particular.
Su mejor apuesta es probablemente mirar la configuración del modo de teclas de cursor de aplicación de PuTTY.
Las secuencias por defecto envían ESC como prefijo y [
seguido de A
añadir o C
cuelgue u otras cosas que lo lleven al modo de inserción.
añadido, siguiendo a Gilles
Una versión un poco más explícita del escape ^V se puede ver con od(1). Aquí estoy escribiendo ^Arriba, ^Abajo, ^Derecha, ^Izquierda en mi terminal:
$ od -a
0000000 esc [ 1 ; 5 A esc [ 1 ; 5 B esc [ 1 ;
0000020 5 C esc [ 1 ; 5 D
Entonces mi terminal envía ^[[1;5A
cuando presiono Ctrl + ↑
Encontré una solución mejor aquí:http://vim.wikia.com/wiki/Fix_arrow_keys_that_display_A_B_C_D_on_remote_shell
Solo pon esta cadena en tu .vimrc
archivo:
:set term=cons25
Actualizar
Copia este archivo a tu /home
, renombrándolo .vimrc
:
/usr/share/vim/vim_VERSION_/vimrc_example.vim