Comment couper coller du texte sous vi

Couper la ligne courante :

Couper le mot courant (sur lequel est positionner votre curseur) :

Colle le contenu du tampon (ce qui vient d’être couper) après la ligne courante :

Pour coller le tampon avant la ligne courante :

vi : Deplacer le curseur

Voici les différentes possibilités permettant de déplacer le curseur sous vi.

jDescend le curseur d’une ligne
kMonte le curseur d’une ligne
lDéplace le curseur d’un caractère vers la droite
hDéplace le curseur d’un caractère vers la gauche
MPlace le curseur sur la ligne du milieu de l’écran
HPlace le curseur sur la première ligne de l’écran
LPlace le curseur sur la dernière ligne de l’écran
nGPlace le curseur sur la ligne n
35GPlace le curseur sur la ligne 35
(Déplace le curseur d’une phrase vers l’arrière
)Déplace le curseur d’une phrase vers l’avant
{Déplace le curseur d’un paragraphe vers l’arrière
}Déplace le curseur d’un paragraphe vers l’avant
zDescend l’écran de manière à avoir la ligne courante en haut de celui-ci
z.positionne l’écran de manière à avoir la ligne courante au milieu de celui-ci
z-positionne l’écran de manière à avoir la ligne courante en bas de celui-ci

vi : substitution de chaînes

L’éditeur vi permet dans un document de rechercher et remplacer (substituer) une chaîne de caractères par une autre.

Exemples illustrés:

Remplace à l’intérieur du document toutes les occurrences de chaîne1 par chaîne2 :

Remplace sur la ligne courante la première occurrence de chaîne1 par chaîne2 :

Remplace sur la ligne courante toute les occurrences de chaîne1 par chaîne2 :

Remplace de la ligne 5 jusqu’à la dernière ligne toutes les occurrences de chaîne1 par chaîne2 :

vi : nombre d’espaces / tabulation

Il est possible sous vi de modifier l’espacement des tabulations.

Une tabulation correspond à un certain nombre d’espaces.

Exemple :

On souhaite avoir des tabulations qui correspondent à 5 espaces :

Copier/coller sous vi

Il est tout à fait possible de copier/coller du texte avec l’éditeur vi :

Passez en mode commande avec la touche echap, déplacez le curseur (à l’aide des touches h, j, k, l) sur la ligne que vous souhaitez copier.

Copier :

Déplacez ensuite le curseur sur la ligne après laquelle la copie sera faite.

Coller :

Comment faire une recherche dans vi

recherche la chaîne « toto »

occurrence suivante : n
occurrence précédente : N

recherche la chaîne toto vers le haut :

vi : comment Aligner à droite, au centre, à gauche

Il est possible avec vi d’aligner une ligne au centre, à droite ou à gauche.
Préalablement, passez en mode commande, positionnez le curseur sur la ligne à modifier…

alignement au centre :

alignement à droite :

alignement à gauche :

Comment lancer une commande shell depuis vi

Depuis votre éditeur de texte préféré, vi, il est possible de lancer des commandes Linux shell, plusieurs techniques et variantes existent pour cela.

Lancement d’une commande

Il est possible depuis vi d’exécuter une commande shell. La commande suivante :

exécute la commande ls et affiche le résultat dans un shell ouvert momentanément.

Ouverture de l’interpréteur de commande

Sans quitter vi, il est possible d’ouvrir l’interpréteur de commande. Il faut pour cela utiliser la commande vi :

vi n’étant pas fermé, il faut taper exit ou Ctrl-D pour revenir à l’éditeur.

Utiliser le résultat d’une commande shell

Il est possible de lancer depuis vi une commande shell et d’insérer ensuite le résultat de cette dernière à l’intérieur du fichier que vous êtes en train d’éditer.

La syntaxe est la suivante :

« n » est facultatif, il peut correspondre au numéro de la ligne après laquelle l’insertion sera faite ou à une expression rationnelle (e.g. /expression/).
Si jamais « n » n’est pas renseigné alors l’insertion se fera après la ligne où est positionné le curseur.

Exemples :

Insérer (après la ligne où est positionné le curseur), le résultat retourné par la commande date :

Insérer après la ligne 5, le résultat retourné par la commande ls :

Insérer après la première ligne trouvée qui contient l’expression « jean », le résultat retourné par la commande dir :

Afficher les numéros de ligne dans l’editeur vi

Souvent, lorsqu’on a un problème de compilation, on a besoin de connaître quels sont les numéros de ligne afin d’aller directement sur celle indiqué par le compilateur. L’éditeur de texte vi permet d’afficher les numéros de ligne, pour cela il est nécessaire, de passer ne mode commande avec la touche ECHAP et de taper l’instruction suivante :

ou

Désactiver la numérotation des lignes

Si vous souhaitez enlever la numérotation de ligne sous vi, il faut utiliser la commande suivante :

ou

Les principales commandes vi à connaître

Un des éditeurs de texte les plus connu du monde UNIX est sans contexte vi. Ce dernier est très vieux, assé rebutant à utiliser au début, mais il permet de faire un tas de choses très sophistiquées.

Deux modes : insertion & commande

Sous vi il existe deux modes bien distinct :

  • le mode insertion
  • le mode commande

Le premier mode, le mode insertion permet de saisir du texte tandis que le second (le mode commande) permet de déplacer le curseur, de supprimer des caractères ou des lignes ou d’éxecuter des commandes parfois plus sophistiquées.

La touche echap permet de passer en mode commande.
La touche i permet de passer en mode insertion.

Déplacer le curseur

Pour pouvoir déplacer le curseur il faut être en mode commande.

  • k pour déplacer le curseur vers le haut
  • j pour déplacer le curseur vers le bas
  • l pour déplacer le curseur vers la gauche
  • j pour déplacer le curseur vers la droite

Supprimer un caractère

Pour supprimer un caractère il faut être en mode commande (touche echap si ce n’est pas déja fait), et utiliser la touche x.

Enregistrer le document

Enregistrer en donnant un nom de document

Enregistrer puis quitter

Quitter vi

Quitter sans enregistrer