From: Eli Zaretskii <eliz@gnu.org>
To: Philip Kaludercic <philipk@posteo.net>
Cc: larsi@gnus.org, 57639@debbugs.gnu.org
Subject: bug#57639: [PATCH] Add new command 'toggle-theme'
Date: Sun, 18 Sep 2022 15:52:27 +0300 [thread overview]
Message-ID: <83a66wzvxw.fsf@gnu.org> (raw)
In-Reply-To: <87h715dnut.fsf@posteo.net> (message from Philip Kaludercic on Sun, 18 Sep 2022 09:38:02 +0000)
> From: Philip Kaludercic <philipk@posteo.net>
> Cc: larsi@gnus.org, 57639@debbugs.gnu.org
> Date: Sun, 18 Sep 2022 09:38:02 +0000
>
> >> >> + (let* ((theme (car custom-enabled-themes))
> >> >> + (family (plist-get (get theme 'theme-properties) :family)))
> >> >> + (unless family
> >> >> + (error "`%s' is not part of a family" theme))
> >> >
> >> > "Family"? this terminology was never mentioned in the manual or the
> >> > doc string. How about
> >> >
> >> > Theme `%s' does not have any variants
> >> >
> >> > instead?
> >>
> >> Strictly speaking that error message would be wrong at this point,
> >> because we cannot say if a theme has no variants if it is not part of a
> >> family. This is because variants of a theme are all those that are part
> >> of the same family. I think it would be better to clarify this in the
> >> documentation.
> >
> > But the documentation doesn't explain what it means for a theme to be
> > part of a family. Specifically, how does one tell, by looking at a
> > theme, whether it is or isn't part of a family?
> >
> > An alternative for what I suggested above is to say
> >
> > Theme `%s' does not have any known variants
>
> I get what you mean... how about
>
> (error "Theme `%s' is not part of a family of variants" theme)
>
> ?
Theme `%s' is not part of a family of theme variants
> >> +Themes only have variants if they are part of a family of themes.
> >
> > This should explain what it means to be part of a family, otherwise
> > this sentence is not helpful.
>
> My intention was for this to be an explanation. The issue is that
> variants and family are mutually recursive concepts:
>
> - A variant of a theme are those which are part of the same family
> - A family of themes is the set of all variants of a theme.
>
> Perhaps it is just easier to collapse both concepts into either variant
> of family and just "expose" by documenting it. I've tried doing so
> below.
Here's an attempt to explain what is a "family", in case it can still
be of interest:
A @dfn{family} of themes is a set of similar themes that differ by
minor aspects, such as face colors that are meant for the light vs
dark background of the frame.
next prev parent reply other threads:[~2022-09-18 12:52 UTC|newest]
Thread overview: 102+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-07 7:19 bug#57639: [PATCH] Add new command 'toggle-theme' Philip Kaludercic
2022-09-07 8:06 ` Stefan Kangas
2022-09-07 8:33 ` Philip Kaludercic
2022-09-07 8:51 ` Stefan Kangas
2022-09-07 13:03 ` Lars Ingebrigtsen
2022-09-07 13:31 ` Philip Kaludercic
2022-09-08 11:46 ` Lars Ingebrigtsen
2022-09-11 8:26 ` Philip Kaludercic
2022-09-11 11:11 ` Lars Ingebrigtsen
2022-09-11 11:22 ` Lars Ingebrigtsen
2022-09-11 11:42 ` Philip Kaludercic
2022-09-11 11:54 ` Lars Ingebrigtsen
2022-09-11 18:47 ` Philip Kaludercic
2022-09-12 10:10 ` Lars Ingebrigtsen
2022-09-12 11:06 ` Philip Kaludercic
2022-09-12 11:12 ` Lars Ingebrigtsen
2022-09-12 13:11 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-09-12 14:51 ` Michael Albinus
2022-09-13 12:09 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-09-12 15:26 ` Philip Kaludercic
2022-09-13 2:25 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-09-13 11:10 ` Lars Ingebrigtsen
2022-09-14 11:38 ` Philip Kaludercic
2022-09-14 13:03 ` Lars Ingebrigtsen
2022-09-14 14:37 ` Philip Kaludercic
2022-09-14 15:21 ` Lars Ingebrigtsen
2022-09-17 18:13 ` Philip Kaludercic
2022-09-17 18:32 ` Eli Zaretskii
2022-09-17 21:33 ` Philip Kaludercic
2022-09-18 6:53 ` Eli Zaretskii
2022-09-18 9:38 ` Philip Kaludercic
2022-09-18 10:39 ` Lars Ingebrigtsen
2022-09-18 11:39 ` Philip Kaludercic
2022-09-19 7:58 ` Lars Ingebrigtsen
2022-09-19 8:05 ` Philip Kaludercic
2022-09-19 8:15 ` Lars Ingebrigtsen
2022-09-19 10:13 ` Philip Kaludercic
2022-09-20 21:08 ` Philip Kaludercic
2022-09-20 21:11 ` Lars Ingebrigtsen
2022-09-20 21:35 ` Philip Kaludercic
2022-09-21 11:02 ` Lars Ingebrigtsen
2022-09-21 11:30 ` Philip Kaludercic
2022-09-21 11:38 ` Lars Ingebrigtsen
2022-09-21 11:46 ` Philip Kaludercic
2022-09-21 12:06 ` Lars Ingebrigtsen
2022-09-21 12:26 ` Philip Kaludercic
2022-10-09 12:58 ` Philip Kaludercic
2022-10-09 14:26 ` Lars Ingebrigtsen
2022-10-09 15:13 ` Philip Kaludercic
2022-10-09 20:32 ` Stefan Kangas
2022-10-09 21:02 ` Philip Kaludercic
2022-10-09 21:43 ` Philip Kaludercic
2022-10-10 0:56 ` Stefan Kangas
2022-10-10 1:17 ` Protesilaos Stavrou
2022-10-10 8:16 ` Philip Kaludercic
2022-10-10 8:14 ` Lars Ingebrigtsen
2022-10-10 11:02 ` Philip Kaludercic
2022-10-11 0:25 ` Lars Ingebrigtsen
2022-10-11 9:06 ` Philip Kaludercic
2022-10-11 19:43 ` Lars Ingebrigtsen
2022-10-11 19:51 ` Philip Kaludercic
2022-10-11 20:04 ` Lars Ingebrigtsen
2022-10-11 20:09 ` Philip Kaludercic
2022-10-11 20:49 ` Lars Ingebrigtsen
2022-10-13 8:50 ` Philip Kaludercic
2022-10-13 9:10 ` Philip Kaludercic
2022-10-13 10:34 ` Eli Zaretskii
2022-10-13 10:35 ` Philip Kaludercic
2022-10-13 14:03 ` Stefan Kangas
2022-10-13 14:07 ` Philip Kaludercic
2022-10-19 2:46 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-10-19 7:16 ` Philip Kaludercic
2022-10-19 12:21 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
[not found] ` <87a65qla8d.fsf@posteo.net>
2022-10-20 17:04 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-10-20 17:42 ` Philip Kaludercic
2022-10-20 20:01 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-10-19 2:43 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-10-19 7:20 ` Philip Kaludercic
2022-10-19 10:59 ` Eli Zaretskii
2022-10-19 12:25 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-10-13 19:12 ` Lars Ingebrigtsen
2022-10-13 20:21 ` Philip Kaludercic
2022-09-21 13:08 ` Protesilaos Stavrou
2022-09-21 13:13 ` Philip Kaludercic
2022-09-21 13:21 ` Protesilaos Stavrou
2022-09-21 13:05 ` Protesilaos Stavrou
2022-09-18 12:52 ` Eli Zaretskii [this message]
2022-09-18 12:56 ` Philip Kaludercic
2022-09-20 3:40 ` bug#57639: Toggling, in general Richard Stallman
2022-09-20 8:07 ` Philip Kaludercic
2022-09-21 2:47 ` Richard Stallman
2022-09-21 9:22 ` Robert Pluim
2022-09-20 12:20 ` Visuwesh
2022-10-13 20:46 ` bug#57639: [PATCH] Add new command 'toggle-theme' Mauro Aranda
2022-10-13 22:19 ` Philip Kaludercic
2022-10-13 22:53 ` Mauro Aranda
2022-10-14 7:28 ` Philip Kaludercic
2022-10-14 11:22 ` Mauro Aranda
2022-10-14 15:21 ` Philip Kaludercic
2022-10-14 18:20 ` Philip Kaludercic
2022-10-15 15:24 ` Philip Kaludercic
2022-10-14 6:11 ` Eli Zaretskii
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=83a66wzvxw.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=57639@debbugs.gnu.org \
--cc=larsi@gnus.org \
--cc=philipk@posteo.net \
/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).