web-dev-qa-db-fra.com

Comment démarrer vim sans exécuter / etc / vimrc?

Sur mon serveur Linux au travail, les administrateurs n’ont pas installé cscope. Je l’ai installé à partir du code source dans mon répertoire personnel et l’a ajouté à $ PATH. Le problème, c'est que/etc/vimrc contient une référence à/usr/bin/cscope qui n'existe pas et chaque fois que je lance vim, il s'en plaint et je dois faire pression pour que ce message disparaisse.

Il est intéressant de noter que si je supprime cscope de mon $ PATH, je n’obtiens pas ce comportement - il est donc possible que vim teste que cscope existe quelque part et n’exécute alors que la configuration de cscope - mais il se trompe!

Ma question est donc la suivante: puis-je configurer quelque chose dans mon fichier .vimrc pour qu’il ne source pas le fichier global/etc/vimrc? Je ne veux pas déplacer cscope hors de PATH, car je ne veux pas taper le nom de répertoire complet chaque fois que je l'exécute à partir de la ligne de commande.

102
florin

Depuis la page de manuel de Vim :

-u {vimrc}

Use the commands in the file {vimrc} for initializations. All the other
initializations are skipped. Use this to edit a special kind of files.
It can also be used to skip all initializations by giving the name "NONE".
See ":help initialization" within vim for more details.

Si vous voulez toujours que votre ~/.vimrc soit traité, essayez ceci:

vim -u ~/.vimrc

Ajoutez la ligne suivante à ~/.bashrc (ou au fichier équivalent de votre shell, si ce n'est pas bash) pour que le commutateur -u soit ajouté automatiquement:

alias vim="vim -u ~/.vimrc"

Vous ne pourrez pas ajouter quelque chose dans ~/.vimrc pour empêcher la lecture de/etc/vimrc, car le fichier système est traité avant votre fichier utilisateur (voir ": help init", section 3, "Execute Ex commandes, à partir de variables d’environnement et/ou de fichiers ").

75
Steve Simms

Depuis la page de manuel de Vim :

-u {vimrc}

Utilisez les commandes du fichier {vimrc} pour les initialisations. Toutes les autres initialisations sont ignorées. Utilisez ceci pour éditer un type spécial de fichiers. Il peut également être utilisé pour ignorer toutes les initialisations en donnant le nom "NONE". Voir ": initialisation de l'aide" dans vim pour plus de détails.

Donc, cela devrait faire le travail:

vim -u NONE

Vous devriez être capable d'alias ceci à votre commande normale pour un usage quotidien.

94
heavyd