2010-07-30 29 views
8

Durante los últimos meses, he creado una serie de archivos con comandos vim para generar automáticamente código repetitivo para mis proyectos. Me permitió trabajar más rápido.Ejecutar el script vim desde la línea de comandos de vim

Sin embargo, la única forma en que sé cómo ejecutar estos scripts es asignándolos a las combinaciones de teclas en ~/.vimrc. Solo hay tantas claves que puedo reasignar.

¿Hay alguna forma de ejecutar estos scripts desde la línea de comandos : con unas pocas teclas?

Por ejemplo, tengo una secuencia de comandos unit_test_cpp.vim, que crea un archivo cpp de prueba de unidad repetitiva. Me gustaría ser capaz de escribir

:utc 

o alguna otra combinación de letras simples con una simple tecla de acceso para ejecutar este script en mi archivo abierto.

Respuesta

8

Usted puede utilizar la función de command de vim. En su archivo unit_test_cpp.vim deberá añadir algo como esto:

command Utc call CreateUnitTests() 

Ahora cuando se escribe :Utc va a llamar a su función. La única limitación es que su comando debe comenzar con una letra mayúscula.

2

¿Guión o función? Si se trata de una función, tratar

:call FunctionName() 
+0

Son archivos con comandos de vim. Puedo ejecutarlos con el comando tan. –

+0

Cada uno de los comandos de ese modo está envuelto por una función en .vimrc. Entonces, ¿podría usar el método: invocar FunctionName() para ejecutar esas funciones desde .vimrc? –

+1

básicamente. si tuvieras la función ! Foo() source 'foo.vim' endfunction usted podría: llamar a Foo() y debería originar foo.vim, o puede mapear el comando como rq sugiere a continuación para evitar la: llamada ... – Doon

16

abierto Vim e introduzca la siguiente:

:source /path/to/vim/file/name.vim 
0
:run file.vim 

es como ": fuente" pero no es necesario el camino, buscar en runtimepath.

Para runtimepatch Linux es

$HOME/.vim, 
$VIM/vimfiles, 
$VIMRUNTIME, 
$VIM/vimfiles/after, 
$HOME/.vim/after 
Cuestiones relacionadas