VI / VIM

De Avided.info
Aller à : navigation, rechercher


VI

Ecrire

  • Ouvre l’éditeur
vi        
  • Ouvre le fichier "file" sans tampon (pratique pour les medias lents (disquettes et clef USB))
vi -n file    
  • passer en mode édition
taper Esc + "i" ou  + "a"

Les commandes

taper Esc pour les commande

Quitte sans enregistrer.

:q !        

Quitte et enregistre

:qw        

Quitte est enregistre sous le nom de fichier xxxx

       
:qw xxxx    

suppression

x        Supprime la lettre avant
X        Supprime la lettre après
rx        Remplace le caractère par x
dw        Détruire un mot
dB        Supprime le mot précédent
d/xxx        Supprime jusqu'à la chaîne xxx
dd        Supprime la ligne courante
D ou d$        Supprime la fin de la ligne
3dw        Détruire 3 mots
D2w        Détruire 2 mots
3d2w        Détruire 6 mots

Remplacement

Rxxx « esc »    Remplace le nombre de caractères voulus par xxx
sxxx « esc »    Remplace un caractère par texte
Sxxx « esc »    Détruit la ligne et la remplace par texte
:set nonu    retire numérotation des lignes
:r xxxx        Introduit le contenu du fichier xxxx après la ligne courante
cw        Change un mot par celui qui sera écrit
c2w        Remplace les deux mots qui suivent
C ou C$        Remplace la fin de la ligne
CC        Remplace la ligne courante
C/xxx        Remplace jusqu’à xxx
J        Regroupe la ligne courante avec la suivante

Remplacer une chaine par une autre dans tous le fichier

:$,1 s/chaineAremplacer/NouvelleChaine/g

Récupérer

p        Récupère la dernière suppression après l’objet du même type
P        Récupère la dernière suppression avant l’objet du même type

Utilisation de YANK (copier coller)

Y        Copie l’objet désigné ou la ligne courante dans le buffer (possibilité de récupérer par p ou P)
y3w        Met les 3 mots suivant dans le buffer.
3yy        Met 3 ligne dans le buffer

Il existe par ailleurs 26 buffers nommés par les lettres a-z

a5y        Met 5 lignes dans le buffer a
Appe        Permet de restituer le contenu du buffer a
add        Détruit la ligne courante et l’ajoute au buffer a

Déplacement

Ligne

^        Début de ligne (premier caractère autre que blanc
$        Fin de ligne
CR        Ligne suivante
-        Début de ligne précédente
0        Début de ligne physique (y compris les blancs)

Ecran

H        Début de première ligne
M        Milieu d’écran
L        Début de la dernière ligne

Phrase

(        Début de phrase courante
)        Fin de phrase courante

Paragraphe

{        Début de paragraphe
}        Fin de paragraphe

Recherche caractère

fx        Recherche en avant du premier caractère x
Fx        Recherche en arrière du premier caractère x

Changement de fenêtre

z.        Place la ligne courante au centre de l’écran
z «cr »        Place la ligne courante en haut de l’écran
z-        Place la ligne courante en bas de l’écran
Ctrl +D        Déplacement d’un demi-écran, vert le bas
Ctrl +U        Déplacement d’un demi-écran, vers le haut
Ctrl +F        Déplacement d’un écran vers le bas –2 lignes
Ctrl +B        Déplacement d’un écran vers le haut –2 lignes

Sur n° de ligne

:n « cr » ou xG    Le curseur se place sur ligne x au besoin il déplace la fenêtre
$ « cr » ou G    Le curseur se déplace sur la dernière ligne du fichier

Recherche d’une chaîne

/        En avant
?        En arrière
n        Répétition de la recherche dans le même sens
N        Répétition en sens inverse
/        Répétition en avant
? ?        Répétition en arrière

Marqueur d’utilisation

mx        Marquage d’une position (x la lettre maquer). Une lettre, une marque.
`x        Renvoie à la position marquer par x
‘x        Renvoie au début de la ligne marqué par x
``        Renvoie à la dernière position précédant la recherche

Annulation et répétition

u        Annule l’effet de la dernière directive de chargement
U        Annule tout les changement fait sur la ligne courante
.        Effectue à nouveau la dernière commande de modification

Divers

: !cmdshell    Exécute la commande shell (sortie temporaire de vi et y revient après exécution de la commande
:r !cmdshell    Idem + résultat dans fichier ouvert
:f        Donne la référence du fichier en cour d’édition (n° de ligne courante, etc..)
Ctrl+l        Rafraîchissement de l’écran (cls dos)

Le nom du fichier courant est mémorisé dans la variable %

: !cmd      Permet de lancer une commande shell avec retour sous vi.
: !%        Demande d’exécuter le fichier courant. Retour sous vi à la fin de l’exécution.