Chapitre 3. Vim : un éditeur de texte

Un outil de base sous Linux
Installer et configurer Vim
Se servir de vim
Editer un fichier de configuration Unix

Un outil de base sous Linux

L'éditeur de texte est un outil de base sous Linux. Il sert notamment à modifier les fichiers de configuration du système. Les deux éditeurs de texte les plus connus et les plus utilisés sont Vim et Emacs. Et comme je ne connais pas Emacs... et bien je vais vous expliquer comment fonctionne Vim !

VIM signifie ViIMproved ; il s'agit d'une version améliorée du classique vi. Il est très complet, peu gourmand en ressources, et fait très bien la coloration syntaxique. Il n'est pas facile à maîtriser au début... mais vous serez rapidement conquis !

Installer et configurer Vim

Il va falloir installer les paquets permettant de faire marcher vim. Pour l'instant, vous ne savez pas encore installer des paquets ; je vous propose donc de suivre les instructions suivantes sans trop comprendre.

Méthode 21 CDs / 3 DVDs

Comme je ne vous ai pas encore appris à installer des paquets, je vous propose de taper sans comprendre la commande suivante, qui va installer le paquet vim :

# apt-get install vim

Méthode netinstall

Si vous avez déja une connexion à Internet fonctionnelle, procédez comme pour la méthode des CDs :

# apt-get install vim

Sinon, le paquet vim n'étant pas sur le CD netinstall de debian, on va pour l'instant se borner à utiliser vim-tiny, une version minimaliste de vim, qui est préinstallée. Par contre, vim-tiny ne reconnaît pas toutes les options du fichier de configuration de vim. Vous pouvez donc sauter la section suivante et passer directement à la section Se servir de vim. On procèdera à l'installation de vim à la fin du chapitre Le système de gestion des paquets Debian.

Installation du fichier de configuration

Remplacez le fichier de configuration installé par défaut par mon fichier de configuration :

# cp ~/fichiers-config/vimrc /etc/vim/

ou, si vous ne suivez pas ma formation depuis le début :

% wget http://formation-debian.via.ecp.fr/fichiers-config/vimrc
# mv vimrc /etc/vim/

Ce fichier deviendra le fichier de configuration de vim par défaut pour tous les utilisateurs. Un utilisateur pourra aussi utiliser son propre fichier de configuration en le mettant dans son home (même nom mais précédé d'un point).

Se servir de vim

Pour éditer un fichier texte existant ou créer un nouveau fichier texte, il suffit de taper :

# vim nom_du_fichier

Figure 3.1. Vim

Vim

Tout d'abord, il faut comprendre qu'il existe plusieurs modes de fonctionnement :

  • Le mode Commande, dans lequel vous vous trouvez quand vous ouvrez vim. Dans ce mode, vous tapez des commandes... que nous verrons plus loin ! Si vous êtes dans un autre mode et que vous voulez revenir au mode commande, tapez Echap.

  • Le mode Insertion auquel on accède par la touche Inser. L'indicateur -- INSERT -- apparaît alors en bas de l'écran. Dans ce mode, vous insérez du texte classiquement.

  • Le mode Remplacement auquel on accède en appuyant une deuxième fois sur Inser. L'indicateur -- REPLACE -- apparaît alors en bas de l'écran. Dans ce mode, le texte entré remplace le texte présent sous le curseur.

  • Le mode Visuel auquel on accède par la touche v depuis le mode Commande. L'indicateur -- VISUAL -- apparaît alors en bas de l'écran. Ce mode permet de sélectionner du texte pour y appliquer globalement des commandes.

Figure 3.2. Comment passer d'un mode à un autre ?

Comment passer d'un mode à un autre ?

Voici une liste des commandes les plus utilisées. Il faut bien entendu être en mode Commande pour les taper :

  • :h pour accéder à l'aide,

  • :w pour enregistrer,

  • :w nom_du_fichier pour faire enregistrer-sous nom_du_fichier,

  • :q pour quitter,

  • :wq pour enregistrer et quitter,

  • :q! pour quitter sans enregistrer les modifications,

  • :r pour inclure le contenu d'un autre fichier,

  • /mot_clef pour faire rechercher un mot (n pour passer à l'itération suivante),

  • :numéro_de_ligne pour aller directement à cette ligne,

  • y nombre_de_lignes y (sans espace) pour copier ce nombre de ligne à partir du curseur (yy pour copier une ligne ou un groupe de mots en mode visuel),

  • d nombre_de_lignes d (sans espace) pour couper ce nombre de ligne à partir du curseur (dd pour couper une ligne en mode commande ou un groupe de mots en mode visuel),

  • p pour coller après le curseur,

  • u pour annuler la dernière modification. Vous pouvez appuyer plusieurs fois sur u pour annuler les dernières modifications.

  • Ctrl-r pour annuler la dernière annulation. Vous pouvez renouveler la combinaison de touches pour annuler les annulations antérieures.

  • :%s/toto/tata/g pour remplacer toutes les occurrences de la chaîne de caractères toto par la chaîne de caractère tata.

Editer un fichier de configuration Unix

Sous Unix, et en particulier sous Linux, la configuration du système et des programmes se fait très souvent en éditant des fichiers textes qui contiennent des paramètres de configuration. Ces paramètres de configuration suivent une certaine syntaxe, différente pour chaque programme, et que l'utilisateur doit connaître. Généralement, il y a une instruction de configuration par ligne de texte. Le système ou le programme va alors lire son ou ses fichier(s) de configuration et s'adapter à la configuration demandée.

Presque tous les programmes et systèmes Unix sont conçus avec une règle qui dit qu'il ne tient pas compte des lignes du fichier de configuration qui commencent par un certain caractère (souvent #). L'utilisateur peut alors mettre des lignes de commentaires dans le fichier de configuration en commençant ces lignes par le caractère particulier. Il peut aussi facilement activer ou désactiver une ligne du fichier de configuration en enlevant ou en ajoutant le caractère particulier au début de la ligne. Le fait de désactiver ainsi une ligne de configuration se dit « commenter une ligne » et le fait d'activer ainsi une ligne de configuration se dit « décommenter une ligne ». Ces expressions seront régulièrement utilisées dans la suite de cette formation.

Note

Quand vous éditez un fichier de configuration existant, il est généralement très facile de savoir quel est le caractère particulier : les lignes de commentaires sont nombreuses, contiennent souvent des phrases rédigées et apparaissent normalement en rouge sous vim.