Cet article a été publié il y a 1 an 11 mois 24 jours, il est donc possible qu’il ne soit plus à jour. Les informations proposées sont donc peut-être expirées.Je vous ai parlé y a quelques semaines de l’éditeur de texte Vim, depuis ce billet est devenu un des plus consultés sur ce blog, ce qui m’a encouragé à en rédiger un autre.
Par défaut, Vim est présent dans toutes les distributions GNU/linux, pour les utilisateurs de Windows ou les linuxiens qui préfèrent l’interface graphique (GUI) ils peuvent installer le paquet GVim :
# aptitude install gvim
Vim est éditeur modal c’est à dire que les touches peuvent avoir des actions différentes selon le mode où on est, les trois principales modes sont : mode insertion, mode commande et mode interactif, c’est le mode par défaut de Vim :
Dans le mode interactif les touches que vous tapez sont des commandes, par exemple quand vous tapez la touche o c’est nouvelle ligne qui va être inséré et pas le caractère pareil pour dw qui va supprimer le mot sous le curseur.
Pour passer en mode insertion taper i, vous pouvez commencer à saisir votre texte. Ça y est, vous avez terminé la saisie de votre texte et vous voulez le sauvegarder, facile, appuyez sur echap puis :w les : signifie que vous demandez à Vim de passer en mode commande et le caractère w c’est pour write (écrire), si vous voulez quitter Vim sans enregistrer votre texte taper :q!
Comme je l’ai signalé dans le billet précédent Vim peut irriter quelques uns au début mais quelques jours après vous apercevrez du gain en productivité que Vim vous apportera. Vous pouvez lire tous les tutoriels qui sont sur le Web mais ça ne vous avancera beaucoup si vous ne mettez pas les mains de le cambouis, votre apprentissage deviendra rapide si vous appliquez au fur et à mesure ce que vous lisez, c’est la meilleure des approches.
Maintenant quelques commandes basiques qu’il faut connaître :
Déplacement :
- h : déplacer le curseur un caractère à gauche ;
- l : déplacer le curseur un caractère à droite ;
- k : déplacer le curseur un caractère vers le haut ;
- j : déplacer le curseur un caractère vers le bas ;
- 0 : déplacer le curseur vers le début de la ligne ;
- $ : déplacer le curseur vers la fin de la ligne ;
- w : déplacement d’un mot en avant ;
- b : déplacement d’un mot en arrière ;
- gg : aller au début du fichier
- G : déplacement vers la fin du fichier ;
Édition :
- dw : efface le mot sous le curseur ;
- d/mot : efface depuis caractère sous curseur jusqu’au “mot” mais sans l’inclure ;
- d0 : efface depuis la position du curseur jusqu’au début de la ligne courante ;
- d$ : efface depuis la position du curseur jusqu’à la fin de la ligne courante ;
- dd : efface toute la ligne ;
- dG : efface la ligne courante jusqu’à la fin de fichier ;
- dgg : efface la ligne courante jusqu’au début de fichier ;
- d42G : efface la ligne courante jusqu’à la ligne 42 en l’incluant.
Vous remarquerez qu’on peut combiner des commandes d’édition et de déplacement, c’est un des points forts de Vim, et croyez moi y en a beaucoup
Recherche et remplacement :
Si vous voulez rechercher un mot par exemple “test” vous n’avez qu’à taper /test ensuite suivi d’Entrer le curseur va alors se placer sur le premier “test” qu’il va rencontrer, pour rechercher la prochaine occurrence taper n, pour rechercher en arrière taper N.
Pour remplacer un texte vous taper :%s/texte à remplacer/nouveau texte/g, y a une variante de cette commande qui va vous demander de confirmer avant d’exécuter la commande :%s/texte à remplacer/nouveau texte/gc.
Opérations standards (copier, coller, anuuler…)
- v : sélectionne le caractère sous le curseur ;
- V : sélectionne la ligne courante ;
- y : copier le caractère sélectionné ;
- p : coller le caractère copié avec y ou dd ;
- u : annuler les modifications ;
- ctrl+r : refaire les modifications annulé avec u
N’oubliez pas que vous pouvez combiner des commandes ainsi avec yw vous allez copier le mot sous le curseur ou y$ qui va copier du curseur jusqu’à la fin de la ligne.
Nous avons vu au début de l’article que pour sauvegarder un fichier on tape :w et pour quitter sans enregistrer :q!, on peut ajouter à ces commandes
qui va enregistrer le fichier et quitter après.
Voilà c’est tout pour maintenant, j’espère que ça va vous encourager à s’y mettre à Vim et surtout de l’adopter
Edit : Merci à ®om de m’avoir signalé l’erreur









