VIm : Premiers pas
On vous a demandé d'éditer un fichier de configuration ? Croyez-moi, ça risque d'arriver souvent. Dans ce cas, autant le faire avec un véritable éditeur de texte. Nano, ça va bien 5 minutes, mais ça reste assez rudimentaire. Emacs est une alternative, que je n'aime pas, je ne développerai ni ne trollerai donc pas sur le sujet
Pourquoi utiliser un éditeur de texte en mode console ?
- Parce qu'il n'y a pas besoin d'un serveur graphique pour éditer un pauvre fichier de configuration
- Parce que c'est plus léger et disponnible facilement sur toutes les configurations
- Parce que quand le serveur graphique est mort, on n'a pas le choix
- Parce que de toute façon, la souris nous ferait perdre du temps
- Parce qu'il démarre en moins d'une seconde
Pourquoi utiliser VIm plutôt que nano ?
- Pour ses fonctionnalités de recherche de texte
- Pour ses fonctionnalités de substitution
- Pour son ergonomie (si si !)
- Pour son lot de plugins et sa reconnaissance syntaxique
- Pour la magie noire qui émane de lui
Remarques importantes
- On dit « Vi-aïe immeprouvdeuh ».
- Moi, je dis « Vimmeuh ».
- Normalement, la différence ne devrait pas trop se ressentir sur le Wiki.
- Conclusion, si on vous demande comment on doit appeler vim, répondez
« En l'invoquant dans un terminal. »
Installation
aptitude install vim-nox vim-scripts
Au secours, comment on quiteuh !!!
<Escape> :q <Enter>
Mais euh, il veut pas euh !
<Escape> :q! <Enter>
Utilisation basique de VIm
Commençons par créer un fichier de jeu :
echo -e "Il y a trois sortes de casseroles.\nLes casseroles avec la queue à droite, les casseroles avec la queue à gauche et les casseroles avec pas de queue du tout.\nMais celles-là on les appelle des autobus." > /tmp/jeu.txt
Cette commande crée un fichier /tmp/jeu.txt ressemblant très fortement à ça :
Il y a trois sortes de casseroles. Les casseroles avec la queue à droite, les casseroles avec la queue à gauche et les casseroles avec pas de queue du tout. Mais celles-là on les appelle des autobus.
Étonnant n'est-ce pas ?
Ouverture de fichier
On supposera pour l'instant que vous n'avez pas lancé vim. Si c'est le cas, quittez-le. Il suffit de taper :
vim /tmp/jeu.txt
Vous avez maintenant une interface qui ressemble fort à ça (un clic pour agrandir) :
Vous êtes en mode commande. Les lettres que vous tapez ne sont pas insérées dans le texte mais sont interprétées comme des commandes.
Insertion de texte
Appuyez maintenant sur la touche i.
Peu de chose ont changées. Seule l'inscription
-- INSERTION --
est apparue en bas à gauche de la fenêtre.
Cela change beaucoup de chose ! Vous êtes dorénavant en mode insertion, c'est à dire que les lettes que vous tapez sont insérées à l'emplacement du curseur.
Tapez maintenant le texte suivant :
Pour les Shadocks, i
Et faite <Escape>.
Vous vous retrouvez maintenant avec l'écran suivant :
Remarquez la ligne qui indiquait le nom du fichier. Elle est maintenant annotée
d'un [+].
/tmp/jeu.txt [+]
Cela signifie que le document a été modifié. Vous noterez également qu'en appuyant sur <Escape> vous avez quitté le mode insertion et avez réintégré le mode commande.
Sauvegarde des modifications
Maintenant que vous êtes en mode commande, vous allez sauvegarder les
modifications apportées au fichier. Pour ce faire, tapez :w <Enter>
Vous avez remarqué qu'après la saisie de :, une petite invite de commande
est apparue. w signifie write, c'est la commande pour écrire un fichier.
Après avoir tapé sur <Enter>, vous êtes revenu en mode commande et le
[+] a disparu.
Vous avez enregistré les modifications du fichier sur le disque. Au passage, si le fichier n'existait pas, il a été créé.
Se déplacer dans le document
Oui, enfin bon, voilà, la phrase du document texte ne veut rien dire, et ça n'est certainement pas la faute des Shaddocks.
S'il est une décision qui doit être prise en cet instant, c'est la suivante :
il faut supprimer le I. Cette décision s'impose d'autant plus qu'elle me
fournit une transition vers la suite du tutoriel.
Il y a 36 solutions pour supprimer ce I.
- La plus facile, dont vous devez vous souvenir :
- repassez en mode console avec
i - allez vers la droite avec… la flèche vers la droite
- appuyez sur <Suppr>
- appuyez sur <Esc>
- La solution équivalente « tout en mode commande » :
- appuyez sur
l - appuyez sur
x
- Une solution par substitution :
- tapez
:s/iI/i/<Enter>
Vous pouvez maintenant enregistrer comme tout à l'heure votre document.
Quelques explications
- En mode commande, on peut utiliser
h,j,ketlpour se déplacer. Bien sûr, les flèches fonctionnent également, mais VIm est prévu pour pouvoir fonctionner sur des claviers sans flèches
et puis, ces touches sont moins éloignées de la position de repos de vos mains, donc vous vous fatiguez moins
.
- En mode commande,
xpermet de couper la lettre présente sous le curseur.
:s/motif/texte/est une commande pour remplacer la
première occurrence de motif par texte.






