9

Vim имеет удобную клавишу Ctrl-N, которая автоматически дополняет слово под курсором со словом в текущем файле или любом включенном файле. Если после того, как я включу библиотеку буста, эта функция станет абсолютно бесполезной, потому что для чтения целых включений буста требуются десятки секунд, и я действительно не хочу завершать что-либо, что определено в бусте. Итак, как я могу сказать vim игнорировать каталог /usr /include /boost при поиске включаемых файлов? О, как я могу установить опцию «включить», чтобы игнорировать любой #include <boost /.*>?

2 ответа2

15

Опция, которую вы ищете, является «полной», но она не определяет гранулярность, которую вы запрашиваете. Все, что вы можете сделать, это указать, нужно ли сканировать включенные файлы. Чтобы отключить проверку всех включенных файлов, вы можете

set complete-=i

В противном случае, установка 'include' чтобы игнорировать повышение, может быть вашим лучшим вариантом.

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

Обратите внимание, что, как я уже упоминал в моем другом комментарии, вы не должны использовать " для указания опции, так как это символ комментария Vim. Вместо этого вам нужно бежать из пробелов.

1

Хорошо, я нашел ответ на вторую часть:

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .