2012-06-06 24 views
279

He estado usando Vim, y me gustaría guardar mi configuración. El problema que tengo es que no puedo encontrar mi archivo .vimrc, y no está en la ubicación estándar /home/user/.vimrc. ¿Cómo puedo encontrar este archivo?¿Dónde está mi archivo .vimrc?

+13

Si no está allí, créelo. –

+3

Mi máquina Ubuntu lo tenía en un archivo llamado '/ usr/share/vim/vimrc'. – ckjbgames

Respuesta

315

Necesita crearlo. En la mayoría de las instalaciones que he usado, no se ha creado de forma predeterminada.

Por lo general, lo crea como ~/.vimrc.

+0

Consulte la respuesta @ philia-fan, la respuesta es mejor – aturegano

261

:scriptnames enumere todos los archivos .vim que Vim cargó para usted, incluido el archivo .vimrc.

:e $MYVIMRC abierta & editar el .vimrc actual que está utilizando, a continuación, utilizar Ctrl +G para ver la ruta en la barra de estado.

+29

Una respuesta mucho mejor que la aceptada. –

+5

@MorganWilde No necesariamente, ': scriptnames' y': e $ MYVIMRC' devuelven salidas en blanco para mí. – Rohmer

+0

igual que lo que @Rohmer dijo aquí. –

4

Éstos son algunos consejos más:

  • En Arch Linux el mundial está en /etc/vimrc. Hay algunos comentarios allí con detalles útiles.

  • Como el nombre del archivo comienza con ., está oculto a menos que use ls -a para mostrar TODOS los archivos.

  • escribiendo en :version mientras está en Vim le mostrará un montón de información interesante, incluida la ubicación del archivo.

  • Si no está seguro de qué ~/.vimrc significa look at this question.

16
:echo($MYVIMRC) 

le dará la ubicación del archivo de .vimrc.

:e $MYVIMRC 

lo abrirá.

+1

Retiro lo siguiente: -bash: error de sintaxis cerca del token inesperado '$ MYVIMRC' –

+0

@YannisDran - Uhmm, ¿qué? – Rook

+0

@Idigas Estaba escribiendo: echo (xxx) en mi ventana de comandos, pero me di cuenta ahora que quería escribir esto en el editor vim. Sin embargo, aunque: e xxx funciona, el: echo (xxx) no. Dice E121 Variable indefinida: xxx E15: Expresión inválida: ($ xxx) –

22

Como información adicional, sobre todo en MacOS, la .vimrc se encuentra en dir:

/usr/share/vim/.vimrc 
+0

eso es todo! gracias –

+15

Ese es el sistema vimrc. Es mejor editar $ HOME/.vimrc, y crearlo si aún no existe. –

+1

Si el archivo .vimrc no se crea en el directorio principal, vi hace referencia al archivo '/ usr/share/vim/.vimrc' para su uso. – Sandeep

2

He intentado todo lo anterior y no podía encontrar un archivo .vimrc así que tuve que hacer uno.

copié presentar el ejemplo cp vimrc_example.vim ~/.vimrc tuve que crear el archivo, copiando de /usr/share/vim/vim74/vimrc_example.vim a ~/.vimrc. Aquellos donde las instrucciones en el archivo vimrc_example.

Mi solución es para UNIX para otros sistemas operativos, de acuerdo con la documentación de vim, su ruta de destino debe ser el siguiente:

for Unix and OS/2: ~/.vimrc 
    for Amiga: s:.vimrc 
    for MS-DOS and Win32: $VIM\_vimrc 
    for OpenVMS: sys$login:.vimrc 
1

vimrc archivo en Ubuntu (12.04): Intenté :scriptnames en vim y muestra /usr/share/vim/vimrc y ~/.vimrc.

Pero yo había creado manualmente ~/.vimrc.

59

Respuesta corta:

para crear su vimrc, puesta en marcha vim y realice una de las siguientes opciones:

:e $HOME/.vimrc " on Unix, Mac or OS/2 

:e $HOME/_vimrc " on Windows 

:e s:.vimrc  " on Amiga 

Introduzca los ajustes que desee, y guardar el archivo.

Tenga en cuenta que la existencia de este archivo deshabilitará la opción compatible. Ver abajo para más detalles.

Respuesta larga:

Hay dos tipos de vimrc:

  • el vimrc usuario en $HOME
  • el sistema vimrc en $VIM (en los sistemas Amiga, s:.vimrc se considera una usuario vimrc)

El archivo vimrc de usuario a menudo no existe hasta que lo haya creado el usuario. Si no puede encontrar $HOME/.vimrc (o $HOME/_vimrc en Windows), entonces puede, y probablemente debería, simplemente crearlo.

El vimrc sistema normalmente debe dejarse sin modificar y se encuentra en el directorio $VIM ($VIM no se podrá formular en su concha, pero siempre se establece dentro de vim.) El vimrc sistema no es un buen lugar a mantener su configuraciones personales. Si modifica este archivo, sus cambios pueden sobrescribirse si alguna vez actualiza vim. Además, los cambios aquí afectarán a otros usuarios en un sistema multiusuario.

De :help vimrc:

Un archivo que contiene comandos de inicialización se llama un archivo "vimrc". Cada línea en un archivo vimrc se ejecuta como una línea de comando Ex. Es a veces también denominado archivo "exrc". Son del mismo tipo del archivo , pero "exrc" es lo que Vi siempre usó, "vimrc" es un nombre específico de Vim . Ver también | vimrc-intro |.

lugares para su inicializaciones personales:

Unix   $HOME/.vimrc or $HOME/.vim/vimrc 
    OS/2   $HOME/.vimrc, $HOME/vimfiles/vimrc 
        or $VIM/.vimrc (or _vimrc) 
    MS-Windows  $HOME/_vimrc, $HOME/vimfiles/vimrc 
        or $VIM/_vimrc 
    Amiga   s:.vimrc, home:.vimrc, home:vimfiles:vimrc 
        or $VIM/.vimrc 

Los archivos se buscan en el orden especificado anteriormente y sólo se lee la primera una que se encuentra.

(Mac OS X cuenta como Unix para lo anterior.)

Tenga en cuenta que la mera existencia de un vimrc usuario va a cambiar el comportamiento de vim desactivando la opción compatible.De :help compatible-default:

Cuando se inicia Vim, la opción 'compatible' está activada. Esto se usará cuando Vim comience sus inicializaciones. Pero tan pronto como se encuentre un archivo vimrc de usuario, o un archivo vimrc en el directorio actual, o la variable de entorno "VIMINIT" esté configurada en , se establecerá en "no compatible". Esto tiene el efecto secundario de configurar o restablecer otras opciones (ver 'compatible'). Pero solo se cambiarán las opciones que tienen sin configurar o restablecer.

+2

Ahora, esta es una buena respuesta. – Dinei

5

Me gustaría compartir cómo configuro mostrando el número de línea como predeterminado en mac.

  1. En la terminal, escriba cd. Esto le ayudará a ir a la carpeta de inicio.
  2. En terminal, escriba vi .vimrc. Esto creará un archivo de sistema vimrc vacío que desea usar.
  3. En el archivo, escriba set number, luego presione esc en el teclado y escriba :wq. Esto establecerá el número de línea que se muestra en el archivo de configuración predeterminado vimrc y lo guardará.
  4. vi algo para ver si esto funciona. De lo contrario, intente reiniciar el terminal por completo.

Si en el terminal, escriba en cd /usr/share/vim/ ir a esa carpeta a continuación, escriba en ls, se puede ver directamente en un archivo llamado vimrc. Pero es un archivo del sistema que dice solo lectura. Siento que no es una buena idea intentar modificarlo. Así que sigue los pasos anteriores para crear una vimrc por ti mismo es mejor. Funcionó para mí

+0

Una cosa que necesitaba cambiar a lo anterior para mi instalación de CentOS7: después del paso 1, escriba "cd username". – HoldOffHunger

9

Por alguna razón, estas respuestas no funcionaron para mí. Esto es lo que funcionó para mí en su lugar:

En vim, el comando :version que los caminos del sistema y vimrc de usuario y archivos gvimrc (entre otras cosas) da y la salida se ve algo como esto:

system vimrc file: "$VIM/vimrc" 
    user vimrc file: "$HOME/.vimrc" 
    user exrc file: "$HOME/.exrc" 
system gvimrc file: "$VIM/gvimrc" 
    user gvimrc file: "$HOME/.gvimrc" 

el que usted quiere es user vimrc file: "$HOME/.vimrc"

Así que editar el archivo: vim $HOME/.vimrc

Fuente: http://vim.wikia.com/wiki/Vimrc

+2

No entiendo cómo las respuestas existentes no funcionaron para usted cuando, de hecho, la solución que usted propuso ya está cubierta por ellas. [Esta respuesta] (https://stackoverflow.com/a/34005877/1743811) menciona '$ HOME/.vimrc' y [la respuesta superior] (https://stackoverflow.com/a/10921485/1743811) menciona' ~/.vimrc' que es lo mismo que '$ HOME/.vimrc'. – doubleDown

+0

Totalmente de acuerdo con usted. Lo que quise decir se perdió cuando mi respuesta fue editada –

0

De cmd: (ventanas):

C \ Users \> Usted vim foo.txt

Ahora, en vim, ingrese al modo de comandos escribiendo: ":" (es decir, cambiar + ";")

:tabedit $HOME/.vimrc 
0

abierto Vim, en tipo de modo normal;

:echo $VIM