Exuberant Ctags:未记录的扩展字段
Exuberant Ctags: undocumented extension fields
我正在查看 Exuberant Ctags 为我的 ruby 项目生成的标签文件,并阅读标签文件格式的文档:
tag_name<TAB>file_name<TAB>ex_cmd;"<TAB>extension_fields
我的标签文件有很多行,例如:
MyThing<TAB>lib/my_thing.rb<TAB>/^class MyThing$/;"<TAB>c
这只是我强烈的好奇心,但我找不到任何关于尾随 <TAB>c
扩展字段表示什么的解释。
下载 ctags 源代码(并使用 ctags 对其进行索引)后,我在 ruby.c 中看到扩展字段非常简单:
/*
* DATA DEFINITIONS
*/
static kindOption RubyKinds [] = {
{ TRUE, 'c', "class", "classes" },
{ TRUE, 'f', "method", "methods" },
{ TRUE, 'm', "module", "modules" },
{ TRUE, 'F', "singleton method", "singleton methods" }
};
我正在查看 Exuberant Ctags 为我的 ruby 项目生成的标签文件,并阅读标签文件格式的文档:
tag_name<TAB>file_name<TAB>ex_cmd;"<TAB>extension_fields
我的标签文件有很多行,例如:
MyThing<TAB>lib/my_thing.rb<TAB>/^class MyThing$/;"<TAB>c
这只是我强烈的好奇心,但我找不到任何关于尾随 <TAB>c
扩展字段表示什么的解释。
下载 ctags 源代码(并使用 ctags 对其进行索引)后,我在 ruby.c 中看到扩展字段非常简单:
/*
* DATA DEFINITIONS
*/
static kindOption RubyKinds [] = {
{ TRUE, 'c', "class", "classes" },
{ TRUE, 'f', "method", "methods" },
{ TRUE, 'm', "module", "modules" },
{ TRUE, 'F', "singleton method", "singleton methods" }
};