[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: text displayed in the header line with wrong faces
From: |
Eli Zaretskii |
Subject: |
Re: text displayed in the header line with wrong faces |
Date: |
Tue, 20 Dec 2016 20:36:04 +0200 |
> Date: Tue, 20 Dec 2016 15:57:26 +0100
> From: Ernest Adrogué <nfdisco@gmail.com>
>
> (let ((cyan "#2aa198") (white "#ffffff"))
> (setq header-line-format
> (propertize
> "abcdefghijklmnopqrstuvwxyz"
> 'face `(:foreground ,cyan :background ,white))))
>
> It displays cyan text on white when I select any custom theme other than
> solarized, tsdh-dark or tsdh-light (the latter two are bundled with
> Emacs, I think) and white text on cyan background when I select one of
> those.
The header-line face, as defined in faces.el, inherits from mode-line,
and mode-line has the inverse-video attribute set. When a theme
specifies both foreground and background colors for the mode-line
face, those colors specify the face completely, so the inverse-video
attribute is disabled. But the themes you mention as deviant specify
only one of the two colors, so the inverse-video attribute stays.
You can see all this if you invoke customize-face.