Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extend helm-tags.el to support gtags #2592

Open
BooAA opened this issue Mar 25, 2023 · 3 comments
Open

Extend helm-tags.el to support gtags #2592

BooAA opened this issue Mar 25, 2023 · 3 comments

Comments

@BooAA
Copy link

BooAA commented Mar 25, 2023

Suggestion

Currently helm-tags.el only support etags. But in practice, gtags is more popular as it support not only finding definition as etags already do, but also cross reference (e.g. find the usage of a function/variable, etc). And gtags is the only tags-based solution I know that support cross reference. Also gtags use database for incremental update, which makes it the defacto solution for browsing code in gigantic project like linux kernel.

Description

Extend helm-tags.el to have defcustom for which tags program to use. Or have another stand-alone helm-gtags-select just like the helm-etags-select we already have to use helm interface for selecting tags/references.

Solutions

There is already helm-gtags on melpa, unfortunately the package is out of maintenance and is now being deprecated.

@thierryvolpiatto
Copy link
Member

thierryvolpiatto commented Mar 25, 2023 via email

@BooAA
Copy link
Author

BooAA commented Mar 26, 2023

Thanks, I will report but to emacsorphanage and see if someone will fix it. In terms of functionality, helm-gtags still work properly, but the user experience is really poor. For project with about 600MB GTAGS file, everytime I type a word for incremental searching, I need to wait like 5~10s to see the results being updated on the helm buffer. I don't think it's emacs being freezed for processing data since I can still type more characters in the minibuffer, but looks like it's because the gtags query is totally asynchronous and the interval is too long that makes the UX sluggish.

Update:
I have file an issue to helm-gtags, here's the bug emacsorphanage/helm-gtags#197

@ooglyhLL
Copy link

Did you try ggtags? It already integrates with helm. Maintaining a huge completion candidates list will inevitably take its time, but I haven't experienced it being unusable.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants