2008-11-21 20 views
11

¿Cómo le digo el editor Vim de mi ruta de inclusión de archivos para que pueda auto completar los nombres de función cuando se presiona CTRL + N?Vim palabra clave Finalización

Por ejemplo, tengo un programa en C, como a continuación:

#include<stdio.h> 
int main() 
{ 
    sca // here I press control+N, it does not complete to scanf 
} 
+0

estoy usando vim en ventanas – chappar

Respuesta

19

En su .vimrc, añadir los caminos a su .vimrc:

set path+=/usr/include/** 
set path+=/my_include_dir/include 
set path+=/my_include_dir/srclib/apr/** 
set path+=/my_other_include_dir/srclib/apr-util/** 

** means all sub-directories. 
* means all contained directories 
. means all files in the directory of the found file 
+= means prepend to existing path (iirc) 

Puede comprobar los caminos, así abriendo su archivo y luego ingresando

:checkpath 

Esto le dará una lista de ll archivos incluidos que faltan nótese bien No parece manejar directivas de preprocesador, por lo que obtendrá algunos resultados positivos falsos. Ingresando

:checkpath! 

Proporcionará una lista completa de los archivos incluidos y los que faltan.

16

Además, es importante tener en cuenta que hay muchas funciones de finalización.

^x ^o = "omnicomplete" 
^x ^i = "included-files completion" 
^x ^f = "path completion" 
^x ^l = "Complete this line using one that looks the same" 

ver

:help ins-completion 

por más.

3

Vim también podría conocer la ruta, si los archivos están en una ubicación estándar. < C-n > utiliza la opción 'completa' y la bandera i escanea los archivos incluidos. Para añadir i a 'completo':

set complete+=i

también se puede obtener un archivo de etiquetas de los símbolos que desea cumplimentado, que se pueden utilizar con:

set complete+=t