]> git.eshelyaron.com Git - emacs.git/commitdiff
(font-lock-default-fontify-buffer): Try and set-defaults even if font-lock-mode
authorStefan Monnier <monnier@iro.umontreal.ca>
Thu, 22 Dec 2005 16:09:32 +0000 (16:09 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Thu, 22 Dec 2005 16:09:32 +0000 (16:09 +0000)
is non-nil since it may be t without having turned on font-lock-mode-internal.
(font-lock-choose-keywords): Minor optimization.
(font-lock-add-keywords, font-lock-remove-keywords, font-lock-set-defaults):
Don't call make-local-variable on a variable that we know to already be local.

lisp/ChangeLog
lisp/font-lock.el

index 130bfcdde697bbafd7245abe3fed4130f945e1a9..1aeb8df4fccb1313c4ebdb9e1936a39f8555ede4 100644 (file)
@@ -1,3 +1,13 @@
+2005-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * font-lock.el (font-lock-default-fontify-buffer): Try and set-defaults
+       even if font-lock-mode is non-nil since it may be t without having
+       turned on font-lock-mode-internal.
+       (font-lock-choose-keywords): Minor optimization.
+       (font-lock-add-keywords, font-lock-remove-keywords)
+       (font-lock-set-defaults): Don't call make-local-variable on a variable
+       that we know to already be local.
+
 2005-12-22  Katsumi Yamaoka  <yamaoka@jpl.org>
 
        * emacs-lisp/lisp.el (lisp-complete-symbol): Don't print progress
index be97ce41e61e88b88aa76e9260e34b863aa23fd7..ca0848bd561eca255f7d9e49966056641337576f 100644 (file)
 ;;
 ;;  (add-hook 'foo-mode-hook
 ;;   (lambda ()
-;;     (make-local-variable 'font-lock-defaults)
-;;     (setq font-lock-defaults '(foo-font-lock-keywords t))))
+;;     (set (make-local-variable 'font-lock-defaults)
+;;          '(foo-font-lock-keywords t))))
 
 ;;; Adding Font Lock support for modes:
 
 ;;
 ;; and within `bar-mode' there could be:
 ;;
-;;  (make-local-variable 'font-lock-defaults)
-;;  (setq font-lock-defaults '(bar-font-lock-keywords nil t))
+;;  (set (make-local-variable 'font-lock-defaults)
+;;       '(bar-font-lock-keywords nil t))
 \f
 ;; What is fontification for?  You might say, "It's to make my code look nice."
 ;; I think it should be for adding information in the form of cues.  These cues
@@ -723,8 +723,8 @@ see the variables `c-font-lock-extra-types', `c++-font-lock-extra-types',
                                          (append keywords old)))))
           ;; If the keywords were compiled before, compile them again.
           (if was-compiled
-              (set (make-local-variable 'font-lock-keywords)
-                   (font-lock-compile-keywords font-lock-keywords t)))))))
+              (setq font-lock-keywords
+                     (font-lock-compile-keywords font-lock-keywords t)))))))
 
 (defun font-lock-update-removed-keyword-alist (mode keywords how)
   "Update `font-lock-removed-keywords-alist' when adding new KEYWORDS to MODE."
@@ -830,8 +830,8 @@ happens, so the major mode can be corrected."
 
           ;; If the keywords were compiled before, compile them again.
           (if was-compiled
-              (set (make-local-variable 'font-lock-keywords)
-                   (font-lock-compile-keywords font-lock-keywords t)))))))
+              (setq font-lock-keywords
+                     (font-lock-compile-keywords font-lock-keywords t)))))))
 \f
 ;;; Font Lock Support mode.
 
@@ -1001,8 +1001,7 @@ The value of this variable is used when Font Lock mode is turned on."
        (when verbose
          (format "Fontifying %s..." (buffer-name)))
       ;; Make sure we have the right `font-lock-keywords' etc.
-      (unless font-lock-mode
-       (font-lock-set-defaults))
+      (font-lock-set-defaults)
       ;; Make sure we fontify etc. in the whole buffer.
       (save-restriction
        (widen)
@@ -1574,9 +1573,9 @@ A LEVEL of nil is equal to a LEVEL of 0, a LEVEL of t is equal to
   (cond ((not (and (listp keywords) (symbolp (car keywords))))
         keywords)
        ((numberp level)
-        (or (nth level keywords) (car (reverse keywords))))
+        (or (nth level keywords) (car (last keywords))))
        ((eq level t)
-        (car (reverse keywords)))
+        (car (last keywords)))
        (t
         (car keywords))))
 
@@ -1642,8 +1641,8 @@ Sets various variables using `font-lock-defaults' (or, if nil, using
        (font-lock-remove-keywords nil removed-keywords))
       ;; Now compile the keywords.
       (unless (eq (car font-lock-keywords) t)
-       (set (make-local-variable 'font-lock-keywords)
-            (font-lock-compile-keywords font-lock-keywords t))))))
+       (setq font-lock-keywords
+              (font-lock-compile-keywords font-lock-keywords t))))))
 \f
 ;;; Colour etc. support.