Subject: bug#37774: 27.0.50; new :extend attribute broke visuals of all themes and other packages

From: Dmitry Gutov <[email-masked]>
Date: Mon, 2 Dec 2019 02:07:27 +0200

On 30.11.2019 13:35, Eli Zaretskii wrote:

>>> This means manually adding :extend to all files in etc/themes?
>>
>> Yes.
> 
> I've now done that.
> 
> Two comments:
> 
>    . When adding the :extend attribute to a face, we should make sure
>      all of that face's definitions have the same value of it, even if
>      the default definition of the face for some 'class' of displays
>      doesn't need it (e.g., because it specifies only the foreground
>      color).  This is so that if users customize the face, the results
>      will look uniform regardless of which face attributes they
>      customize.  Otherwise, if the user customizes the background color
>      or :underline or some other similar attribute, the appearance will
>      be different from that on other classes of terminals, and that is
>      baaaad...
> 
>    . Some of the themes we have in core customize faces defined by
>      unbundled packages.  I didn't change the definitions of those
>      faces; it's up to the respective package developers and/or users
>      to come up and ask for such changes, if it turns out the packages
>      added the :extend attribute and we didn't.

I think the "alternative property" would help both of these concerns 
with less effort (mental and physical) required from everybody.