¿Por qué mis teclas de flecha no funcionan en vim bajo iTerm?


11

Funcionan bien si uso Terminal y comienzo una sesión de vim, pero bajo iTerm tengo que recurrir al uso de HJKL para hacer movimientos de izquierda a derecha.

Tanto en Terminal como en iTerm TERM = xterm-color. My .vimrces bastante delgado y no hay ninguna combinación de teclas establecida que pueda causar este problema.

iTerm v0.10.

Respuestas:


5

Intenta lo siguiente:

  1. Del Marcadores elemento de menú, seleccione Administrar marcadores ... .
  2. Elija el marcador predeterminado y haga clic en el icono de edición.
  3. Cambie la configuración del Teclado a Global .

Tengo el mismo problema en iTerm2. No hay menú Marcadores :(
Wei Hu

1
@Wei: Se llaman Perfiles en iTerm2. Perfiles -> Abrir perfiles ... y desde allí puede cargar los valores predeterminados de xterm para Keyboard para los perfiles.
Ian C.

@ Ian, gracias. Encontré la configuración, pero cargar los valores predeterminados de xterm no solucionó el problema.
Wei Hu

@WeiHu: La sugerencia original de centinela era cargar la configuración Global, no la xterm, y espero que esto se transfiera a iTerm2; lo intentaré tan pronto como instale iTerm2. Sé que Ian C. escribió xterm, pero tal vez fue un error tipográfico.
Blaisorblade

Para iTerm2, hay una sección de preguntas frecuentes: iterm2.com/#/section/faq . Uso "Tipo de terminal de informe: xterm-256color" junto con las combinaciones de teclas xterm predeterminadas; puede probar los de Terminal.app, pero las combinaciones de teclas parecen no estar relacionadas. Para mí, lo único importante era configurar Alt para que se comportara como + Esc en lugar de Meta, pero eso no debería aplicarse a las flechas (para mí, solucionó Alt-B y amigos en la pantalla).
Blaisorblade

4

Lo siguiente funcionó para mí.

En iTerm2:

  • Perfiles -> Perfiles abiertos ...
  • Editar perfiles ...
  • Pestaña Teclas
  • En el menú desplegable Cargar ajuste preestablecido ..., seleccione la compatibilidad Terminal.app

Gracias Gerald, eres un caballero y un escudero.
Snickers3192

2

Así es como lo arreglé:

nnoremap <silent> <ESC>^[A <Nop>
nnoremap <silent> <ESC>^[B <Nop>
nnoremap <silent> <ESC>^[D <Nop>
nnoremap <silent> <ESC>^[C <Nop>

Nota:

Los caracteres "^ [" no se deben escribir, en su lugar los obtiene haciendo: - Vy presionando la posición de la flecha del cursor correspondiente (arriba, abajo, izquierda, derecha).

Probado con: iTerm2 (compilación 1.0.0.20140629)


1

Pude resolver esto con iTerm2 Build 3.0.15 y el siguiente extracto de mi .vimrc:

" Map alternate key combination for Esc.
noremap <c-[> <Esc>
" Map arrow keys for nomal mode.
nnoremap <silent> <Esc><Up>A <Nop>
nnoremap <silent> <Esc><Down>B <Nop>
nnoremap <silent> <Esc><Right>C <Nop>
nnoremap <silent> <Esc><Left>D <Nop>

HTH

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.