Improve docstring of add-hook and remove-hook

* lisp/subr.el (add-hook, remove-hook): Remove detail about setting to
nil and talk about functions instead of hooks.  (Bug#72915)
This commit is contained in:
Tomas Nordin 2025-02-27 22:06:25 +01:00 committed by Stefan Kangas
parent dbae1fc69f
commit 1352b184f3

View file

@ -2090,6 +2090,9 @@ instead; it will indirectly limit the specpdl stack size as well.")
"Add to the value of HOOK the function FUNCTION.
FUNCTION is not added if already present.
HOOK should be a symbol. If HOOK is void, or if HOOK's value is a
single function, it is changed to a list of functions.
The place where the function is added depends on the DEPTH
parameter. DEPTH defaults to 0. By convention, it should be
a number between -100 and 100 where 100 means that the function
@ -2108,10 +2111,6 @@ This makes the hook buffer-local, and it makes t a member of the
buffer-local value. That acts as a flag to run the hook
functions of the global value as well as in the local value.
HOOK should be a symbol. If HOOK is void, it is first set to
nil. If HOOK's value is a single function, it is changed to a
list of functions.
FUNCTION may be any valid function, but it's recommended to use a
function symbol and not a lambda form. Using a symbol will
ensure that the function is not re-added if the function is
@ -2176,10 +2175,11 @@ performance impact when running `add-hook' and `remove-hook'."
(set-default hook hook-value))))
(defun remove-hook (hook function &optional local)
"Remove from the value of HOOK the function FUNCTION.
HOOK should be a symbol, and FUNCTION may be any valid function. If
FUNCTION isn't the value of HOOK, or, if FUNCTION doesn't appear in the
list of hooks to run in HOOK, then nothing is done. See `add-hook'.
"Remove FUNCTION from HOOK's functions.
HOOK should be a symbol, and FUNCTION may be any valid function.
Do nothing if HOOK does not currently contain FUNCTION.
Compare functions with `equal`, which means that it can be
slow if FUNCTION is not a symbol. See `add-hook'.
The optional third argument, LOCAL, if non-nil, says to modify
the hook's buffer-local value rather than its default value.