bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#37774: 27.0.50; new :extend attribute broke visuals of all themes an


From: Dmitry Gutov
Subject: bug#37774: 27.0.50; new :extend attribute broke visuals of all themes and other packages
Date: Tue, 26 Nov 2019 01:50:23 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0

On 25.11.2019 18:00, Eli Zaretskii wrote:

Should be fixed now.

Thanks.

BTW, the diff-context needs ':extend t' as well.

Feel free to make that change (although when did you last see a
context diff?).

It's not for context diffs, it's for context around the changes in unified diffs as well. Notice the gray background on the screenshot.

But that's of little importance since as soon as I load a custom
theme, whatever defaults were there don't seem to matter.

We need to modify all the themes we provide to specify :extend for
faces where we do that by default.  It seems there's no way around
that, since the semantics of custom-theme-set-faces is clearly to
reset all face attributes to 'unspecified' before applying the face
spec, so keeping some attributes from the default face spec is out of
the question, unfortunately.  It's clear that the faces stuff was not
designed to accommodate addition of attributes easily.

Seems like it's a consequence of the implementation strategy. There were a couple of others that had been proposed (splitting the attribute in two, with different default values) or using a symbol property.

You said the latter would complicate the face merging code (which makes sense) and "is extremely unclean". I have to take you at your word here. But it would relieve the theme authors of having to support this attribute explicitly.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]