¿Cómo iniciar vim sin ejecutar / etc / vimrc?

103

En mi servidor Linux en el trabajo, los administradores no instalaron cscope, lo instalé desde la fuente en mi directorio de inicio y lo agregué a $ PATH. El problema es que / etc / vimrc tiene una referencia a / usr / bin / cscope que no existe y cada vez que inicio vim, se queja de eso y tengo que presionar para que ese mensaje desaparezca.

Es interesante que si elimino cscope de mi $ PATH, no obtengo ese comportamiento, por lo que es posible que vim esté probando que cscope existe en algún lugar y solo luego ejecute la configuración de cscope, ¡pero luego se equivoca!

Entonces mi pregunta es: ¿puedo configurar algo en mi .vimrc para que no obtenga el / etc / vimrc global? No quiero mover cscope fuera de PATH, ya que no quiero escribir el nombre completo del directorio cada vez que lo ejecuto desde la línea de comandos.

florín
fuente

Respuestas:

77

Desde la página de manual 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 aún desea que se procese su ~ / .vimrc, intente esto:

vim -u ~/.vimrc

Agregue la siguiente línea a ~ / .bashrc (o el archivo equivalente de su shell si no es bash) para que el modificador -u se agregue automáticamente:

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

No podrá agregar algo a ~ / .vimrc para evitar que se lea / etc / vimrc, porque el archivo del sistema se procesa antes que su archivo de usuario (consulte ": help init", sección 3, "Ejecutar comandos Ex, de variables de entorno y / o archivos ").

Steve Simms
fuente
¡Gracias! Esto finalmente me permitió editar un archivo que (por alguna razón) tenía miles de caracteres en una línea y de lo contrario congelaría mi Vim para siempre.
Hubro
96

Desde la página de manual de Vim :

-u {vimrc}

Use los comandos en el archivo {vimrc} para las inicializaciones. Se omiten todas las demás inicializaciones. Use esto para editar un tipo especial de archivos. También se puede utilizar para omitir todas las inicializaciones dando el nombre "NINGUNO". Consulte ": inicialización de ayuda" dentro de vim para obtener más detalles.

Entonces esto debería hacer el trabajo:

vim -u NONE

Debería poder asignarle un alias a su comando normal para el uso diario.

pesado
fuente
1
... pero quiero que se ejecute ~ / .vimrc, pero no / etc / vimrc
florin
3
vim -u ~/.vimrc
heavyd