Clarify documentation on inhibit-modification-hooks intended usage
Cf. bug#40332 and the discussion at https://lists.gnu.org/archive/html/emacs-devel/2020-03/msg00921.html * doc/lispref/text.texi (Change Hooks): * src/insdel.c (syms_of_insdel): Clarify the intended usage of 'inhibit-modification-hooks'.
This commit is contained in:
parent
81d07da788
commit
f84aed5fd2
2 changed files with 14 additions and 1 deletions
|
@ -5776,4 +5776,11 @@ code that is itself run from a modification hook, then rebind locally
|
|||
may cause recursive calls to the modification hooks, so be sure to
|
||||
prepare for that (for example, by binding some variable which tells
|
||||
your hook to do nothing).
|
||||
|
||||
We recommend that you only bind this variable for modifications that
|
||||
do not result in lasting changes to buffer text contents (for example
|
||||
face changes or temporary modifications). If you need to delay change
|
||||
hooks during a series of changes (typically for performance reasons),
|
||||
use @code{combine-change-calls} or @code{combine-after-change-calls}
|
||||
instead.
|
||||
@end defvar
|
||||
|
|
|
@ -2397,7 +2397,13 @@ This affects `before-change-functions' and `after-change-functions',
|
|||
as well as hooks attached to text properties and overlays.
|
||||
Setting this variable non-nil also inhibits file locks and checks
|
||||
whether files are locked by another Emacs session, as well as
|
||||
handling of the active region per `select-active-regions'. */);
|
||||
handling of the active region per `select-active-regions'.
|
||||
|
||||
To delay change hooks during a series of changes, use
|
||||
`combine-change-calls' or `combine-after-change-calls' instead of
|
||||
binding this variable.
|
||||
|
||||
See also the info node `(elisp) Change Hooks'. */);
|
||||
inhibit_modification_hooks = 0;
|
||||
DEFSYM (Qinhibit_modification_hooks, "inhibit-modification-hooks");
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue