Function: face-remap-reset-base

face-remap-reset-base is an autoloaded and byte-compiled function defined in face-remap.el.gz.

Signature

(face-remap-reset-base FACE)

Documentation

Set the base remapping of FACE to the normal definition of FACE.

This causes the remappings specified by face-remap-add-relative to apply on top of the normal definition of FACE.

View in manual

Probably introduced at or before Emacs version 23.1.

Source Code

;; Defined in /usr/src/emacs/lisp/face-remap.el.gz
;;;###autoload
(defun face-remap-reset-base (face)
  "Set the base remapping of FACE to the normal definition of FACE.
This causes the remappings specified by `face-remap-add-relative'
to apply on top of the normal definition of FACE."
  (let ((entry (assq face face-remapping-alist)))
    (when entry
      ;; If there's nothing except a base remapping, we simply remove
      ;; the entire remapping entry, as setting the base to the default
      ;; would be the same as the global definition.  Otherwise, we
      ;; modify the base remapping.
      (if (null (cddr entry))		; nothing except base remapping
	  (setq face-remapping-alist	; so remove entire entry
		(remq entry face-remapping-alist))
	(setcar (last entry) face))
      ;; Force redisplay of this buffer.
      (force-mode-line-update))))  ; otherwise, just inherit global def