Как перейти к объявлению функции C++ с помощью etags?
Я сгенерировал файл TAGS с etags, включая несколько каталогов в каталоге библиотеки, которую я использую. Команда была что-то вроде:
etags *.h *.cpp /path/to/library/include/* /path/to/library/libsrc/*.cpp
Когда я вызываю функцию поиска тегов в emacs M-.
Я никогда не получаю совпадения с тегами из .h
файлы.
Как я могу перейти к объявлению функции из ее использования в некотором коде?
2 ответа
Решение
Это немного запоздало, но объявления функций по умолчанию не включаются при сборке etags. добавлять --c++kinds=+p
включить их:
etags --c++kinds=+p *.h *.cpp /path/to/library/include/* /path/to/library/libsrc/*.cpp
По умолчанию, M-.
переходит к определению. Я обнаружил, что добавление префикса (C-u M-.
) после перехода к определению обычно переходит к декларации.