unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Dmitry Gutov <dgutov@yandex.ru>
To: Eli Zaretskii <eliz@gnu.org>
Cc: jonas@bernoul.li, 37774@debbugs.gnu.org
Subject: bug#37774: 27.0.50; new :extend attribute broke visuals of all themes and other packages
Date: Sat, 16 Nov 2019 01:50:22 +0200	[thread overview]
Message-ID: <c0bfad73-0b6a-ec3f-a4e1-d80a72bed98c@yandex.ru> (raw)
In-Reply-To: <838soh4l4n.fsf@gnu.org>

On 15.11.2019 10:08, Eli Zaretskii wrote:

>> Lots of themes out there, though. Lots of said authors. Who will have to
>> do a version check and the splat-unquote thing, every one of them. I
>> think that's pretty bad.
> 
> It's not bad, because IMO most faces don't need to be changed at all.
> That Jonas and others went ahead and decided to change almost all of
> them is IMO a mistake.

I'm not sure which faces he changed exactly, but IIUC there were at 
least 5 faces that need to be changed (maybe more). And that would have 
to happen in every theme.

>>> If the backward compatibility (or, rather, transparent DWIM-ish
>>> operation) is the overriding consideration, then you are actually
>>> saying that any face attribute we will introduce in the future will
>>> have to be treated the same?
>>
>> I don't know what attributes we will introduce, and whether the default
>> values will be a departure from the previous behavior like this one is.
> 
> It doesn't matter if the default face definition uses that attribute,
> does it?

Well, it kind of does. At least, if the default value of the new 
attribute is in line with the previous behavior, most faces won't have 
to change. They *might* (or some of them might), but that would be on 
the authors of that code, and the new feature would trickle down 
gradually, like we usually do with Emacs.

>> But please note that having it a face attribute was your choice (or
>> maybe Ergus's). I suggested using a symbol property instead. Though I
>> was admittedly late to the party. Doing it in this way would side-step a
>> number of questions like the ones you just asked.
> 
> Using a symbol property is extremely unclean, IMO, and would
> unnecessarily complicate the face-merging code.

Fair enough.

Another option that had been voiced is to split the value into two 
attributes: :extend-foreground and :extend-background. Then we can set 
the default values for both an immediate improvement (:extend-foreground 
to nil) and maximum compatibility (:extend-background to t).

But that brings me to a question. I think whether the 'region' face has 
:extend-background to nil or not is a personal choice. Would the user 
have to fight and convince the author of the theme they are using to 
change that attribute? Or will it be easy to apply personal 
customization and call it a day?

> I guess the best solution at this point is to require all themes to
> make the appropriate changes.

Or that.





  reply	other threads:[~2019-11-15 23:50 UTC|newest]

Thread overview: 170+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-16  7:00 bug#37774: 27.0.50; new :extend attribute broke visuals of all themes and other packages Andrey Orst
2019-10-16  7:53 ` Eli Zaretskii
2019-10-16  8:12   ` Andrey Orst
2019-10-16 11:05     ` Eli Zaretskii
2019-10-16 14:20       ` Stefan Kangas
2019-10-16 16:25         ` Eli Zaretskii
2019-10-16  8:59   ` Michael Heerdegen
2019-10-16  9:17     ` martin rudalics
2019-10-16 11:26     ` Eli Zaretskii
2019-10-16 11:38       ` Michael Heerdegen
2019-10-16 12:59         ` Eli Zaretskii
2019-10-16 11:10   ` Ergus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2019-10-16 11:17     ` Andrey Orst
2019-10-16 11:41       ` Eli Zaretskii
2019-10-16 12:08         ` Andrey Orst
2019-10-16 13:05           ` Eli Zaretskii
2019-10-16 11:42     ` Eli Zaretskii
2019-10-16 13:18       ` Ergus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2019-10-16 13:33         ` Andrey Orst
2019-10-16 14:21           ` Ergus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2019-10-16 17:33         ` Eli Zaretskii
2019-10-16 18:13           ` Andrey Orst
2019-10-16 18:50             ` Eli Zaretskii
2019-10-17 19:05             ` Kévin Le Gouguec
2019-10-17 20:38               ` Kévin Le Gouguec
2019-10-17 11:36           ` Michael Albinus
2019-10-17 12:38             ` Ergus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2019-10-17 13:05             ` Eli Zaretskii
2019-10-17 16:18               ` Michael Albinus
2019-10-17 16:39                 ` Eli Zaretskii
2019-10-16 17:27     ` Juri Linkov
2019-10-16 18:07       ` Andrey Orst
2019-10-16 18:18         ` Juri Linkov
2019-10-16 18:54           ` Eli Zaretskii
2019-10-16 19:52             ` Juri Linkov
2019-10-16 20:06               ` Eli Zaretskii
2019-10-16 19:55             ` Eli Zaretskii
2019-10-16 20:14               ` Juri Linkov
2019-10-17  6:18                 ` Eli Zaretskii
2019-10-17  8:52                   ` Andrey Orst
2019-10-17  8:59                     ` Eli Zaretskii
2019-10-17  9:20                       ` Andrey Orst
2019-10-17 12:54                         ` Eli Zaretskii
2019-10-17 13:40                           ` Andrey Orst
2019-10-17 14:02                             ` Eli Zaretskii
2019-10-17 14:13                               ` Andrey Orst
2019-10-17 14:38                                 ` Eli Zaretskii
2019-10-17 14:02                       ` Dmitry Gutov
2019-10-17 16:20                         ` Eli Zaretskii
2019-10-17 16:46                           ` Dmitry Gutov
2019-10-17 17:20                             ` Eli Zaretskii
2019-10-17  8:25                 ` martin rudalics
2019-10-17 14:08                   ` Dmitry Gutov
2019-10-17 16:29                     ` Eli Zaretskii
2019-10-17 16:50                       ` Dmitry Gutov
2019-10-17 17:23                         ` Eli Zaretskii
2019-10-18 14:25                           ` Dmitry Gutov
2019-10-20 20:07                           ` Dmitry Gutov
2019-10-21  6:10                             ` Eli Zaretskii
2019-10-23 12:47                               ` Dmitry Gutov
2019-10-23 15:39                                 ` Eli Zaretskii
2019-10-23 16:12                                   ` Dmitry Gutov
2019-10-23 18:04                                     ` Eli Zaretskii
2019-10-23 20:28                                       ` Dmitry Gutov
2019-10-24 14:56                                         ` Eli Zaretskii
2019-10-24 17:04                                         ` Kévin Le Gouguec
2019-10-17 22:22                   ` Juri Linkov
2019-10-18  5:28                     ` Andrey Orst
2019-10-18  6:53                     ` Eli Zaretskii
2019-10-19 20:53                       ` Juri Linkov
2019-10-20  6:03                         ` Eli Zaretskii
2019-10-20 15:42                           ` Juri Linkov
2019-10-20 16:59                             ` Eli Zaretskii
2019-10-21 21:29                         ` Juri Linkov
2019-10-18  8:25                     ` martin rudalics
2019-10-18 12:41                       ` Dmitry Gutov
2019-10-18 13:04                       ` Andrey Orst
2019-10-17 13:56                 ` Dmitry Gutov
2019-10-17 16:28                   ` Eli Zaretskii
2019-10-17 13:54             ` Dmitry Gutov
2019-10-16 18:46       ` Eli Zaretskii
2019-10-16 19:46         ` Juri Linkov
2019-10-16 20:03           ` Eli Zaretskii
2019-10-16 20:23             ` Juri Linkov
2019-10-16 20:37               ` Ergus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2019-10-17  6:43                 ` Eli Zaretskii
2019-10-17  6:40               ` Eli Zaretskii
2019-10-16 20:29             ` Ergus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2019-10-17 14:12               ` Dmitry Gutov
2019-10-16 20:23           ` Ergus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2019-10-16 11:33 ` Andrey Orst
2019-10-16 15:30   ` Eli Zaretskii
2019-10-31 16:06 ` Jonas Bernoulli
2019-10-31 16:48   ` Eli Zaretskii
2019-11-06 16:26     ` Jonas Bernoulli
2019-11-06 17:06       ` martin rudalics
2019-11-07 13:58         ` Eli Zaretskii
2019-11-07 15:41           ` Ergus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2019-11-07 17:10             ` martin rudalics
2019-11-07 21:57               ` Ergus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2019-11-08  9:20                 ` martin rudalics
2019-11-08 10:37                   ` Eli Zaretskii
2019-11-08 18:26                     ` martin rudalics
2019-11-08 19:14                       ` Eli Zaretskii
2019-11-08 11:39                   ` Ergus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2019-11-08 18:27                     ` martin rudalics
2019-12-05 16:48                   ` Kévin Le Gouguec
2019-12-05 18:02                     ` Eli Zaretskii
2019-12-05 19:05                       ` Kévin Le Gouguec
2019-12-05 19:19                         ` Eli Zaretskii
2019-12-05 18:22                     ` Ergus via Bug reports for GNU Emacs, the Swiss army knife of text editors
2019-12-05 18:47                       ` Eli Zaretskii
2019-11-07 13:59       ` Eli Zaretskii
2019-11-11 10:52         ` Jonas Bernoulli
2019-11-11 19:03           ` Jonas Bernoulli
2019-11-14 11:33             ` Eli Zaretskii
2019-11-14 14:14               ` Dmitry Gutov
2019-11-14 14:41                 ` Eli Zaretskii
2019-11-14 22:42                   ` Dmitry Gutov
2019-11-15  8:08                     ` Eli Zaretskii
2019-11-15 23:50                       ` Dmitry Gutov [this message]
2019-11-16  8:09                         ` Eli Zaretskii
2019-11-16  8:17                           ` Dmitry Gutov
2019-11-23 23:20             ` Juri Linkov
2019-11-24 16:14               ` Eli Zaretskii
2019-11-25 23:45                 ` Juanma Barranquero
2019-11-26 17:44                   ` Eli Zaretskii
2019-11-25  0:29               ` Dmitry Gutov
2019-11-25 16:00                 ` Eli Zaretskii
2019-11-25 23:50                   ` Dmitry Gutov
2019-11-26 17:43                     ` Eli Zaretskii
2019-12-02  0:05                       ` Dmitry Gutov
2019-12-02 16:21                         ` Eli Zaretskii
2019-12-03  0:01                           ` Dmitry Gutov
2019-12-03 16:21                             ` Eli Zaretskii
2019-12-05  1:44                               ` Dmitry Gutov
2019-12-05 15:47                                 ` Eli Zaretskii
2019-12-06 15:44                                   ` Dmitry Gutov
2019-12-06 16:18                                     ` Eli Zaretskii
2019-12-06 16:58                                       ` Dmitry Gutov
2019-12-06 17:31                                         ` Eli Zaretskii
2019-12-07  1:06                                           ` Dmitry Gutov
2019-12-07  7:53                                             ` Eli Zaretskii
2019-12-07 17:06                                               ` Dmitry Gutov
2019-12-07 17:53                                                 ` Eli Zaretskii
2019-12-07 18:55                                                   ` Dmitry Gutov
2019-12-07 19:14                                                     ` Eli Zaretskii
2019-12-08  0:42                                                       ` Dmitry Gutov
2019-12-08  3:32                                                         ` Eli Zaretskii
2019-12-08 10:39                                                           ` Dmitry Gutov
2019-12-08 15:50                                                             ` Eli Zaretskii
2019-12-08 21:20                                                               ` Dmitry Gutov
2019-12-09 12:59                                                                 ` Eli Zaretskii
2019-12-09 14:07                                                                   ` Dmitry Gutov
2019-12-09 14:42                                                                     ` Eli Zaretskii
2019-12-09 15:24                                                                       ` Dmitry Gutov
2019-12-09 15:42                                                                         ` Eli Zaretskii
2019-12-10  0:20                                                                           ` Dmitry Gutov
2019-12-10 15:57                                                                             ` Eli Zaretskii
2019-12-11 23:02                                                                               ` Juri Linkov
2019-12-12  4:36                                                                                 ` Eli Zaretskii
2019-12-12 23:44                                                                                   ` Juri Linkov
2019-12-13  7:03                                                                                     ` Eli Zaretskii
2019-11-27 21:30                     ` Juri Linkov
2019-11-27 23:34                       ` Dmitry Gutov
2019-11-28 15:19                         ` Eli Zaretskii
2019-11-28 15:16                       ` Eli Zaretskii
2019-11-30 11:35                         ` Eli Zaretskii
2019-12-02  0:07                           ` Dmitry Gutov
2019-10-31 17:29   ` Dmitry Gutov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c0bfad73-0b6a-ec3f-a4e1-d80a72bed98c@yandex.ru \
    --to=dgutov@yandex.ru \
    --cc=37774@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    --cc=jonas@bernoul.li \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).