Greetings to all fellow sufferers!
So, I upgraded to the Modus Themes 4, and everything broke. I keep recovering
my configuration, 15 minutes before sleep every day... Ugh!
(That said, I get it. When I wrote my patch for Org to upgrade it from MathJax
3 to 4, I spent most of my time and lines of code on regression tests, ensuring
smooth transition for everyone, making every old configuration approximate the
new reality as well as possible. In the case of Modus Themes, that would have
required a lot of engineering work, with possibly hundreds of regression tests.)
Anyway, I would like to comment on
"Option for completion framework aesthetics".
The manual opens with the sentence
"This affects Company, Corfu, Flx, Icomplete/Fido, Ido, Ivy, Orderless,
Vertico."
but it affects built-in completions too. As a user of the built-in completions,
I found it confusing (looking elsewhere for the customization for me).
Then, I tried the first example
(setq modus-themes-completions
'((matches . (extrabold background))
(selection . (semibold italic))))
but customize chokes on the type.
More specifically,
(setopt modus-themes-completions
'((matches . (background))))
gives the error:
Warning (emacs): Value ‘((matches background))’ does not match type (set (cons
:tag Matches (const matches) (set :tag Style of matches :greedy t (choice :tag
Font weight (must be supported by the typeface) (const :tag Unspecified (use
whatever the default is) nil) (const :tag Thin thin) (const :tag Ultra-light
ultralight) (const :tag Extra-light extralight) (const :tag Light light) (const
:tag Semi-light semilight) (const :tag Regular regular) (const :tag Medium
medium) (const :tag Semi-bold semibold) (const :tag Bold bold) (const :tag
Extra-bold extrabold) (const :tag Ultra-bold ultrabold)) (const :tag Italic font
(oblique or slanted forms) italic) (const :tag Underline underline))) (cons :tag
Selection (const selection) (set :tag Style of selection :greedy t (choice :tag
Font weight (must be supported by the typeface) (const :tag Unspecified (use
whatever the default is) nil) (const :tag Thin thin) (const :tag Ultra-light
ultralight) (const :tag Extra-light extralight) (const :tag Light light) (const
:tag Semi-light semilight) (const :tag Regular regular) (const :tag Medium
medium) (const :tag Semi-bold semibold) (const :tag Bold bold) (const :tag
Extra-bold extrabold) (const :tag Ultra-bold ultrabold)) (const :tag Italic font
(oblique or slanted forms) italic) (const :tag Underline underline))))
Rudy
--
"Genius is 1% inspiration and 99% perspiration."
-- Thomas Alva Edison, 1932
Rudolf Adamkovič <salutis@me.com> [he/him]
Studenohorská 25
84103 Bratislava
Slovakia
> From: Rudolf Adamkovič <salutis@me.com>> Date: Sat, 7 Jan 2023 22:19:32 +0100>> Greetings to all fellow sufferers!
Good day Rudy,
> So, I upgraded to the Modus Themes 4, and everything broke. I keep recovering> my configuration, 15 minutes before sleep every day... Ugh!
I can help you speed up the process, if you need. Just send me your
package configuration.
> (That said, I get it. When I wrote my patch for Org to upgrade it from MathJax> 3 to 4, I spent most of my time and lines of code on regression tests, ensuring> smooth transition for everyone, making every old configuration approximate the> new reality as well as possible. In the case of Modus Themes, that would have> required a lot of engineering work, with possibly hundreds of regression tests.)
Add the fact that the themes are built into Emacs and that I would have
to consider backward-compatibility for multiple versions. For better or
worse, this is a one-person dev effort and it would be too hard to make
it all work seamlessly. The GNU ELPA package is still at version 3 due
to some ELPA error that was reported on this mailing list, but even so I
have not found time to troubleshoot it.
> Anyway, I would like to comment on>> "Option for completion framework aesthetics".>> The manual opens with the sentence>> "This affects Company, Corfu, Flx, Icomplete/Fido, Ido, Ivy, Orderless,> Vertico.">> but it affects built-in completions too. As a user of the built-in completions,> I found it confusing (looking elsewhere for the customization for me).
I just updated it to this:
This affects Company, Corfu, Flx, Icomplete/Fido, Ido, Ivy,
Orderless, Vertico, and the standard Completions' buffer.
Is it okay?
> Then, I tried the first example>> (setq modus-themes-completions> '((matches . (extrabold background))> (selection . (semibold italic))))>> but customize chokes on the type.>> More specifically,>> (setopt modus-themes-completions> '((matches . (background))))>> gives the error:>> [... 18 lines elided]
Sorry about that! It was an outdated sample. The 'background' is no
longer applicable. Changes to colours are done through palette
overrides. Some examples are provided in the manual:
<https://protesilaos.com/emacs/modus-themes#h:d959f789-0517-4636-8780-18123f936f91>
All the best,
Prot
--
Protesilaos Stavrou
https://protesilaos.com
Protesilaos Stavrou <info@protesilaos.com> writes:
> I can help you speed up the process, if you need. Just send me your package> configuration.
I almost have it all set up now, but thank you for the offer!
> Add the fact that the themes are built into Emacs and that I would have to> consider backward-compatibility for multiple versions. For better or worse,> this is a one-person dev effort and it would be too hard to make it all work> seamlessly.
Yup, exactly. It would have required a lot of engineering effort. To clarify,
I meant no disrespect. I only wanted to point out that I understand *why* you
did it, as a fellow software engineer.
> I just updated it to this:>> This affects Company, Corfu, Flx, Icomplete/Fido, Ido, Ivy,> Orderless, Vertico, and the standard Completions' buffer.>> Is it okay?
Sounds good.
/puts on the Perfectionist Hat/
I would kill the possessive (') and write
- the standard completion buffer, or
- the standard completions buffer, or
- the standard completion list buffer, or
- the standard *Completions* buffer.
(The official docs use those forms, nowhere the Completions' buffer, AFAIK.)
> Sorry about that! It was an outdated sample. The 'background' is no longer> applicable. Changes to colours are done through palette overrides.
I see. Thanks!
Rudy
--
"Programming reliably -- must be an activity of an undeniably
mathematical nature […] You see, mathematics is about thinking, and
doing mathematics is always trying to think as well as possible."
-- Edsger W. Dijkstra, 1981
Rudolf Adamkovič <salutis@me.com> [he/him]
Studenohorská 25
84103 Bratislava
Slovakia
> From: Rudolf Adamkovič <salutis@me.com>> Date: Sun, 8 Jan 2023 21:13:44 +0100>> Protesilaos Stavrou <info@protesilaos.com> writes:>>> I can help you speed up the process, if you need. Just send me your package>> configuration.>> I almost have it all set up now, but thank you for the offer!
You are welcome!
> [... 9 lines elided]>> I just updated it to this:>>>> This affects Company, Corfu, Flx, Icomplete/Fido, Ido, Ivy,>> Orderless, Vertico, and the standard Completions' buffer.>>>> Is it okay?>> Sounds good.>> /puts on the Perfectionist Hat/>> I would kill the possessive (') and write>> - the standard completion buffer, or> - the standard completions buffer, or> - the standard completion list buffer, or> - the standard *Completions* buffer.>> (The official docs use those forms, nowhere the Completions' buffer, AFAIK.)
Makes sense. I updated it to use the one with the asterisks.
--
Protesilaos Stavrou
https://protesilaos.com