autocompletar de vim: ¿cómo evitar que vim lea algunos archivos de inclusión?


10

Vim tiene una práctica tecla Ctrl-N que completa automáticamente la palabra debajo del cursor con la palabra en el archivo actual o en cualquier archivo incluido. Si una vez que incluyo la biblioteca de impulso, esta característica se vuelve absolutamente inútil porque lleva decenas de segundos leer todo el impulso incluido y, de todos modos, realmente no quiero completar nada que esté definido en impulso. Entonces, ¿cómo puedo decirle a vim que ignore el directorio / usr / include / boost cuando busque archivos de inclusión? ¿Cómo puedo configurar la opción 'incluir' para ignorar cualquier #include <boost /.*>?

vim 

Respuestas:


16

La opción que está buscando es 'completa' , pero no define la granularidad que está solicitando. Todo lo que puede hacer es especificar si analizar o no los archivos incluidos. Para deshabilitar la exploración de todos los archivos incluidos, puede

set complete-=i

De lo contrario, configurar 'include'para ignorar el impulso puede ser su mejor opción.

set include=^\\s*#\\s*include\ \\(<boost/\\)\\@!

Tenga en cuenta que, como mencioné en mi otro comentario, no debe usar "para especificar la opción, ya que ese es el carácter de comentario de Vim. En cambio, necesitas escapar de los espacios.


1

Ok, encontré la respuesta a la segunda parte:

set include="#include \\(<boost\\)\\@!"

En realidad, acaba de desactivar la opción de inclusión. "es el carácter de comentario de Vim, por lo que esencialmente ejecutó 'set include ='.
jamessan
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.