Как я могу «Перейти к декларации»? используя VIM, не проходя длинный список?

Я читаю огромный проект cpp с сотнями файлов .cpp и .h, и я хочу сделать это более эффективно, используя функцию «Перейти к декларации».

Я попробовал vim + ctags + cscope, но когда я «Перейти к декларации» с помощью «Ctrl +]», я обнаружил, что список «объявлений» для меня длинный.

Например, я хочу найти объявление «class Foo :: reset ()», но мне приходит множество кандидатов, таких как «class Bar :: reset ()» или «Class Blahblah :: reset ()».

Интересно, есть ли увлекательный способ найти РЕАЛЬНУЮ ДЕКЛАРАЦИЮ функции, а не выбрать правильный для длинного списка вручную.

Благодарю.

1

Решение

Ни Vim, ни ctags, ни cscope не способны понять ваш код и перейти к декларации, которую вы хотите.

Вы можете попробовать на основе Clang Ты дополняешь меня или же лязг-полной.

6

Другие решения

Это тяжелое решение, но вы также можете установить Eclipse с инструментами разработчика C / C ++ и использовать плагин Eclim (eclim.org) для общения с Eclipse для поиска и завершения.

1

Плагин YouCompleteMe поддерживает это.

1

И CLion, и VSCode намного лучше, чем Eclipse, предоставляют эту функциональность и имеют плагины Vim.

0
По вопросам рекламы [email protected]