Как отображать переменные в окне Taglist в Vim
Вопрос
Я использую плагин Taglist в Vim. В окне Taglist я могу видеть теги, такие как пространства имен, классы, структура, функция, но не переменные. Я видел скриншот (прикрепленный ниже) на веб-сайте Taglist, который имел эту информацию. Я использую VIM 7 и Exuberant CTAGS 5.8, и я создал свои CTAGS, используя эту команду
ctags --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++
(источник: sourceforge.net.)
Решение
Есть переменная s:tlist_def_cpp_settings
В плагине Taglist (.vim / plugin / taglist.vim), который определяет, какие элементы отображаются по умолчанию.
Я продлил его к:
let s:tlist_def_cpp_settings = 'c++;n:namespace;v:variable;d:macro;t:typedef;' .
\ 'c:class;g:enum;s:struct;u:union;f:function;m:member;' .
\ 'p:prototype'
Согласно руководству Taglist, вы также можете определить tlist_cpp_settings
в твоем .vimrc
с аналогичным значением.
Для других языков существуют разные переменные.
Другие советы
Насколько я знаю, плагин Taglist показывает только переменные, которые имеют приспособление файла. Он не показывает переменные, которые имеют только сферу функции.
Для быстрого теста просто добавьте переменную любого типа в начале исходного файла, сохраните исходный файл, установите курсор в окно Taglist, и нажмите U, чтобы обновить Taglist. Теперь эта переменная должна появиться в окне Taglist. Это работает для моих файлов C.
Кстати:
... и я создал свои CTAGS, используя эту команду
CTAGS --C ++ - Виды = + P --fields = + IAS --Extra = + Q --Language-Force = C ++
Вы имеете в виду, что вы генерируете свои собственные теги файлы для плагина Taglist, используя эти параметры CTAGS? К моему знанию Taglist использует свои собственные варианты CTAGS и генерирует временный файл тега. Пользователь не влияет на параметры CTAGS и файл тегов.