Is there any way to define a face in Emacs (e.g. highlight such as hl-line
) so that it only changes the background color (and have Emacs use the foreground color as if the word was not highlighted).
More specifically, I tried the following on the tango-dark
theme
(custom-set-faces
'(region ((t (:inherit nil :background "RoyalBlue4"))))
'(highlight ((t (:inherit region :background "dark olive green"))))
'(hl-line ((t (:inherit highlight)))))
and, as can be seen below, region highlighting does respect the foreground font (i.e. it only changes the background color):
but the highlighting of the current line does't:
Why? and how can I get the same effect with hl-line
?
Update:
This seems to a bug in the tango-dark
theme (a builtin theme of Emacs). The code works well with the default theme (which loads with emacs -Q
). I posted this on the official bugs mailing list.
custom-set-faces
and theregion
line -- after that, the code works fine for me on Emacs 23.1.1 – Jato-Q
? – Jatoemacs -Q
. For reference, I am usingtango-dark
above. The odd thing is that this is one the themes that Emacs now provides. – Wagram