From: Richard M. Stallman Date: Fri, 22 Aug 1997 05:58:17 +0000 (+0000) Subject: Explain after-change-functions and chars vs bytes. X-Git-Tag: emacs-20.1~481 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=584b81041669d040a23cd7cd9c73421c8b59d210;p=emacs.git Explain after-change-functions and chars vs bytes. --- diff --git a/lispref/text.texi b/lispref/text.texi index 6ba44ecda1a..2780eb56452 100644 --- a/lispref/text.texi +++ b/lispref/text.texi @@ -2973,9 +2973,16 @@ buffer that is about to change is always the current buffer. This variable holds a list of a functions to call after any buffer modification. Each function receives three arguments: the beginning and end of the region just changed, and the length of the text that existed -before the change. (To get the current length, subtract the region -beginning from the region end.) All three arguments are integers. The -buffer that's about to change is always the current buffer. +before the change. All three arguments are integers. The buffer that's +about to change is always the current buffer. + +The length of the old text is measured in bytes; it is the difference +between the buffer positions before and after that text, before the +change. As for the changed text, its length in bytes is simply the +difference between the first two arguments. If you want the length +in @emph{characters} of the text before the change, you should use +a @code{before-change-functions} function that calls @code{chars-in-region} +(@pxref{Chars and Bytes}). @end defvar @defvar before-change-function