Pourquoi mes touches fléchées ne fonctionnent-elles pas dans vim sous iTerm?

11

Ils fonctionnent très bien si j'utilise Terminal et démarre une session vim, mais sous iTerm, je dois recourir à HJKL pour effectuer des mouvements de gauche à haut en bas à droite.

Dans Terminal et iTerm TERM = xterm-color. Mon .vimrcest assez maigre et il n'y a aucune liaison de touches définie qui pourrait causer ce problème.

iTerm v0.10.

Ian C.
la source

Réponses:

5

Essayez ce qui suit:

  1. De l' Signets élément de menu, sélectionnez Gérer les signets ... .
  2. Choisissez le signet par défaut et cliquez sur l'icône de modification.
  3. Modifiez le paramètre Clavier sur Global .
sentinelle
la source
J'ai eu le même problème sur iTerm2. Il n'y a pas de menu Signets :(
Wei Hu
1
@Wei: Ils s'appellent des profils dans iTerm2. Profils -> Ouvrir les profils ... et à partir de là, vous pouvez charger les paramètres par défaut de xterm pour le clavier pour les profils.
Ian C.
@Ian, merci. J'ai trouvé les paramètres mais le chargement des paramètres par défaut de xterm n'a pas résolu le problème.
Wei Hu
@WeiHu: La suggestion originale de sentinelle était de charger le paramètre Global, pas celui xterm, et je m'attends à ce que cela se poursuive sur iTerm2 - j'essaierai dès que j'installer iTerm2. Je sais que Ian C. a écrit xterm, mais c'était peut-être une faute de frappe.
Blaisorblade
Pour iTerm2, il y a une section FAQ: iterm2.com/#/section/faq J'utilise "Report Terminal Type: xterm-256color" avec les raccourcis clavier xterm par défaut; vous pouvez essayer celles de Terminal.app, mais les raccourcis clavier ne semblent pas liés. Pour moi, la seule chose importante était de définir Alt pour qu'il se comporte comme + Esc au lieu de Meta, mais cela ne devrait pas s'appliquer aux flèches (pour moi, cela corrigeait Alt-B et ses amis sous l'écran).
Blaisorblade
4

Ce qui suit a fonctionné pour moi.

Dans iTerm2:

  • Profils -> Profils ouverts ...
  • Modifier les profils ...
  • Onglet Clés
  • Dans la liste déroulante Load Preset ..., choisissez la compatibilité Terminal.app
Gerald Boersma
la source
Merci Gerald, vous êtes un gentleman et un écuyer.
Snickers3192
2

Voici comment j'ai corrigé:

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

Remarque:

Les caractères "^ [" ne doivent pas être saisis, au lieu de cela vous les obtenez en faisant: - Vet en appuyant sur la position de la flèche du curseur correspondante (haut, bas, gauche, droite).

Testé avec: iTerm2 (Build 1.0.0.20140629)

fmendez
la source
1

J'ai pu obtenir ce tri avec iTerm2 Build 3.0.15 et l'extrait suivant de mon .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.

Jérôme
la source