Dernière mise à jour : 26/05/2016
Quiconque travaille en ligne de commande sous Linux a été confronté à un moment donné à "vi". Dire que l'utilisation de ce dernier nécessite une certaine habitude est un euphémisme. Toutefois, il peut rendre de nombreux services.
"vi" a été développé pour être utilisé sur des terminaux disposant d'un nombre limité de touches. Ainsi, vous pouvez vous passer des touches comme les flèches, les sauts de page, les touches d'effacement, etc. Toutes ces fonctionnalités peuvent être réalisées grâces aux touches alphanumériques.
"vi" possède différents modes de travail. Chaque mode vous permet d'exécuter différentes choses. Lorsque vous démarré, vous vous trouvez dans le mode "commande". Vous pouvez passer en mode "édition" ou en mode "ex".
Le mode "commande" est le mode dans lequel vous pouvez introduire différentes commandes. Vous pouvez ainsi déplacer votre curseur, effacer un ou plusieurs caractères, effectuer des substitutions, etc.
Le mode "édition" est le mode dans lequel vous pouvez taper votre texte.
Le mode "ex" est un mode de commande qui permet d'effectuer des tâches un peu différentes de celles du mode "commande" comme sauver le fichier, quitter le programme, etc.
Au démarrage, vous vous trouvez dans le mode "commande". Pour passer en mode "édition", il existe une série de commandes, que nous verrons plus tard, suivant l'action que vous désirez effectuer.
Pour passer du mode "commande" au mode "ex", tapez la touche :
.
Lorsque la commande "ex" sera exécutée, vous retournerez automatiquement
au mode "commande".
Pour passer du mode "édition" au mode "commande", pressez la touche
<ESC>
.
Commande | Action |
---|---|
i |
Insertion de texte devant le curseur. |
a |
Insertion de texte après le caractère. |
I |
Insertion de texte au début de la ligne. |
A |
Insertion de texte à la fin de la ligne. |
o |
Ajout d'une ligne avant la ligne courante et passage en mode "édition". |
O |
Ajout d'une ligne après la ligne courante et passage en mode "édition". |
r |
Remplace le caractère se trouvant par sous le curseur par le prochain caractère tapé. |
R |
Remplace tous les caractères jusqu'à la fin de la ligne ou jusqu'à ce que
la touche <ESC> soit pressée.
|
Bien que les touches de déplacement fonctionnent dans la plupart des versions moderne de "vi", voici les commandes classiques.
Commande | Action |
---|---|
[n]h |
Déplacement de n caractères à gauche. n est optionnel.
|
[n]j |
Descend de n caractères. n est optionnel.
|
[n]k |
Monte de n caractères. n est optionnel.
|
[n]l |
Déplacement de n caractères à droite. n est optionnel.
|
<CTRL>+F |
Avance d'un écran. |
<CTRL>+B |
Recule d'un écran. |
[n]G |
Se déplace à la ligne n . n est optionnel. S'il n'est
pas précisé, se déplace à la dernière ligne.
|
^ |
Premier caractère non blanc de la ligne. |
$ |
Dernier caractère de la ligne. |
Commande | Action |
---|---|
/texte |
Recherche "texte" vers le bas. |
n |
Recommence la dernière recherche. |
Commande | Action |
---|---|
[n]x |
Efface n caractère à partir du curseur. n est optionnel.
|
X |
Efface la caractère précédant le curseur. |
[n]dd |
Efface n ligne à partir de la ligne en cours. n est
optionnel.
|
[n]dw |
Efface n mots à partir du mot en en cours. n est
optionnel.
|
Notez que tout ce que vous effacez est placé dans une mémoire tampon et qu'il pourra être collé plus tard.
Commande | Action |
---|---|
[n]yy |
Copie n lignes dans la mémoire tampon. n est optionnel.
|
p |
Colle le texte contenu dans la mémoire tampon après le curseur. |
P |
Colle le texte contenu dans la mémoire tampon avant le curseur. |
u |
Annule la dernière action. |
. |
Répète la dernière action. |
Commande | Action |
---|---|
:help |
Affiche l'aide. |
:viusage |
Affiche la liste des commandes du mode "commande". |
:exusage |
Affiche la liste des commandes du mode "ex". |
Commande | Action |
---|---|
:w [fichier] |
Sauvegarde dans fichier . fichier est optionnel.
|
:wq |
Sauvegarde le fichier en cours et quitte "vi". |
:q |
Quitte "vi". Si des modifications ont été effectuées mais non sauvegardées, la commande ne sera pas exécutée. |
:q! |
Quitte "vi". Si des modifications ont été effectuées mais non sauvegardées, elles seront perdues. |
© Sébastien Adam 1996 ~ 2023 - https://www.sebastienadam.be/ - .