Sur les systèmes basés sur Debian, le système alternatif gère à la fois le vi
et l' vim
exécutable. Donc, si vim
est installé et que vous exécutez vi
, vous obtenez également vim
, ce que je trouve très agréable, car je déteste absolument le classique vi
.
Sur Fedora 17 "Beefy Miracle", le système alternatif ne gère évidemment aucun des deux. Mais il y a un fichier de profil dans /etc/profile.d/vim.sh
lequel ajoute un alias de shell à faire vi
exécuter vim
. Pour une raison quelconque, il ne le fait pas pour les utilisateurs du système, y compris root.
Mais même si je configure manuellement un alias pour tous les utilisateurs, lorsque j'appelle, sudo vi
je commence vi
plutôt par classique vim
. C'est probablement parce que sudo ne démarre pas un shell ou que les fichiers de profil ne sont exécutés que dans des sessions shell interactives.
Ce que je recherche maintenant, c'est un moyen de désinstaller vi
complètement Classic pour créer un lien symbolique qui survit même aux mises à jour du système. Comment supprimer Classic vi
mais pas vim
sur Fedora 17? Ou existe-t-il encore un meilleur moyen?
Mise à jour : Avec yum provides vi
j'ai découvert que vi
c'est fourni par le paquet vim-minimal
. Mais je ne peux pas simplement le supprimer car il supprime automatiquement le paquet sudo
avec lui. Même si je le supprime et que j'essaie de réinstaller sudo
par la suite, il vim-minimal
est à nouveau installé en tant que dépendance.
Mise à jour : comme demandé, sortie de rpm -qf /usr/bin/vi
:
vim-minimal-7.3.444-1.fc17.x86_64
Et ls -l /usr/bin/vi
:
-rwxr-xr-x. 1 root root 782248 13. Feb 2012 /usr/bin/vi
rm /usr/bin/vi; ln -s /usr/bin/vim /usr/bin/vi
. Pas une réponse car je trouverais personnellement un meilleur moyen (ou taper vim si je voulais vim).vim-minimal
package est mis à jour?/usr/bin/vi
lien symbolique (vers quoi) ou un fichier standard sur Fedora? Si un fichier normal, de quel paquet?ls -l /usr/bin/vi
etrpm -qf /usr/bin/vi
.Réponses:
Vous êtes
vi
Vim, mais invoqué en tant quevi
, il passe donc en mode de compatibilité historique. L'action recommandée est que si vous voulez exécuter Vim et non vi, exécutezvim
et nonvi
. Cependant, si vous souhaitezvi
toujours exécuter Vim sur chaque compte du système, remplacez-le dans/usr/local/bin
:la source
sudo ln -s /usr/bin/vim /usr/local/bin/vi
. Mais vous devez ajouter/usr/local/bin
sur le côté le plus à gauche de laDefaults secure_path="…"
configuration dansvisudo
, sinon le lien symbolique ne sera pas trouvé.cat >/usr/local/bin/vi
(noncat >/usr/local/bin
)? Voulez-vous direchmod 755 /usr/local/bin/vi
(non.../vim
)?/usr/local/sbin/vi
.# echo 'alias vi="vim"' >> /etc/bashrc'
ou# alternatives --install /usr/bin/vi vi /usr/bin/vim 900
la source
vim-minimal
package est mis à jour?.bashrc
est une bonne pratique ... pour moi @llua a donné une bonne réponseFYI récent fedora (au moins depuis 18) installe cet alias globalement
/etc/profile.d
une foisvim-enchanced
installé.la source