]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/jit-lock.el: Don't use `make-variable-buffer-local` on hooks.
authorStefan Monnier <monnier@iro.umontreal.ca>
Mon, 27 Apr 2020 22:36:28 +0000 (18:36 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Mon, 27 Apr 2020 22:36:28 +0000 (18:36 -0400)
(jit-lock-functions): Clarify that it's a hook.
(jit-lock-unregister): Adjust accordingly.

lisp/jit-lock.el

index c0c9cac23e7811245163834f4b3d6a357b0abe92..8b3384ae827a8a6d16ca50609bdadeff5630c572 100644 (file)
@@ -147,9 +147,10 @@ If 0, then fontification is only deferred while there is input pending."
 (defvar-local jit-lock-mode nil
   "Non-nil means Just-in-time Lock mode is active.")
 
-(defvar-local jit-lock-functions nil
-  "Functions to do the actual fontification.
-They are called with two arguments: the START and END of the region to fontify.")
+(defvar jit-lock-functions nil
+  "Special hook run to do the actual fontification.
+The functions are called with two arguments:
+the START and END of the region to fontify.")
 
 (defvar-local jit-lock-context-unfontify-pos nil
   "Consider text after this position as contextually unfontified.
@@ -341,7 +342,8 @@ If non-nil, CONTEXTUAL means that a contextual fontification would be useful."
   "Unregister FUN as a fontification function.
 Only applies to the current buffer."
   (remove-hook 'jit-lock-functions fun t)
-  (unless jit-lock-functions (jit-lock-mode nil)))
+  (when (member jit-lock-functions '(nil '(t)))
+    (jit-lock-mode nil)))
 
 (defun jit-lock-refontify (&optional beg end)
   "Force refontification of the region BEG..END (default whole buffer)."