summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog9
-rw-r--r--lisp/font-core.el10
-rw-r--r--lisp/font-lock.el9
3 files changed, 19 insertions, 9 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 6e8ba492710..5e24d87f085 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,12 @@
+2010-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * font-lock.el (font-lock-major-mode): Rename from
+ font-lock-mode-major-mode to distinguish it from
+ global-font-lock-mode's own font-lock-mode-major-mode (bug#6135).
+ (font-lock-set-defaults):
+ * font-core.el (font-lock-default-function): Adjust users.
+ (font-lock-mode): Don't set it at all.
+
2010-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
* vc-annotate.el (vc-annotate): Use vc-read-revision.
diff --git a/lisp/font-core.el b/lisp/font-core.el
index be3a2a3eaca..d33295b3c34 100644
--- a/lisp/font-core.el
+++ b/lisp/font-core.el
@@ -97,7 +97,7 @@ It will be passed one argument, which is the current value of
`font-lock-mode'.")
;; The mode for which font-lock was initialized, or nil if none.
-(defvar font-lock-mode-major-mode)
+(defvar font-lock-major-mode)
(define-minor-mode font-lock-mode
"Toggle Font Lock mode.
With arg, turn Font Lock mode off if and only if arg is a non-positive
@@ -159,9 +159,7 @@ your own function which is called when `font-lock-mode' is toggled via
;; Arrange to unfontify this buffer if we change major mode later.
(if font-lock-mode
(add-hook 'change-major-mode-hook 'font-lock-change-mode nil t)
- (remove-hook 'change-major-mode-hook 'font-lock-change-mode t))
- (when font-lock-mode
- (setq font-lock-mode-major-mode major-mode)))
+ (remove-hook 'change-major-mode-hook 'font-lock-change-mode t)))
;; Get rid of fontification for the old major mode.
;; We do this when changing major modes.
@@ -213,8 +211,8 @@ this function onto `change-major-mode-hook'."
(and mode
(boundp 'font-lock-set-defaults)
font-lock-set-defaults
- font-lock-mode-major-mode
- (not (eq font-lock-mode-major-mode major-mode))))
+ font-lock-major-mode
+ (not (eq font-lock-major-mode major-mode))))
(font-lock-mode-internal mode)))
(defun turn-on-font-lock ()
diff --git a/lisp/font-lock.el b/lisp/font-lock.el
index 0a0499d8db4..b4a2a72eee8 100644
--- a/lisp/font-lock.el
+++ b/lisp/font-lock.el
@@ -1784,15 +1784,18 @@ preserve `hi-lock-mode' highlighting patterns."
(kill-local-variable 'font-lock-set-defaults)
(font-lock-mode 1))
-(defvar font-lock-mode-major-mode)
+(defvar font-lock-major-mode nil
+ "Major mode for which the font-lock settings have been setup.")
+(make-variable-buffer-local 'font-lock-major-mode)
+
(defun font-lock-set-defaults ()
"Set fontification defaults appropriately for this mode.
Sets various variables using `font-lock-defaults' (or, if nil, using
`font-lock-defaults-alist') and `font-lock-maximum-decoration'."
;; Set fontification defaults if not previously set for correct major mode.
(unless (and font-lock-set-defaults
- (eq font-lock-mode-major-mode major-mode))
- (setq font-lock-mode-major-mode major-mode)
+ (eq font-lock-major-mode major-mode))
+ (setq font-lock-major-mode major-mode)
(set (make-local-variable 'font-lock-set-defaults) t)
(make-local-variable 'font-lock-fontified)
(make-local-variable 'font-lock-multiline)