Ctags 顽固地拒绝打印行号

Ctags is stubbornly refusing to print line numbers

我正在我的 cmd 终端中试验 Ctags。也许我应该先提供一些关于我的系统的背景信息:

首先,我使用 cmd 终端导航到我的 C/C++ 源文件夹。然后我发出以下命令:

ctags -R --output-format=json -f tag.tg

我按预期在当前目录中获得了一个标记文件。标记文件使用 pattern 引用每个标记。太好了,但我想改用行号。所以我先删除标签文件,然后用下面的命令重建它:

ctags -R --output-format=json --excmd=number -f tag.tg

但没有任何变化。我仍然有一个 pattern 字段,我想要一个 line-number 字段(不确定该字段将如何准确命名,但你明白了)。

我做错了什么?


我尝试了以下方法:

ctags -R --output-format=json --fields="n" -f tag.tg

这确实给了我 "line" 字段。但是 "typeref""kind""scope""scopeKind" 字段都不见了。

以下方法保留所有这些字段:

ctags -R --output-format=json --fields="+n" -f tag.tg

感谢 Stargateur 的回答:-)

根据 documentation,您需要使用 --fields 选项询问特定字段:

 ctags -R --output-format=json --fields="n" -f tag.tg

适合我。

您可以通过以下方式查看完整的选项列表:

ctags --list-fields