Я уже написал плагин, чтобы делать именно то, что вам нужно: Indexer .
Он обеспечивает безболезненную автоматическую генерацию тегов для всего проекта (-ов) и поддерживает актуальность тегов.,Вы можете использовать его самостоятельно или в качестве дополнения для другого плагина project.tar.gz .
Во-первых, вы можете объявить свои проекты в ~/.indexer_files
следующим образом:
[CoolProject]
/home/user/cool_project
[AnotherProject]
option:ctags_params = "--languages=c++"
/home/user/another_project/src
/home/user/another_project/lib
И тогда, когда вы откроете какой-либо файл из /home/user/cool_project
, весь этот проект будет проиндексирован ctags.Теги генерируются в фоновом режиме, поэтому вам не нужно ждать, пока ctags генерирует теги.Когда вы открываете теги из другого проекта, теги тоже создаются для него.Теги из разных проектов никогда не смешиваются.Когда вы сохраняете файл из проекта, теги автоматически обновляются.Вам не нужно заботиться об этом, он просто работает.
Для получения подробной информации см. Мою статью: Vim: удобная навигация по коду для ваших проектов , в которой объясняется использование Indexer + Vimprj.тщательно.