GNU bug report logs - #37774
27.0.50; new :extend attribute broke visuals of all themes and other packages

Previous Next

Package: emacs;

Reported by: Andrey Orst <andreyorst <at> gmail.com>

Date: Wed, 16 Oct 2019 07:32:01 UTC

Severity: normal

Found in version 27.0.50

Done: Dmitry Gutov <dgutov <at> yandex.ru>

Bug is archived. No further changes may be made.

Full log


Message #383 received at 37774 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 37774 <at> debbugs.gnu.org, juri <at> linkov.net
Subject: Re: 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
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.




This bug report was last modified 5 years and 161 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.