Dans le terminal, je peux le faire en appuyant sur shift + home et shift + end, mais cela ne semble pas fonctionner dans vim. Les touches Accueil et Fin font uniquement défiler la fenêtre du terminal. Je voudrais sauter en mode édition.
Dans le terminal, je peux le faire en appuyant sur shift + home et shift + end, mais cela ne semble pas fonctionner dans vim. Les touches Accueil et Fin font uniquement défiler la fenêtre du terminal. Je voudrais sauter en mode édition.
Réponses:
Cette réponse suppose que vous utilisez vim dans une fenêtre de terminal .
Les liaisons par défaut pour Home et End sont un peu différentes de ce à quoi un programme devrait s'attendre sur la base du paramètre TERM habituel (c'est-à-dire une variante xterm). Si vous souhaitez vous en tenir aux liaisons par défaut (et avoir à utiliser les variantes Shifted dans Terminal ), vous pouvez essayer de mettre quelque chose comme ça dans votre .vimrc
:
:" map Mac OS X Terminal.app default Home and End
:map <ESC>[H <Home>
:map <ESC>[F <End>
:imap <ESC>[H <C-O><Home>
:imap <ESC>[F <C-O><End>
:cmap <ESC>[H <Home>
:cmap <ESC>[F <End>
Sinon, vous pouvez essayer d'ajuster les codes que Terminal envoie lorsque vous utilisez Home et End (même sans décalage, si vous le souhaitez). Une recherche trouverait probablement des endroits qui décrivent comment le faire (en voici un ). L'idée de base est que vous voulez que Terminal envoie ESC [1 ~ au lieu de ESC [H pour la maison et ESC [4 ~ au lieu de ESC [F pour la fin (ou Shift-Home / Shift-End si vous voulez garder la maison / Fin pour accéder au défilement). Je décrirais le processus plus en détail, mais je n'ai que 10.4, et je sais que Terminal a beaucoup changé en 10.5 et versions ultérieures.
utilisez 0 et $ pour passer au début et à la fin de la ligne. Consultez ce site: http://alvinalexander.com/linux/vi-vim-editor-end-of-line .
0
et $
.
En plus de la réponse de Chris , vous pouvez également réaliser la navigation par mot (avec les Option+arrow
touches), simplement en ajoutant ces quatre lignes:
:map <ESC>f el
:imap <ESC>b <C-o>b
:imap <ESC>f <C-o>el
:cmap <ESC>f el
Remarquez que les o
majuscules sont minuscules, de sorte qu'il ne quitte pas le insert
mode pour l'opération. Vous pouvez également modifier les majuscules O
dans la réponse d'origine pour le même effet.
Dans MacVim, vous pouvez utiliser les commandes «Flèche gauche» et «Flèche droite» pour aller au début et à la fin de la ligne tout en étant en mode édition.
Allez dans Terminal -> Préférences -> Profils -> Clavier et ajoutez:
Touche: ↖ Action: \ 033OH
Touche: ↗ Action: \ 033OF