Subject: bug#65520: 30.0.50; [FR Xref] Project-wide operations

From: Dmitry Gutov <[email-masked]>
Date: Fri, 25 Aug 2023 19:17:14 +0300

On 25/08/2023 10:03, Gerd Möllmann wrote:
> My mental model is like so: I'm in a Git repo (Emacs), which is, I think
> also a project in the project.el sense.  This project contains differnt
> sets of files for which information is available using different
> backends (Eglot, Etags, others depending on the kind of project).  What
> U'd like to have is something on the level of such a project, if you
> know what mean.  That is, M-. would take all available info for such a
> project into account.

One possible alternative is to treat this situation not like a new 
feature, and write a specialized new Xref backend which would collect 
both the info from Lisp and from TAGS when you are anywhere inside the 
Emacs sources. It shouldn't take too many lines either.

The current existing alternative for that, like Eli pointed out, is 
xref-etags-mode: it disables Elisp's own backend and just uses TAGS 
everywhere ('make tags' in Emacs generates tags for Lisp functions as 
well). With the natural downside that you would need to regen tags 
manually for both types of files now. And that you're using Eglot 
instead ;-(.