|
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.
[Prev in Thread] | Current Thread | [Next in Thread] |