Hi Punit,
* When used, pygments only provide reference tags (GRTAGS) not definition tags
That's correct AFAIK.
* The definitions were provided by /usr/bin/ctags (in 6.4.4-3). "ctags" is usually a symlink pointing to one of few possible ctags implementations - ctags.emacs, exuberant-ctags, universal-ctags the ones I've come across.
Correct again.
* The pygments plugin script (/usr/share/global/gtags/script) has a dependency on exuberant ctags but may also be able compatible with other ctags implementations. It is possible to override this by using "ctagscom=" in the config file.
That's correct, except that there is no need to make this dependency too strict. Universal Ctags is a fork of Exuberant Ctags, whose development has stopped some ten years ago. Which means that Pygments works with Universal Ctags, and that the dependency is in fact "exuberant-ctags | universal-ctags". With only Emacs ctags is installed, gtags with pygments displays:
/usr/bin/ctags: unrecognized option '--filter' Try '/usr/bin/ctags --help' for a complete list of options.
Looking at these, the changes introduced in 6.4.4-4 seem to be headed in the right direction.
I do not fully agree with this statement. I believe that Global should honor the choice of the user, who selected an implementation of ctags with Debian's "alternatives". Perhaps there should be a better warning than the "unrecognized option '--filter'" when neither exuberant-ctags nor universal-ctags is installed.
Gregory