我只是在ubuntu 10.10下使用Exuberant Ctags 5.8 下载了sublime text 2 beta 2182
我想用它来进行c ++编码,我需要一些自动编译和代码导航.(我习惯用cdt遮蔽)
我用Google搜索,我发现CTAGS一个很酷的工具,可以做到这一点,并没有对崇高的文本插件支持在这里.
问题是我想要创建标记文件:
c ++标准lib(std::vector std::map etc)
我正在使用的所有框架类.
点1(我认为)与第2点相同,我只需要创建一个std lib的标签列表 /usr/include/c++/4.4.5/
所以我下载了插件并安装了它,我用这种方式制作了一个标签列表:
$ cd /absolute_path_of_my_cpp_framework/
$ ctags -R *
Run Code Online (Sandbox Code Playgroud)
我修改/home/me/.config/sublime-text-2/Packages/CTagss/CTags.sublime-settings了这一行:
"extra_tag_files" : [".gemtags", "/absolute_path_of_my_cpp_framework/tags"]
Run Code Online (Sandbox Code Playgroud)
现在我打开一个cpp文件,将光标指向我的框架的类名,并使用键绑定ctrl+t ctrl+t,没有任何反应.只有底部栏中的此消息:
找不到"class_name"
有人能帮我吗?
我正在使用一个非常大的代码库,我发现选择包含哪些目录用于Exuberant Ctags是有用的.
该--exclude选项适用于消除单个文件和目录名称(使用全局通配符),但我无法弄清楚如何排除包含多个目录的路径模式.
例如,我可能想要排除目录tests,但仅在处理时thirdparty\tests(在Windows下).问题是如果我只是使用--exclude=tests我排除太多目录,包括我正在积极处理的代码中的测试目录.
以下是我尝试过的一些事情:
--exclude=thirdparty\tests
--exclude=thirdparty\\tests
--exclude=*\thirdparty\tests
--exclude=*\\thirdparty\\tests
--exclude=thirdparty/tests
Run Code Online (Sandbox Code Playgroud)
Ctags默默地忽略了所有这些,如检查标签文件所证明的那样.
如何仅在目录父目录之前排除目录?
添加:
这是我的ctags --version输出:
Exuberant Ctags 5.8, Copyright (C) 1996-2009 Darren Hiebert
Compiled: Jul 9 2009, 17:05:35
Addresses: <dhiebert@users.sourceforge.net>, http://ctags.sourceforge.net
Optional compiled features: +win32, +regex, +internal-sort
Run Code Online (Sandbox Code Playgroud)