Subject: Re: bug#28403: 25.2; find-tag works, but xref-find-definitions

From: Winston <[email-masked]>
Date: Sun, 10 Sep 2017 17:19 EDT

Progress, but it's not working as expected.

   I ran   etags --regex="/\([^ ]+\) +_ARGS[0-9]+/\1/" ...
It added lines of the form:

foo1 _ARGS2^?foo1^A341,12188
foo2 _ARGS1^?foo2^A368,12664

to TAGS, which looked reasonable.

   I then started up a fresh Emacs that uses xref-find-definitions
instead of find-tag, and that did not have the setq change.  The results
surprised me:

* Find "foo1" or "foo2" (complete names) worked, both when typed in and
   when extracting a name near (point).

* Find "foo" (partial name) didn't: rather than creating a window with
   the alternatives, it failed with "No definitions found for: foo".
   find-tag given the same string "foo" went to the first one.
   xref-find-definitions with Dmitry's suggested change also worked
   (yesterday, without the special etags --regex TAGS, popping up a
   window with the alternatives).

Any suggestions?
 -WBE

P.S. Also, I'm finding it mildly annoying that xref-find-definitions,
     when next to just about any word, including text in comments, tries
     immediately to go to that word as a tag rather than prompting me
     for a name with the word as the default, as find-tag did.  That
     means I'll have to remember to use my {arg} key fairly often to
     tell it "don't do that, prompt me."  Is there an "always prompt"
     option, or do I need to write a trivial wrapper function?