# HG changeset patch # User Luc Teirlinck # Date 1116084338 0 # Node ID 4a68f3c340abf16a9db2b2bb37a647a8d4fa6561 # Parent 32b9b0540e8a78fd1086808c9dd4e1c6ecc2f4eb (Hooks): Most minor modes run mode hooks too. `add-hook' can handle void hooks or hooks whose value is a single function. diff -r 32b9b0540e8a -r 4a68f3c340ab lispref/modes.texi --- a/lispref/modes.texi Sat May 14 15:22:36 2005 +0000 +++ b/lispref/modes.texi Sat May 14 15:25:38 2005 +0000 @@ -2836,10 +2836,10 @@ Every major mode function is supposed to run a normal hook called the @dfn{mode hook} as the last step of initialization. This makes it easy for a user to customize the behavior of the mode, by overriding the -buffer-local variable assignments already made by the mode. But hooks -are used in other contexts too. For example, the hook -@code{suspend-hook} runs just before Emacs suspends itself -(@pxref{Suspending Emacs}). +buffer-local variable assignments already made by the mode. Most +minor modes also run a mode hook at their end. But hooks are used in +other contexts too. For example, the hook @code{suspend-hook} runs +just before Emacs suspends itself (@pxref{Suspending Emacs}). The recommended way to add a hook function to a normal hook is by calling @code{add-hook} (see below). The hook functions may be any of @@ -2937,6 +2937,10 @@ argument @var{append} is non-@code{nil}, the new hook function goes at the end of the hook list and will be executed last. +@code{add-hook} can handle the cases where @var{hook} is void or its +value is a single function; it sets or changes the value to a list of +functions. + 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. If needed, this makes the hook buffer-local and adds @code{t} to the