6.28. Vim-8.0

Le paquet Vim contient un puissant éditeur de texte.

6.28.1. Installation de VIM

Nous allons effectuer une compilation croisée de Vim pour pouvoir avoir un éditeur de texte dans /tools. Vim n'est techniquement pas nécessaire dans le système temporaire, en cela qu'il n'est pas là pour satisfaire la dépendance d'un paquet dans le système final, mais nous pensons qu'un éditeur de texte est un outil extrêmement utile à avoir.

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

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

Le script configure est tel qu'il s'arrête au premier signe d'une compilation croisée. Améliorez cela en initialisant les valeurs en cache de divers tests avec la commande suivante :

cat > src/auto/config.cache << "EOF"
vim_cv_getcwd_broken=no
vim_cv_memmove_handles_overlap=yes
vim_cv_stat_ignores_slash=no
vim_cv_terminfo=yes
vim_cv_toupper_broken=no
vim_cv_tty_group=world
vim_cv_tgent=zero
EOF

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

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

Préparez la compilation de Vim :

./configure \
    --build=${CLFS_HOST} \
    --host=${CLFS_TARGET} \
    --prefix=/tools \
    --enable-gui=no \
    --disable-gtktest \
    --disable-xim \
    --disable-gpm \
    --without-x \
    --disable-netbeans \
    --with-tlib=ncurses

Voici la signification des nouvelles options de configure :

--enable-gui=no --disable-gtktest --disable-xim --disable-gpm --without-x --disable-netbeans

Ces options évitent que Vim n'essaye de se lier à des bibliothèques qui pourraient être sur l'hôte mais qui n'existeront pas dans l'environnement de construction temporaire.

--with-tlib=ncurses

Dit à Vim d'utiliser Ncurses comme bibliothèque de terminal.

Compilez le paquet :

make

Installez le paquet :

make -j1 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 /tools/bin/vi

Créez un vimrc temporaire pour le faire fonctionner plus comme il devrait le faire. Ceci est expliqué plus en détail dans le chapitre du système final :

cat > /tools/etc/vimrc << "EOF"
" Begin /tools/etc/vimrc

set nocompatible
set backspace=2
set ruler
syntax on

" End /tools/etc/vimrc
EOF

Des détails sur ce paquet se trouvent sur Section 10.127.3, « Contenu de Vim. »