web-dev-qa-db-fra.com

Vim pour remplacer Vi

Les gars, tout le monde sait comment changer l'éditeur de console Linux de vi en vim chaque fois que nous exécutons vi? J'utilise Ubuntu et Fedora Core

29
Funky81

Tout d’abord, assurez-vous que les packages Vim appropriés sont installés. La valeur par défaut sur de nombreux systèmes consiste à installer un package Vim minimal plus proche de la fonctionnalité Vi.

Sur les systèmes Red Hat (RHEL, CentOS, Fedora), vous avez besoin du package optimisé pour vim, par exemple à partir d'un système CentOS que j'ai installé:

vim-common-7.0.109-4.el5_2.4z
vim-enhanced-7.0.109-4.el5_2.4z
vim-minimal-7.0.109-4.el5_2.4z

'common' contient les bibliothèques communes utilisées par tous les packages Vim. 'minimal' correspond aux exécutables de l'éditeur plain vi tels qu'ils sont installés par défaut.

Sur les systèmes basés sur Debian (comme Ubuntu), vous avez besoin de 'vim'. Par exemple:

ii  vim                  2:7.2.079-1ubuntu5  Vi IMproved - enhanced vi editor
ii  vim-common           2:7.2.079-1ubuntu5  Vi IMproved - Common files
ii  vim-runtime          2:7.2.079-1ubuntu5  Vi IMproved - Runtime files
ii  vim-tiny             2:7.2.079-1ubuntu5  Vi IMproved - enhanced vi editor - compact version

Ceux-ci devraient être installés par défaut. Sur Debian/Ubuntu, vous pouvez mettre à jour l'éditeur de système par défaut pour tous les utilisateurs:

Sudo update-alternatives --config vi

Sélectionnez la version souhaitée dans le menu de sélection. Les scripts de post-installation du paquet vim devraient déjà l'avoir mis à jour. Utilisez --config editor pour modifier l'éditeur par défaut pour tous les utilisateurs du système (Ubuntu 9.04 par défaut est nano, par exemple).

Enfin, pour chaque distribution, utilisateur par utilisateur, configurez un alias dans le profil utilisateur. Par exemple, si le shell est bash, éditez ~ nomutilisateur/.bashrc:

alias vi="vim"

En outre, vous pouvez vérifier le vimrc du système (/ etc/vimrc, généralement) pour voir si le mode de compatibilité est activé.

set cp
set compatibility

Va dire à Vim de se comporter davantage comme un vi-old-school Vi, peu importe comment vous avez géré en utilisant Vim per ci-dessus. Changez en 'nocp' ou 'nocompatibility' pour rendre Vim plus utile.

34
jtimberman

Dans votre .bashrc:

alias vi=vim
29
Al.

S'il s'agit d'un système Debian ou Ubuntu et que vous souhaitez appliquer ce changement à l'ensemble du système, vous devez utiliser update-alternatives (spécifier avec les options --config editor et vous devriez être en or).

10
mwalling

Si vous avez besoin des modifications uniquement pour votre identifiant et dans une session de terminal: alias vi à vim comme suggéré par AI.

Si vous souhaitez une modification à l'échelle du système sur votre machine, créez un lien virtuel vers vim dans /usr/local/bin :

Sudo ln -s `which vim` /usr/local/bin/vi

Remarque: Les programmes peuvent ignorer tous les alias sur vi en exécutant command vi ou \vi au lieu de vi.

9
nagul

Certains utilisateurs utilisent le mode old school de vim: s où il se comporte comme suit: vi.

vérifiez si votre .vimrc contient

set nocompatible

Cela m’a dupé plusieurs fois ...

3
Johan

Sur les systèmes Debian, lorsque vous exécutez vim-tiny par défaut en tant que "vi", un fichier RC différent est utilisé - /etc/vim/vimrc.tiny.

Pour que vi soit plus semblable à vim, modifiez /etc/vim/vimrc.tiny et changez la ligne:

set compatible

lire:

set nocompatible
1
user22083

Je l'ai fait comme ça dans .profile sur archlinux en utilisant bash :

if [ -f "/usr/bin/vim" ];
 alias vi="vim"
else
 alias vim="vi"
fi

export EDITOR=vim

Donc, vim est toujours présent correctement ou en tant que vi .

0
user373230

Si vous utilisez du poisson , insérez la ligne ci-dessous dans ~/.config/fish/config.fish:

alias vi="vim"
0
Zhang Buzz