如何将Python插件添加到Gnu Global

sfs*_*szh 6 python tags gnu gnu-global

我的gtags verion是gtags - GNU GLOBAL 5.9.2

我在这里为Gnu Global下载了一个python插件

将globalrc.example复制到〜/ .globalrc

将脚本/ python_global_tags.py复制到我的$ PATH中的〜/ bin/python_global_tags.py

在python文件的目录中输入"gtags"

没有抱怨

键入:"global -f test.py"

没有输出

但是"global -g"有效,如果它只是grep的包装,我会徘徊

我的问题是:

  • 甚至可以在python本身编写插件吗?
  • 是否有一个配置〜/ .globalrc的教程,官方网站上的 tutoials 提到的很少.

非常感谢,

gnu全球正在崛起,但仍然支持如此少的语言

ジョー*_*ョージ 6

只是对于那些到达通过谷歌这个页面:现在GNU全球支持的Python(及以上)通过一个奇妙的Pygments来做为主插件:

https://github.com/yoshizow/global-pygments-plugin

只需按照README,唯一的注意事项是在我的情况下gtags为大文件树生成空文件,可能是由于大量使用符号链接; 解决方案是find按照手册中的建议使用:

find . -name '*.py' >/tmp/list     # make a file set
gtags -f /tmp/list                 # and use it
Run Code Online (Sandbox Code Playgroud)

现在,人们可以搜索定义

global -x main     # suppose you have at least one main() somewhere in the code
Run Code Online (Sandbox Code Playgroud)

或参考

global -rsx sys                    # this is likely to list *all* your modules
Run Code Online (Sandbox Code Playgroud)

甚至搜索不完整标签的可能完成情况:

global -cs OrderedD                # -c: "complete", -s: "non-local references"
Run Code Online (Sandbox Code Playgroud)


ana*_*cat 0

据我了解,GNU Global 还不支持 Python。主页上说:

支持C、C++、Yacc、Java、PHP4和汇编。(定义和参考)

这篇文章基本上说我们需要用 C 语言编写一个插件。由于不支持全局,我又回到了旧的Exuberant Ctags

ctags -e -R .
Run Code Online (Sandbox Code Playgroud)

效果很好,但你没有得到反向引用。另请参阅有关 etags 的其他问题