1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-02-05 20:43:08 +00:00

* lisp/jit-lock.el (jit-lock-function): Don't fontify invisible text

See bug#57447.  This can speed up fontification significantly when using
things like outline-mode.
This commit is contained in:
Stefan Monnier 2022-09-06 17:24:11 -04:00
parent be342f73bd
commit 91a79eedf6

View File

@ -382,7 +382,11 @@ is active."
(or (not (eq jit-lock-defer-time 0))
(input-pending-p))))
;; No deferral.
(jit-lock-fontify-now start (+ start jit-lock-chunk-size))
(let* ((cend (min (point-max) (+ start jit-lock-chunk-size)))
(vend (next-single-property-change start 'invisible nil cend)))
;; FIXME: Presumably if we're called it means `start' is
;; not at EOB (nor invisible) and hence (> vend start).
(jit-lock-fontify-now start vend))
;; Record the buffer for later fontification.
(unless (memq (current-buffer) jit-lock-defer-buffers)
(push (current-buffer) jit-lock-defer-buffers))