Reputation: 718
my gtags verion is gtags - GNU GLOBAL 5.9.2
I downloaded a python plug-in for Gnu Global here
copy the globalrc.example to ~/.globalrc
copy the script/python_global_tags.py to ~/bin/python_global_tags.py which is in my $PATH
type: "gtags" in a directory of python files
no complain
type: "global -f test.py"
no output
but "global -g" works, I wander if it is just a wrapper of grep
My Question is:
Thanks a lot,
gnu global is rising, but still supports so few languages btw
Upvotes: 7
Views: 5987
Reputation: 1
python support is part of GNU global now, the following command works:
gtags --gtagslabel pygments-parser -v
Upvotes: 0
Reputation: 1566
Just for those arriving at this page via Google: now GNU Global does support Python (and more) via a wonderful Pygments-based plugin:
https://github.com/yoshizow/global-pygments-plugin
Just follow the README, the only note is that in my case gtags produced empty files for big file trees, possibly due to heavy use of symlinks; the solution is to use find
as advised in the manual:
find . -name '*.py' >/tmp/list # make a file set
gtags -f /tmp/list # and use it
Now one can either search for definitions
global -x main # suppose you have at least one main() somewhere in the code
or references
global -rsx sys # this is likely to list *all* your modules
or even search for possible completions for incomplete tags:
global -cs OrderedD # -c: "complete", -s: "non-local references"
Upvotes: 9
Reputation: 6197
From what I understand, GNU Global doesn't support Python yet. The homepage says:
support C, C++, Yacc, Java, PHP4 and assembly. (definition and reference)
And this post basically says we would need to write a plugin in C. Since global is not supported, I reverted back to the good old Exuberant Ctags:
ctags -e -R .
Works well, but you don't get backreferences. See also this other question about etags.
Upvotes: 0