# HG changeset patch # User Colin Walters # Date 1022125102 0 # Node ID e1671f561407101af52b8d4528355f4eac8a3055 # Parent 87bde9ae0aaba7f852a9ce3f9caf4d831e7a001f (font-lock-function): New variable. (font-lock-default-function): New function, created from `font-lock-mode'. (font-lock-mode): Just funcall `font-lock-default-function'. diff -r 87bde9ae0aab -r e1671f561407 lisp/font-core.el --- a/lisp/font-core.el Thu May 23 03:38:03 2002 +0000 +++ b/lisp/font-core.el Thu May 23 03:38:22 2002 +0000 @@ -144,6 +144,12 @@ variable is non-nil, then calling `font-lock-mode' will simply toggle the symbol property `face' of CATEGORY-SYMBOL.") +(defvar font-lock-function 'font-lock-default-function + "A function which is called when `font-lock-mode' is toggled. +It will be passed one argument, which is the current value of +`font-lock-mode'.") +(make-variable-buffer-local 'font-lock-default-function) + (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 @@ -198,13 +204,19 @@ See the variable `font-lock-defaults-alist' for the Font Lock mode default settings. You can set your own default settings for some mode, by setting a -buffer local value for `font-lock-defaults', via its mode hook." +buffer local value for `font-lock-defaults', via its mode hook. + +The above is the default behavior of `font-lock-mode'; you may specify +your own function which is called when `font-lock-mode' is toggled via +`font-lock-function'. " nil nil nil ;; Don't turn on Font Lock mode if we don't have a display (we're running a ;; batch job) or if the buffer is invisible (the name starts with a space). (when (or noninteractive (eq (aref (buffer-name) 0) ?\ )) (setq font-lock-mode nil)) + (funcall font-lock-function font-lock-mode)) +(defun font-lock-default-function (font-lock-mode) ;; Turn on Font Lock mode. (when font-lock-mode (font-lock-set-defaults)