Andrey Orst writes: > (defface foo...) > (when (>= emacs-major-version 27) > (set-face-attribute foo... :extend t)) Unless I'm mistaken, this has the disadvantage of making Custom confused as to who changed the face, i.e. M-x customize-face RET foo... RET will say that the face was "CHANGED outside Customize". For all intents and purposes a package author may wish the face to be described as "STANDARD" as long as no theming or user customization has been applied. Maybe some backquote trickery may help?