我在vim中使用Taglist插件。在taglist窗口中,我可以看到名称空间,类,结构,函数等标签,但不能看到变量。我在Taglist网站上看到了一个截图(附在下面),里面有这个信息。我正在使用Vim 7和Exuberant Ctags 5.8,并且我使用此命令生成了我的ctags
ctags --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++
alt text http://vim-taglist.sourceforge.net/images/taglist_c.gif
答案 0 :(得分:8)
Taglist插件(.vim / plugin / taglist.vim)中有一个变量s:tlist_def_cpp_settings
,它定义了默认显示的元素。
我把它扩展到:
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'
根据标记列表手册,您还可以在tlist_cpp_settings
中定义具有相似值的.vimrc
。
对于其他语言,存在不同的变量。
答案 1 :(得分:1)
据我所知,Taglist插件只显示有文件的变量 范围。它不显示仅具有功能范围的变量。
对于快速测试,只需在源的开头添加任何类型的变量 文件,保存源文件,将光标设置到标签列表窗口 并按u更新标签列表。现在这个变量应该出现在taglist窗口中。 这适用于我的C文件。
顺便说一下:
...我使用此命令生成了我的ctags
ctags --c ++ - types = + p --fields = + iaS --extra = + q --language-force = C ++
您的意思是为taglist插件生成自己的标签文件 使用这些ctags选项? 据我所知,taglist使用自己的ctags选项并生成一个临时的 标签文件。用户对ctags选项和标记文件没有影响。