; * doc/lispref/text.texi (Change Hooks): Fix last change.

This commit is contained in:
Eli Zaretskii 2018-01-06 21:43:04 +02:00
parent e876f5f9fb
commit a5f718c4c5

View file

@ -5023,21 +5023,21 @@ these functions, and neither do certain internal buffer changes, such
as changes in buffers created by Emacs internally for certain jobs,
that should not be visible to Lisp programs.
The vast bulk of buffer changing primitives will call
The vast majority of buffer changing primitives will call
@code{before-change-functions} and @code{after-change-functions} in
balanced pairs, once for each change, where the arguments to these
hooks exactly delimit the change being made. Yet, hook functions
should not rely on this always being the case:
Other, complex primitives call @code{before-change-functions} once
before making changes, and then call @code{after-change-functions}
zero, one, or several times, depending on how many individual changes
the primitive is making. The arguments to
should not rely on this always being the case, because some complex
primitives call @code{before-change-functions} once before making
changes, and then call @code{after-change-functions} zero or more
times, depending on how many individual changes the primitive is
making. When that happens, the arguments to
@code{before-change-functions} will enclose a region in which the
individual changes are made, but won't necessarily be the minimal such
region. The arguments to each successive call of
@code{after-change-functions} will then delimit the current part of
the change exactly.
region, and the arguments to each successive call of
@code{after-change-functions} will then delimit the part of text being
changed exactly. In general, we advise to use either before- or the
after-change hooks, but not both.
@defmac combine-after-change-calls body@dots{}
The macro executes @var{body} normally, but arranges to call the