vi Survival guide

, par MiKaël Navarro

Pour ne pas faire de jaloux (p/r à Emacs), quelques commandes de base vi.

Démarrer vi

Taper : vi ou vim ou view ou gvim

Modes vi

 Command : Mode normal au démarrage. Les autres modes reviennent à ce mode lorsqu’ils sont terminés. Esc est utilisé pour annuler une commande partielle.

 Input : On y entre en utilisant une des options suivantes a A i I o O c C s S R. Du texte peut être entré. Ce mode est normallement terminé via la touche Esc.

 Last Line : Lit les commandes : / ? ou !; terminé par retour chariot.

Exemples

Dans les descriptions CR signifie retour chariot.
Un nombre (n) peut être préfixé à de nombreuses commandes afin de répéter celle-ci.

Interruptoin, annulation

 ESC termine le mode input ou annule une commande incomplète
 DEL interrompt

Manipulation de fichiers

 :wCR écrit les changements
 :w!CR force l’écriture
 :qCR quitte
 :q!CR quitte, sans sauver
 :e nameCR édite le fichier "name"
 :w nameCR écrit le fichier "name"
 :w! nameCR écrase le fichier "name"

Se positionner dans le fichier

 ^F avance d’un écran
 ^B recule d’un écran
 ^D déscend d’un demi-écran
 ^U remonte d’un demi-écran
 nG va à la ligne n
 /pat prochaine ligne correspondant à "pat"
 ?pat précédente ligne correspondant à "pat"

 0 début de la ligne
 $ fin de ligne
 h déplace le curseur à gauche
 j déplace le curseur en bas
 k déplace le curseur en haut
 l déplace le curseur à droite

Insertion and remplacement

 a ajoute après le curseur
 A ajoute à la fin de la ligne
 i insère avant le curseur
 I insère avant le premier caractère non blanc
 o ouvre une ligne en dessous
 O ouvre une ligne au dessus
 rx remplace un seul caractère avec "x"
 RtextESC remplace le texte "text"
 x efface le caractère sous le curseur

Copier-coller

 put insère le texte effacé ou copié le plus récent.
 3yy copie 3 lignes
 3yl copie 3 caractères
 p colle le texte après le curseur
 P colle le texte avant le curseur

Annulation

 u annule le dernier changement
 U restitue la dernière ligne