Function: face-remap-remove-relative
face-remap-remove-relative is a byte-compiled function defined in
face-remap.el.gz.
Signature
(face-remap-remove-relative COOKIE)
Documentation
Remove a face remapping previously added by face-remap-add-relative.
COOKIE should be the return value from that function.
Probably introduced at or before Emacs version 23.1.
Source Code
;; Defined in /usr/src/emacs/lisp/face-remap.el.gz
(defun face-remap-remove-relative (cookie)
"Remove a face remapping previously added by `face-remap-add-relative'.
COOKIE should be the return value from that function."
(let ((remapping (assq (car cookie) face-remapping-alist)))
(when remapping
(let ((updated-entries (remq (cdr cookie) (cdr remapping))))
(unless (eq updated-entries (cdr remapping))
(setcdr remapping updated-entries)
(when (or (null updated-entries)
(and (eq (car-safe updated-entries) (car cookie))
(null (cdr updated-entries))))
(setq face-remapping-alist
(remq remapping face-remapping-alist))
;; Force redisplay of this buffer.
(force-mode-line-update))
(cdr cookie))))))