all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* tags completion bug
@ 2002-09-24 14:36 Francesco Potorti`
  2002-09-24 15:31 ` Stefan Monnier
       [not found] ` <E17tzBe-0001yD-00@fencepost.gnu.org>
  0 siblings, 2 replies; 5+ messages in thread
From: Francesco Potorti` @ 2002-09-24 14:36 UTC (permalink / raw)


This is a request for opinion.  There are two questions:
1) should I change the function etags-tags-completion-table? (NO)
2) should I move the latest etags.c to the RC branch?	     (YES)

================ 1)
Following a bug report, I discovered that tags completion (on the
pretest branch) is less than optimal, in that a C definition like this:

   char **tab_fill(char *str, char delim)
   {
   }

generates a completion like `**tab_fill', rather than `tab_fill' if you
ask for tag completion with TAB after M-..  The etags shipped with the
RC branch generates for this an entry like:

   char **tab_fill(^?0,1129

which is an unnamed entry (an entry for which the tag name is not
explicitely specified).

The function etags-tags-completion-table, which is used to build the
completion table, uses the tag name if present, else it tries to guess a
reasonable tag name.  For I don't know which reason, it consideres good
candidates for a tag name all the characters in "-a-zA-Z0-9_+*$?:".
Namely, I am not sure why the asterisk, plus and question mark are
there.

Does anyone know?  Should I change the current behaviour, by excluding
asterisk, plus and question mark?  This change would cure the observed
bug, but could prevent the etags-tags-completion-table from guessing the
names of some legitimate tags.

================ 2)
However, in the trunk Emacs, this problem is not apparent, because the
new etags.c generates a tag entry like this:

   char **tab_fill(^?tab_fill^A70,1129

which is a named entry with the correct function name, so the completion
table is correctly built.  The new etags.c, in fact, creates a named tag
whenever etags.el would make a mistake, so using the new etags.c cures
the problem as well.

This means that etags-tags-completion-table will not err on tags files
created by the new etags.c, whether it is changed or not, but a change
would influence its behaviour when using old tags files.

================
I suggest that nothing be changed on the trunk, and possibly that the
new etags.c is installed on the pretest (RC) branch.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2002-09-25 11:16 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-09-24 14:36 tags completion bug Francesco Potorti`
2002-09-24 15:31 ` Stefan Monnier
2002-09-24 17:27   ` Francesco Potorti`
     [not found] ` <E17tzBe-0001yD-00@fencepost.gnu.org>
2002-09-25 10:53   ` Francesco Potorti`
2002-09-25 11:16     ` Gerd Moellmann

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.