summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lisp/font-core.el12
1 files changed, 12 insertions, 0 deletions
diff --git a/lisp/font-core.el b/lisp/font-core.el
index 39d8daad1ec..0554d657497 100644
--- a/lisp/font-core.el
+++ b/lisp/font-core.el
@@ -220,6 +220,18 @@ your own function which is called when `font-lock-mode' is toggled via
(defun font-lock-change-mode ()
(font-lock-mode -1))
+(defun font-lock-defontify ()
+ "Clear out all `font-lock-face' properties in current buffer.
+A major mode that uses `font-lock-face' properties should put
+this function onto `change-major-mode-hook'."
+ (let ((modp (buffer-modified-p))
+ (inhibit-read-only t))
+ (save-restriction
+ (widen)
+ (remove-list-of-text-properties (point-min) (point-max)
+ '(font-lock-face)))
+ (set-buffer-modified-p modp)))
+
(defun font-lock-default-function (mode)
;; Turn on Font Lock mode.
(when mode