L'éditeur de texte Vim est l'un des éditeurs de texte les plus utilisés. C'est un outil très complet dont personne ne peut prétendre connaître et utiliser plus d'une infime part des fonctionnalités.
Nous allons présenter ici deux raccourcis clavier Vim très utiles et pourtant peu connus.
La commande ctrl-o
Il peut sembler étrange de recommander un raccourci utilisant le modificateur ctrl dans un article sur Vim, mais il y a des cas où ce modificateur est bien utile.
Le raccourci ctrl-o (utilisé en mode édition) permet de repasser en mode normal pour une unique commande avant de revenir en mode édition.
Je l'utilise beaucoup avec la commande p. La combinaison ctrl-o p permet rapidement de coller le contenu du buffer par défaut sans véritablement quitter le mode édition.
La combinaison xp
Cette combinaison de touche, utilisée en mode normale, est très pratique. Elle enlève le caractère sous le curseur, le copie dans le buffer par défaut, puis le colle immédiatement après le caractère qui se trouve maintenant sous le curseur.
Pour faire simple : cette combinaison de touches permets d'échanger le caractère sous le curseur et le suivant. Très pratique pour corriger rapidement les fautes de frappe les plus fréquentes.
J'espère que ces deux petites commandes vous serviront, si vous avez vos propres petites astuces Vim (ou Emacs, ne soyons pas sectaire) n'hésitez pas à nous les envoyer ou à les poster en commentaire.
Après plusieurs années d'utilisation de vim je n'avais jamais essayé ctrl-o en mode édition (effectivement ça a l'air pratique), par contre je l'utilise très souvent en mode commande.
La combinaison ctrl-o en mode commande permet de revenir à l'endroit modifié juste avant l'endroit en court d'édition.
Par exemple, vous écrivez du texte sur la ligne 23 de votre fichier, puis vous vous déplacez jusqu'à la ligne 42 et écrivez un autre mot à cet endroit. ctrl-o vous permet de retourner directement à la ligne 23. Puis ctrl-i permet de revenir à la ligne 42.
ctrl-o et ctrl-i gardent un historique des endroits visités dans le fichier et permettent de se déplacer entre les différentes endroits modifiés.
Cela va même beaucoup plus loin qu'un simple déplacement dans un fichier car ctrl-o/ctrl-i permettent aussi de naviguer dans les différents fichiers modifiés précédemment ainsi que dans les derniers tags accédés.