Incluye en vimrc?


11

¿Es posible incluir archivos externos para obtener en el archivo vimrc?

¿Es tan simple como simplemente agregar source somefile?

Respuestas:


15

A diferencia :source, :runtimeno necesita una ruta absoluta para trabajar. Es mucho mejor que :sourcepara construir configuraciones portátiles.

Ver :help :runtime.

En el siguiente ejemplo, le decimos a Vim que busque un vimrcarchivo en los directorios dados por la runtimepathvariable. Dado que ~/.vim/es el primer directorio de la lista, runtime vimrcfunciona igual que :source ~/.vim/vimrcsin la necesidad de proporcionar una ruta dependiente del sistema.

En ~/.vimrc:

runtime vimrc

4

La respuesta debe depender de lo que desee dispersar en varios archivos. Hay algunas formas diferentes de tener una configuración en varios archivos. Nota: la diferencia entre runtimey sourcese ha descrito, no volveré a decir nada sobre este tema.

Entonces. También deberás tener en cuenta el qué. Hoy en día, rara vez tenemos necesidad de usar soo rude .vimrc. Sin embargo, todavía lo hago en solo dos casos:

  • asegúrese de que se cargue un complemento que no sea de carga automática antes del final de .vimrc (para definir otras cosas que dependen de este complemento)
  • cargar configuraciones específicas del sistema operativo

Para los otros casos:

  • para las definiciones de funciones, hay complementos de carga automática;
  • para resaltar sintaxis, esquemas de colores, hay archivos dedicados en los directorios del mismo nombre;
  • para configuraciones específicas de tipo de archivo, hay complementos de tipo de archivo (tener comandos automáticos en el archivo .vimrc es una solución pobre, una que no escala);
  • para configuraciones específicas del proyecto, hay complementos como local_vimrc;
  • para cualquier otro conjunto de asignaciones o características complejas, hay complementos donde podemos reagrupar definiciones temáticas;

Al final, tengo en mi .vimrc:

  • opciones globales establecidas con :set
  • el procedimiento que necesita el administrador de complementos que estoy usando
  • varias configuraciones para los complementos que uso (anulo las combinaciones de teclas predeterminadas en .vimrc)
  • y algunas cosas (demasiadas en realidad) que he estado arrastrando durante 20 años.


2

Como complemento, tengo estas líneas en mi vimrc que pueden interesarle. Lo uso para obtener un vimrc local que no guardo en mi control de origen de archivos de puntos:

" Source a local vimrc {{{
    if has('win32')
        let $MYLOCALVIMRC = $HOME . "/_local.vim"
    else
        let $MYLOCALVIMRC = $HOME . "/.local.vim"
    endif

    if filereadable($MYLOCALVIMRC)
        source $MYLOCALVIMRC
    endif
" }}} 

La primera parte que define el nombre del archivo a la fuente puede no ser interesante para usted, pero la segunda parte, que verifica si el archivo puede obtenerse antes de obtenerlo, podría ser interesante.

Tenga en cuenta que :h sourcedice:

Lea los comandos Ex de {archivo}. Estos son comandos que comienzan con un ":"

Esto le permitirá obtener un archivo que contiene vimscript, pero no puede obtener directamente un archivo que contenga otro idioma con este método, incluso si la primera línea contiene el shebang correcto ( #!/bin/...)

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.