Проблема ctags при создании тегов для файлов .h и .c в двух разных каталогах
Вопрос
Теперь у меня есть два каталога, все файлы заголовков * .h включены в каталог / inc, а все файлы c * .c хранятся в каталоге / src.
Каталог, подобный этому, (/ project - это каталог верхнего уровня):
/project-- |----/inc
|----/src
Я хочу использовать ctrl +] , чтобы найти определение одного параметра или одной функции в исходном файле, например example.c. Как сгенерировать эти теги?
Мой метод:
(1) cd to the /project directory
(2) ctags inc/*.h src/*.c
Затем создается файл тегов, однако, когда я открываю файл примера и использую «Ctrl +]», он не может привести меня к его определению. Почему ???
Нужно ли создавать файл тегов в / src ???
Любая помощь? Большое спасибо!
Решение
В vim попробуйте ввести:
<Ол>: установить теги
Убедитесь, что путь к вашему файлу тегов присутствует в выводе 2 относительно пути, который является выводом 1.
ПРИМЕЧАНИЕ. Вы можете установить переменную tags
как часть вашего локального .vimrc
.
ОБНОВЛЕНИЕ: обычно для tags
обычно задается такой шаблон, как tags, .. / tags, .. / .. / tags
. С этим шаблоном vim будет использовать первый файл тегов, в котором он найдет структуру вашей папки (опять же относительно вашего pwd
).
Другие советы
Перейдите в / project и используйте команду " ctags -R. " В вашем .vimrc поместите команду «установить теги = / проект / теги». Выйдите из vim и введите его снова. Теги теперь должны работать.