Я уже написал плагин для выполнения всей тяжелой работы с ctags: Indexer .
Обеспечивает автоматическую генерацию тегов для всего проекта (ов) и поддерживает актуальность тегов. Теги генерируются в фоновом режиме , поэтому вам не нужно ждать, пока ctags генерирует теги. Вы можете использовать его самостоятельно или в качестве дополнения для другого плагина 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. Когда вы открываете теги из другого проекта, теги тоже создаются для него. Теги из разных проектов никогда не смешиваются. Когда вы сохраняете файл из проекта, теги автоматически обновляются. Вам не нужно заботиться об этом, это просто работает.
Подробнее см. В статье: Vim: удобная навигация по коду для ваших проектов , в которой подробно объясняется использование Indexer + Vimprj.
Он успешно протестирован на Vim 7.3, на следующих системах:
Archlinux
Ubuntu 10.4
Windows XP
Mac OS X Lion