我的gtags verion是gtags - GNU GLOBAL 5.9.2
我为Gnu Global here
下载了一个python插件将globalrc.example复制到〜/ .globalrc
将脚本/ python_global_tags.py复制到我的$ PATH中的〜/ bin / python_global_tags.py
在python文件目录中输入“gtags”
没有抱怨
输入:“global -f test.py”
无输出
但是“global -g”有效,如果它只是grep
的包装,我会徘徊我的问题是:
非常感谢,
gnu全球正在崛起,但仍支持如此少的语言btw
答案 0 :(得分:6)
仅限那些通过Google访问此页面的人:现在GNU Global 通过一个精彩的基于Pygments的插件支持Python(及更多):
https://github.com/yoshizow/global-pygments-plugin
只需按照README,唯一的注意事项就是在我的情况下gtags为大文件树生成了空文件,可能是由于大量使用了符号链接;解决方案是使用manual中建议的find
:
find . -name '*.py' >/tmp/list # make a file set
gtags -f /tmp/list # and use it
现在可以搜索定义
global -x main # suppose you have at least one main() somewhere in the code
或参考
global -rsx sys # this is likely to list *all* your modules
甚至搜索不完整标签的可能完成情况:
global -cs OrderedD # -c: "complete", -s: "non-local references"
答案 1 :(得分:0)
根据我的理解,GNU Global还不支持Python。主页说:
支持C,C ++,Yacc,Java,PHP4和汇编。 (定义和 参考)
this post基本上说我们需要在C中编写一个插件。由于不支持全局,我又回到了原来的Exuberant Ctags:
ctags -e -R .
运作良好,但你没有得到反向引用。另请参阅this other question about etags。