Как игнорировать объявления структуры и рассматривать только определения в cscope?

Я всегда использую vim + cscope для проверки определения символа, и я нахожу, что cscope всегда принимает объявление следующим образом:

struct sk_buff;

как определение, которое заставляет vim всегда показывать длинный список файлов на выбор. Действительно, я хочу только определение:

struct sk_buff {
  ...
};

Кажется, ctags может решить эту проблему, но может ли cscope справиться с этим? Или что-то я не прав.

Я проверил источник cscope и обнаружил, что трудно изменить источник lex и yacc с самого начала.

1 ответ

Решение

Вы правы, вы не можете сделать это только с помощью cscope.
Я использую cscope+ctags с vim каждый день как для небольших, так и для крупных проектов.
Я обнаружил, что наиболее продуктивный способ использования этих инструментов - использовать их как внутри vim, так и с плагином cscope_maps.vim.

Это может не помочь вам, но это помогло мне в прошлом, посетите этот сайт для получения информации об их совместном использовании. Я предупреждаю вас, что если вы используете плагин cscope_maps.vim, вы, вероятно, захотите отредактировать его и закомментировать параметр "set cscopetag".

Другие вопросы по тегам