diff options
author | Philipp Stephani <phst@google.com> | 2021-05-30 22:39:54 +0200 |
---|---|---|
committer | Philipp Stephani <phst@google.com> | 2021-05-30 22:42:40 +0200 |
commit | ed72a8ccd5e32e7752102f223fac12e7ad72709b (patch) | |
tree | 6c4835ae34cb4def63c80ae2a762afbd1cc79ce4 /doc/lispref | |
parent | 3988411f6c6a1170bca0831874233ff4b739009c (diff) | |
download | emacs-ed72a8ccd5e32e7752102f223fac12e7ad72709b.tar.gz |
Document that the 'syntax-propertize-function' may move point.
The functions generated by 'syntax-propertize-rules' don't use
'save-excursion', but 'syntax-propertize' does, so we might as well
document that the 'syntax-propertize-function' may move point.
* doc/lispref/syntax.texi (Syntax Properties): Document that the
'syntax-propertize-function' may move point.
Diffstat (limited to 'doc/lispref')
-rw-r--r-- | doc/lispref/syntax.texi | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/doc/lispref/syntax.texi b/doc/lispref/syntax.texi index 2df6c15c4ca..bde7075b0df 100644 --- a/doc/lispref/syntax.texi +++ b/doc/lispref/syntax.texi @@ -572,12 +572,14 @@ The function is called by @code{syntax-ppss} (@pxref{Position Parse}), and by Font Lock mode during syntactic fontification (@pxref{Syntactic Font Lock}). It is called with two arguments, @var{start} and @var{end}, which are the starting and ending positions of the text on -which it should act. It is allowed to call @code{syntax-ppss} on any -position before @var{end}, but if a Lisp program calls -@code{syntax-ppss} on some position and later modifies the buffer at -some earlier position, then it is that program's responsibility to -call @code{syntax-ppss-flush-cache} to flush the now obsolete info -from the cache. +which it should act. It is allowed to arbitrarily move point within +the region delimited by @var{start} and @var{end}; such motions don't +need to use @code{save-excursion} (@pxref{Excursions}). It is also +allowed to call @code{syntax-ppss} on any position before @var{end}, +but if a Lisp program calls @code{syntax-ppss} on some position and +later modifies the buffer at some earlier position, then it is that +program's responsibility to call @code{syntax-ppss-flush-cache} to +flush the now obsolete info from the cache. @strong{Caution:} When this variable is non-@code{nil}, Emacs removes @code{syntax-table} text properties arbitrarily and relies on |