# HG changeset patch # User Chong Yidong # Date 1132896776 0 # Node ID 152403ad207b466f358e59d08ce6953e82f8dbb1 # Parent 440072194b4be6c37633e80aecd1f2319833b6e1 * hi-lock.el (hi-lock-buffer-mode): Turn on font-lock. (hi-lock-unface-buffer, hi-lock-set-file-patterns): Call font-lock-fontify-buffer. (hi-lock-refontify): Deleted. (hi-lock-font-lock-hook): Turn off hi-lock when font lock is turned off. diff -r 440072194b4b -r 152403ad207b lisp/ChangeLog --- a/lisp/ChangeLog Thu Nov 24 21:11:42 2005 +0000 +++ b/lisp/ChangeLog Fri Nov 25 05:32:56 2005 +0000 @@ -1,7 +1,8 @@ 2005-11-24 Chong Yidong * hi-lock.el (hi-lock-buffer-mode): Renamed from `hi-lock-mode'. - Use define-minor-mode, and make it a local mode. + Use define-minor-mode, and make it a local mode. Turn on + font-lock. (hi-lock-mode): New global minor mode. (turn-on-hi-lock-if-enabled): New function. (hi-lock-line-face-buffer, hi-lock-face-buffer) @@ -13,8 +14,14 @@ (hi-lock-face-phrase-buffer): Call hi-lock-buffer-mode. Use new arguments for hi-lock-set-pattern. + (hi-lock-unface-buffer, hi-lock-set-file-patterns): Call + font-lock-fontify-buffer. (hi-lock-find-file-hook, hi-lock-current-line) - (hi-lock-set-patterns): Deleted unused functions. + (hi-lock-refontify, hi-lock-set-patterns): Deleted unused + functions. + + (hi-lock-font-lock-hook): Turn off hi-lock when font lock is + turned off. * progmodes/compile.el (compilation-setup): Don't fiddle with font-lock-defaults. diff -r 440072194b4b -r 152403ad207b lisp/hi-lock.el --- a/lisp/hi-lock.el Thu Nov 24 21:11:42 2005 +0000 +++ b/lisp/hi-lock.el Fri Nov 25 05:32:56 2005 +0000 @@ -286,18 +286,22 @@ (if hi-lock-buffer-mode ;; Turned on. (progn + (unless font-lock-mode (font-lock-mode 1)) (define-key-after menu-bar-edit-menu [hi-lock] (cons "Regexp Highlighting" hi-lock-menu)) (hi-lock-find-patterns) - (add-hook 'font-lock-mode-hook 'hi-lock-font-lock-hook t)) + (add-hook 'font-lock-mode-hook 'hi-lock-font-lock-hook nil t)) ;; Turned off. - (when hi-lock-interactive-patterns - (font-lock-remove-keywords nil hi-lock-interactive-patterns) - (setq hi-lock-interactive-patterns nil)) - (when hi-lock-file-patterns - (font-lock-remove-keywords nil hi-lock-file-patterns) - (setq hi-lock-file-patterns nil)) - (hi-lock-refontify) + (when (or hi-lock-interactive-patterns + hi-lock-file-patterns) + (when hi-lock-interactive-patterns + (font-lock-remove-keywords nil hi-lock-interactive-patterns) + (setq hi-lock-interactive-patterns nil)) + (when hi-lock-file-patterns + (font-lock-remove-keywords nil hi-lock-file-patterns) + (setq hi-lock-file-patterns nil)) + (if font-lock-mode + (font-lock-fontify-buffer))) (define-key-after menu-bar-edit-menu [hi-lock] nil) (remove-hook 'font-lock-mode-hook 'hi-lock-font-lock-hook t))) @@ -426,7 +430,7 @@ (font-lock-remove-keywords nil (list keyword)) (setq hi-lock-interactive-patterns (delq keyword hi-lock-interactive-patterns)) - (hi-lock-refontify)))) + (font-lock-fontify-buffer)))) ;;;###autoload (defun hi-lock-write-interactive-patterns () @@ -511,13 +515,7 @@ (font-lock-remove-keywords nil hi-lock-file-patterns) (setq hi-lock-file-patterns patterns) (font-lock-add-keywords nil hi-lock-file-patterns) - (hi-lock-refontify))) - -(defun hi-lock-refontify () - "Unfontify then refontify buffer. Used when hi-lock patterns change." - (interactive) - (if font-lock-mode - (font-lock-fontify-buffer))) + (font-lock-fontify-buffer))) (defun hi-lock-find-patterns () "Find patterns in current buffer for hi-lock." @@ -544,9 +542,10 @@ (defun hi-lock-font-lock-hook () "Add hi lock patterns to font-lock's." - (when font-lock-mode - (font-lock-add-keywords nil hi-lock-file-patterns) - (font-lock-add-keywords nil hi-lock-interactive-patterns))) + (if font-lock-mode + (progn (font-lock-add-keywords nil hi-lock-file-patterns) + (font-lock-add-keywords nil hi-lock-interactive-patterns)) + (hi-lock-buffer-mode -1))) (provide 'hi-lock)