10.85. Vim-7.4

Le paquet Vim contient un puissant éditeur de texte.

10.85.1. Installation de Vim

[Astuce]

Alternatives à Vim

Si vous préférez un autre éditeur—comme Emacs, Joe, ou Nano—merci de vous référer à http://cblfs.cross-lfs.org/index.php/Category:Text_Editors pour des instructions d'installation.

Le correctif suivant incorpore toutes les mises à jour de la branche 7.4 issue des développeurs de Vim :

patch -Np1 -i ../vim-7.4-branch_update-1.patch

Modifiez l'emplacement par défaut du fichier de configuration vimrc vers /etc :

echo '#define SYS_VIMRC_FILE "/etc/vimrc"' >> src/feature.h

Préparez la compilation de Vim :

CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" \
  ./configure --prefix=/usr \
    --enable-multibyte

Voici la signification des options de configure :

--enable-multibyte

Ce commutateur optionnel mais hautement recommandé inclut le support pour l'édition de fichiers comprenant des codages de caractères multioctets. Ceci est nécessaire dans le cas d'une utilisation d'une locale avec un ensemble de caractères multi-octets. Ce commutateur peut aussi être utile pour avoir la capacité d'éditer des fichiers créés initialement avec des distributions Linux comme Fedora qui utilise UTF-8 comme ensemble de caractères par défaut.

Compilez le paquet :

make

Pour tester les résultats, exécutez : make test. Néanmoins, cette suite de tests affiche beaucoup de données binaires à l'écran, ce qui peut provoquer des problèmes avec les paramètres du terminal actuel. Vous pouvez résoudre cela en redirigeant la sortie vers un fichier journal

Installez le paquet :

make install

Beaucoup d'utilisateurs sont habitués à utiliser vi au lieu de vim. Certains programmes comme vigr et vipw utilisent aussi vi. Créez un lien symbolique pour permettre l'exécution de vim lorsque les utilisateurs entrent habituellement vi et pour permettre aux programmes qui utilisent vi de fonctionner :

ln -sv vim /usr/bin/vi

Par défaut, la documentation de Vim est installée dans /usr/share/vim. Le lien symbolique suivant permet l'accès à la documentation via /usr/share/doc/vim-7.4, le rendant cohérent avec l'emplacement de la documentation pour d'autres paquets :

ln -sv ../vim/vim74/doc /usr/share/doc/vim-7.4

Si un système X Window va être installé sur votre système CLFS, il pourrait être nécessaire de recompiler Vim après avoir installé X. Vim fournit alors une jolie version GUI de l'éditeur qui requiert X et quelques autres bibliothèques pour s'installer. Pour plus d'informations sur ce processus, référez-vous à la documentation de Vim et à la page d'installation de Vim dans CBLFS sur http://cblfs.cross-lfs.org/index.php/Vim.

10.85.2. Configurer Vim

Par défaut, vim est lancé en mode compatible vi. Ceci pourrait être nouveau pour les personnes qui ont utilisé d'autres éditeurs dans le passé. Le paramètre « nocompatible » est inclus ci-dessous pour surligner le fait qu'un nouveau comportement est en cours d'utilisation. Il rappelle aussi à ceux qui voudraient le changer en mode « compatible » qu'il devrait être le premier paramètre dans le fichier de configuration. Ceci est nécessaire car il modifie d'autres paramètres et la surcharge doit survenir après ce paramètre. Créez un fichier de configuration vim par défaut en lançant ce qui suit :

cat > /etc/vimrc << "EOF"
" Début de /etc/vimrc

set nocompatible
set backspace=2
set ruler
syntax on
if (&term == "iterm") || (&term == "putty")
  set background=dark
endif

" Fin de /etc/vimrc
EOF

L'option set nocompatible change le comportement de vim d'une façon plus utile que le comportement compatible vi. Supprimez « no » pour conserver le comportement de l'ancien vi. Le paramètre set backspace=2 permet le retour en arrière après des sauts de ligne, l'indentation automatique et le début de l'insertion. L'instruction syntax on active la coloration syntaxique. Enfin, l'instruction if avec set background=dark corrige l'estimation de vim concernant la couleur du fond de certains émulateurs de terminaux. Ceci permet d'utiliser de meilleurs gammes de couleurs pour la coloration syntaxique, notamment avec les fonds noirs de ces programmes.

La documentation pour les autres options disponibles peut être obtenue en lançant la commande suivante :

vim -c ':options'

10.85.3. Contenu de Vim

Programmes installés: efm_filter.pl, efm_perl.pl, ex (link to vim), less.sh, mve.awk, pltags.pl, ref, rview (link to vim), rvim (link to vim), shtags.pl, tcltags, vi (link to vim), view (link to vim), vim, vim132, vim2html.pl, vimdiff (link to vim), vimm, vimspell.sh, vimtutor et xxd
Répertoire installé: /usr/share/vim

Descriptions courtes

efm_filter.pl

Un filtre pour créer un fichier d'erreurs lisible par vim

efm_perl.pl

Reformatte les messages d'erreur de l'interpréteur Perl pour une utilisation avec le mode « quickfix » de vim

ex

Lance vim en mode ex

less.sh

Un script qui démarre vim avec less.vim

mve.awk

Montre les erreurs de vim

pltags.pl

Crée un fichier de balises pour le code Perl pour une utilisation par vim

ref

Vérifie l'orthographe des arguments

rview

Est une version restreinte de view ; aucune commande shell ne peut être lancée et view ne peut pas être suspendu

rvim

Est une version restreinte de vim ; aucune commande shell ne peut être lancée et vim ne peut pas être suspendu

shtags.pl

Génère un fichier de balises pour les scripts Perl

tcltags

Génère un fichier de balises pour les scripts TCL

view

Lance vim en mode lecture seule

vi

Lien vers vim

vim

Est l'éditeur

vim132

Lance vim avec le mode terminal en 132 colonnes

vim2html.pl

Convertit la documentation Vim en HypterText Markup Language (HTML)

vimdiff

Edite deux ou trois versions d'un fichier avec vim et montre les différences

vimm

Active le modèle d'entrée DEC locator sur un terminal distant

vimspell.sh

Vérifie l'orthographe d'un fichier et génère l'état de la syntaxe qui doit être surlignée dans vim. Ce script exige la vieille commande spell qui n'est fournie ni dans CLFS ni dans CBLFS

vimtutor

Enseigne les touches et les commandes de base de vim

xxd

Crée un hexa du fichier donné ; il peut aussi faire l'inverse et peut donc être utilisé pour corriger du binaire