Dans vim, comment mapper «commande à droite» et «commande à gauche» au début de la ligne et à la fin de la ligne sur mac?


10

J'essaie de faire en sorte que ce soit comme l'édition de texte par défaut dans Mac. J'ai essayé map! <D-Left> 0 et map! <D-Right> $ ~ / .vimrc, mais bien sûr cela n'a pas fonctionné. Comment puis-je faire ceci?

Réponses:


9

Pour autant que je sache, la syntaxe du modificateur de touche de commande ( <D-...>) n'est efficace que dans les instances en mode GUI de Vim sur Mac OS X.

L' instance de Vim doit être basée sur l'interface graphique car la plupart des émulateurs de terminal ( Terminal , iTerm , etc.) ne génèrent pas de séquences de contrôle pour les combinaisons de touches de commande, donc une instance tty uniquement de Vim n'a aucun moyen de savoir qu'une combinaison de touches de commande a déjà été pressé (l'émulateur de terminal n'envoie jamais rien via l'interface tty). En fait, Terminal lie ⌘ ← et ⌘ → (Commande-Gauche et -Droite) pour parcourir ses fenêtres ouvertes, donc ces clés sont "déjà prises" lorsque vous tapez dans le contexte de Terminal .

MacVim (lorsqu'il est exécuté en mode GUI) est livré avec des mappages fonctionnels pour (entre autres frappes de style Mac)<D-Left>et<D-Right>(respectivement, pour<Home>(presque identique à0) et<End>(identique à$)). Une mise en garde est que ces mappages par défaut sont établis dans$VIM/gvimrc, de sorte qu'ils ne peuvent être correctement remplacés que depuis votre~/.gvimrc .

Je pense qu'il y a eu d'autres versions basées sur l'interface graphique de Vim pour Mac OS X, mais MacVim semble être la seule version moderne.

En gros, les fichiers de démarrage sont traités dans cet ordre: $VIM/vimrc, ~/.vimrc, $VIM/gvimrc, ~/.gvimrc. Depuis les cartes de MacVim , vous devez mettre votre mappage de (si vous voulez réellement le remplacer) dans votre afin qu'il ait le «dernier mot».$VIM/gvimrc<D-Left><D-Left>~/.gvimrc


Merci. j'ai essayé iTerm 2, cela a fonctionné avec ça, mais quand même ... quelle douleur ... bienvenue dans ma vie, Xcode
Marty
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.