vim, l'éditeur vi amélioré (Vi IMproved)
Description
vim est une version améliorée de l’éditeur vi, d’où son nom : Vi IMproved. Il en reprend toutes les commandes et fonctionnalités, et lui apporte des progrès très significatifs :
-
possibilité d’annulations multiples (multi-level undo),
-
coloration syntaxique,
-
multi-fenêtrage horizontal ou vertical,
-
mise en surbrillance des chaînes recherchées,
-
mise en surbrillance de toutes les occurrences du mot courant,
-
possibilité de plier et de déplier du texte (fold),
-
etc.
vim a été créé en 1988 par Bram Moolenaar, et a fait son apparition publique en 1991, avec la version 1.14. La signification initiale de son nom était Vi IMitation, mais elle a été transformée en Vi IMproved en 1992.
Principe de fonctionnement
1. Généralités
Le principe de fonctionnement de vim est le même que celui de vi, et ses commandes de bases sont identiques. Pour en avoir un aperçu, veuillez vous reporter au chapitre précédent sur vi.
Quant aux fonctionnalités spécifiques de vim qui ne concernent pas les expressions régulières, nous ne les détaillerons pas ici, bien qu’elles soient particulièrement intéressantes et qu’elles apportent un grand confort d’utilisation.
Les lecteurs intéressés pourront étudier la documentation qui lui est consacrée :
-
la page de manuel de vim,
-
la commande d’apprentissage vimtutor,
-
les livres qui lui sont consacrés,
-
les informations données sur le site de l’auteur : http://moolenaar.net/
2. Spécificités
a. Avertissement
On ne s’intéressera dans cet ouvrage qu’aux spécificités de vim (par rapport à vi) concernant les expressions régulières. On notera les suivantes :
-
la possibilité de mettre en surbrillance les chaînes correspondant aux expressions recherchées ;
-
la reconnaissance des caractères exprimés sous la forme \c, tels qu’on peut les rencontrer en langage C : \t pour une tabulation, \n pour un saut de ligne (newline), \b pour un retour arrière (backspace), etc. ;
-
la possibilité d’utiliser les expressions régulières étendues.
Nous ne verrons dans ce chapitre que les principales fonctionnalités de vim relatives aux expressions régulières étendues car les différentes syntaxes disponibles sont très nombreuses. Le lecteur curieux pourra les étudier de façon plus approfondie grâce à la commande :
:help magic
Les fonctionnalités de vim identiques à celles de vi seront quant à elles traitées ici comme de simples rappels.
b. Mise en surbrillance
vim possède un mode...
Les expressions régulières basiques
1. Utilisation du caractère ^
Le caractère ^ en début d’expression signifie un début de ligne.
Si l’on recherche spécifiquement le caractère ^ en début d’expression, il faudra lui enlever son caractère générique en le faisant précéder d’un antislash, afin de ne pas le confondre avec le spécificateur de début de ligne.
2. Utilisation du caractère $
Le caractère $ en fin d’expression signifie une fin de ligne.
Si l’on recherche spécifiquement le caractère $ en fin d’expression, il faudra lui enlever son caractère générique en le faisant précéder d’un antislash, afin de ne pas le confondre avec le spécificateur de fin de ligne.
3. Utilisation du caractère .
Le caractère . dans une expression sert à désigner n’importe quel caractère, à l’exception du saut de ligne (newline).
Si l’on recherche spécifiquement le caractère . dans une ligne, il faudra lui enlever son caractère générique en le faisant précéder d’un antislash.
4. Utilisation des caractères [ ]
Les caractères [ et ] servent à désigner un caractère quelconque parmi un ensemble spécifié...
Les expressions régulières étendues
1. Utilisation du caractère ^
Le caractère ^ en début d’expression signifie un début de ligne.
Si l’on recherche spécifiquement le caractère ^ en début d’expression, il faudra lui enlever son caractère générique en le faisant précéder d’un antislash, afin de ne pas le confondre avec le spécificateur de début de ligne.
2. Utilisation du caractère $
Le caractère $ en fin d’expression signifie une fin de ligne.
Si l’on recherche spécifiquement le caractère $ en fin d’expression, il faudra lui enlever son caractère générique en le faisant précéder d’un antislash, afin de ne pas le confondre avec le spécificateur de fin de ligne.
3. Utilisation du caractère .
Le caractère . dans une expression sert à désigner n’importe quel caractère, à l’exception du saut de ligne (newline).
Si l’on recherche spécifiquement le caractère . dans une ligne, il faudra lui enlever son caractère générique en le faisant précéder d’un antislash.
4. Utilisation des caractères [ ]
Les caractères [ et ] servent à désigner un caractère quelconque parmi un ensemble spécifié sous forme d’énumération ou sous forme de plage contiguë, ou encore sous toute combinaison de ces deux possibilités.
À l’intérieur des crochets, les caractères spéciaux perdent leur...