Function: compilation--remove-properties
compilation--remove-properties is a byte-compiled function defined in
compile.el.gz.
Signature
(compilation--remove-properties &optional START END)
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/compile.el.gz
(defun compilation--remove-properties (&optional start end)
(with-silent-modifications
;; When compile.el used font-lock directly, we could just remove all
;; our text-properties in one go, but now that we manually place
;; font-lock-face, we have to be careful to only remove the font-lock-face
;; we placed.
;; (remove-list-of-text-properties
;; (or start (point-min)) (or end (point-max))
;; '(compilation-debug compilation-directory compilation-message
;; font-lock-face help-echo mouse-face))
(let (next)
(unless start (setq start (point-min)))
(unless end (setq end (point-max)))
(compilation--flush-directory-cache start end)
(while
(progn
(setq next (or (next-single-property-change
start 'compilation-message nil end)
end))
(when (get-text-property start 'compilation-message)
(remove-list-of-text-properties
start next
'(compilation-debug compilation-directory compilation-message
font-lock-face help-echo mouse-face)))
(< next end))
(setq start next)))))