GNU bug report logs -
#48584
28.0.50; Incorrect hook ordering between local and global hooks with depth
Previous Next
Full log
Message #11 received at 48584 <at> debbugs.gnu.org (full text, mbox):
Am Di., 25. Mai 2021 um 22:07 Uhr schrieb Lars Ingebrigtsen <larsi <at> gnus.org>:
>
> So... I don't see any obvious way to fix this, and perhaps we should
> just document that the order is undefined when you have both local and
> global hooks with the same name.
>
> Any opinions?
The order isn't undefined, and add-hook carefully distinguishes
between negative and nonnegative depths in this case. It's just that
the relative ordering of depths with the same sign but different
"localness" isn't considered/documented.
How about documenting something along those lines?
In "Running hooks", amend the paragraph
"If the hook variable is buffer-local, the buffer-local variable will
be used instead of the global variable. However, if the buffer-local
variable contains the element @code{t}, the global hook variable will
be run as well."
to say that the global hook is run at exactly the place where the "t" appears.
In "Setting hooks", amend the paragraph
"If @var{local} is non-@code{nil}, that says to add @var{function} to the
buffer-local hook list instead of to the global hook list. This makes
the hook buffer-local and adds @code{t} to the buffer-local value."
to specify where the "t" is added (IIUC it's appended if depth > 0 and
prepended otherwise).
This bug report was last modified 3 years and 344 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.