aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorProtesilaos Stavrou2022-06-01 14:05:49 +0300
committerProtesilaos Stavrou2022-06-01 14:09:23 +0300
commite3ec91232fcdd4d7fe2c48fcdb78b4ac7c6356d5 (patch)
tree27f06c9b4dd9f63bd41160d14df00155722ccde7
parenta6322e7f134fa3fc4627bb36dcbbe0b78bb00091 (diff)
downloademacs-e3ec91232fcdd4d7fe2c48fcdb78b4ac7c6356d5.tar.gz
emacs-e3ec91232fcdd4d7fe2c48fcdb78b4ac7c6356d5.zip
Update modus-themes to their latest version
* admin/MAINTAINERS: Update link to the Git repository of the modus-themes; point to the new mailing list; include command for sending a bug report. * doc/misc/modus-themes.org (Install from the archives): Minor rewording. (Dealing with byte compilation errors): Clarify that occasional bugs are not always a fault of the themes. (Custom hl-todo colors): Add note about package.:(Full support for packages or face groups, Indirectly covered packages): Update lists of supported packages. (Note on avy hints): Remove obsolete node. (Note on git-gutter in Doom Emacs): Note problem with custom bitmaps, which is not the fault of the themes. (Note on display-fill-column-indicator-mode): Show how to use a thicker indicator.:(Why are colors mostly variants of blue, magenta, cyan?): Minor rewording. (Sources of the themes): Update official theme sources. (Issues you can help with) (Patches require copyright assignment to the FSF): Update the information on potential contributions. (Acknowledgements): Update list of contributors in the form of code or ideas/feedback. (Meta, Other notes about the project): Rename section and include more links to development-related blog posts. * etc/themes/modus-themes.el (seq): Stop requiring 'seq'. (modus-themes--version): Use internal variable for the themes' version. (modus-themes-operandi-colors, modus-themes-vivendi-colors): Make minor tweaks to the color palettes. (modus-themes-variable-pitch): Remove obsolete symbol from doc string. (modus-themes--alist-or-seq): Update function to not rely on 'seq'. (modus-themes--current-theme): Make stylistic tweaks. (modus-themes--markup): Use correct order of inheritance for faces. (modus-themes--paren, modus-themes--heading) (modus-themes--agenda-structure, modus-themes--agenda-date) (modus-themes--agenda-habit, modus-themes--mode-line-attrs) (modus-themes--mode-line-padded-box, modus-themes--button): Update to use 'modus-themes--property-lookup' instead of the previous function that depended on 'seq'. (modus-themes--diff): Make it combine as expected with the user option 'modus-themes-deuteranopia'. (modus-themes-faces): Update list of faces. (modus-themes-custom-variables): Expand support for face rotation in 'highlight-changes'. * etc/themes/modus-operandi-theme.el: * etc/themes/modus-vivendi-theme.el: Bump version number to 2.4.1. Release notes: <https://protesilaos.com/codelog/2022-06-01-modus-themes-2-4-0/>.
-rw-r--r--admin/MAINTAINERS4
-rw-r--r--doc/misc/modus-themes.org294
-rw-r--r--etc/themes/modus-operandi-theme.el4
-rw-r--r--etc/themes/modus-themes.el579
-rw-r--r--etc/themes/modus-vivendi-theme.el4
5 files changed, 417 insertions, 468 deletions
diff --git a/admin/MAINTAINERS b/admin/MAINTAINERS
index 2760a9a42b5..f0239db0089 100644
--- a/admin/MAINTAINERS
+++ b/admin/MAINTAINERS
@@ -305,7 +305,9 @@ Tramp
305 305
306Modus themes 306Modus themes
307 Maintainer: Protesilaos Stavrou 307 Maintainer: Protesilaos Stavrou
308 Repository and issue tracker: https://gitlab.com/protesilaos/modus-themes 308 Repository: https://git.sr.ht/~protesilaos
309 Mailing list: https://lists.sr.ht/~protesilaos/modus-themes
310 Bug Reports: M-x modus-themes-report-bug
309 311
310 doc/misc/modus-themes.org 312 doc/misc/modus-themes.org
311 etc/themes/modus*.el 313 etc/themes/modus*.el
diff --git a/doc/misc/modus-themes.org b/doc/misc/modus-themes.org
index 42ad3ee35fe..7b566f51c26 100644
--- a/doc/misc/modus-themes.org
+++ b/doc/misc/modus-themes.org
@@ -5,9 +5,9 @@
5#+options: ':t toc:nil author:t email:t num:t 5#+options: ':t toc:nil author:t email:t num:t
6#+startup: content 6#+startup: content
7 7
8#+macro: stable-version 2.3.0 8#+macro: stable-version 2.4.0
9#+macro: release-date 2022-04-01 9#+macro: release-date 2022-06-01
10#+macro: development-version 2.4.0-dev 10#+macro: development-version 2.5.0-dev
11#+macro: file @@texinfo:@file{@@$1@@texinfo:}@@ 11#+macro: file @@texinfo:@file{@@$1@@texinfo:}@@
12#+macro: space @@texinfo:@: @@ 12#+macro: space @@texinfo:@: @@
13#+macro: kbd @@texinfo:@kbd{@@$1@@texinfo:}@@ 13#+macro: kbd @@texinfo:@kbd{@@$1@@texinfo:}@@
@@ -34,6 +34,10 @@ explicitly marked as such.
34 34
35Current development target is {{{development-version}}}. 35Current development target is {{{development-version}}}.
36 36
37+ Homepage: https://protesilaos.com/emacs/modus-themes.
38+ Git repository: https://git.sr.ht/~protesilaos/modus-themes.
39+ Mailing list: https://lists.sr.ht/~protesilaos/modus-themes.
40
37#+toc: headlines 8 insert TOC here, with eight headline levels 41#+toc: headlines 8 insert TOC here, with eight headline levels
38 42
39* COPYING 43* COPYING
@@ -165,14 +169,10 @@ The themes are now ready to be used: [[#h:3f3c3728-1b34-437d-9d0c-b110f5b161a9][
165The ~modus-themes~ package is available from the GNU ELPA archive, which 169The ~modus-themes~ package is available from the GNU ELPA archive, which
166is configured by default. 170is configured by default.
167 171
168Prior to querying any package archive, make sure to have updated the 172Prior to querying any package archive, make sure to update the index,
169index, with {{{kbd(M-x package-refresh-contents)}}}. Then all you need to do 173with {{{kbd(M-x package-refresh-contents)}}}. Then all you need to do
170is type {{{kbd(M-x package-install)}}} and specify the ~modus-themes~. 174is type {{{kbd(M-x package-install)}}} and specify the ~modus-themes~.
171 175
172Note that older versions of the themes used to be distributed as
173standalone packages. This practice has been discontinued starting with
174version 1.0.0 of this project.
175
176Once installed, the themes are ready to be used: [[#h:3f3c3728-1b34-437d-9d0c-b110f5b161a9][Enable and load]]. 176Once installed, the themes are ready to be used: [[#h:3f3c3728-1b34-437d-9d0c-b110f5b161a9][Enable and load]].
177 177
178** Install on GNU/Linux 178** Install on GNU/Linux
@@ -211,6 +211,34 @@ guix package -i emacs-modus-themes
211 211
212They are now ready to be used: [[#h:3f3c3728-1b34-437d-9d0c-b110f5b161a9][Enable and load]]. 212They are now ready to be used: [[#h:3f3c3728-1b34-437d-9d0c-b110f5b161a9][Enable and load]].
213 213
214** Dealing with byte compilation errors
215:properties:
216:custom_id: h:e6268471-e847-4c9d-998f-49a83257b7f1
217:end:
218
219From time to time, we receive bug reports pertaining to errors with byte
220compilation. These seldom have to do with faulty code in the themes: it
221might be a shortcoming of =package.el=, some regression in the current
222development target of Emacs, a misconfiguration in an otherwise exotic
223setup, and the like.
224
225The common solution with a stable version of Emacs is to:
226
2271. Delete the =modus-themes= package.
2282. Close the current Emacs session.
2293. Install the =modus-themes= again.
230
231For those building Emacs directly from source, the solution may involve
232reverting to an earlier commit in emacs.git.
233
234At any rate, if you encounter such an issue please report it: we will
235either fix the bug on our end if it is truly ours, or help forward it to
236the relevant upstream maintainer. Whatever you do, please understand
237that a build failure does not mean we are necessarily doing something
238wrong.
239
240[[#h:6536c8d5-3f98-43ab-a787-b94120e735e8][Issues you can help with]].
241
214* Enable and load 242* Enable and load
215:properties: 243:properties:
216:custom_id: h:3f3c3728-1b34-437d-9d0c-b110f5b161a9 244:custom_id: h:3f3c3728-1b34-437d-9d0c-b110f5b161a9
@@ -4053,6 +4081,44 @@ comments are gray. Regexp constructs are adapted accordingly.
4053 (set-face-attribute 'font-lock-warning-face nil :inherit 'modus-themes-bold :foreground red-nuanced-fg))) 4081 (set-face-attribute 'font-lock-warning-face nil :inherit 'modus-themes-bold :foreground red-nuanced-fg)))
4054#+end_src 4082#+end_src
4055 4083
4084** Custom hl-todo colors
4085:PROPERTIES:
4086:CUSTOM_ID: h:2ef83a21-2f0a-441e-9634-473feb940743
4087:END:
4088
4089The =hl-todo= package provides the user option ~hl-todo-keyword-faces~:
4090it specifies a pair of keyword and corresponding color value. The Modus
4091themes configure that option in the interest of legibility. While this
4092works for our purposes, users may still prefer to apply their custom
4093values, in which case the following approach is necessary:
4094
4095#+begin_src emacs-lisp
4096(defun my-modus-themes-hl-todo-faces ()
4097 (setq hl-todo-keyword-faces '(("TODO" . "#ff0000")
4098 ("HACK" . "#ffff00")
4099 ("XXX" . "#00ffff")
4100 ("NOTE" . "#ff00ff"))))
4101
4102(add-hook 'modus-themes-after-load-theme-hook #'my-modus-themes-hl-todo-faces)
4103#+end_src
4104
4105Or include a ~let~ form, if needed:
4106
4107#+begin_src emacs-lisp
4108(defun my-modus-themes-hl-todo-faces ()
4109 (let ((red "#ff0000")
4110 (blue "#0000ff"))
4111 (setq hl-todo-keyword-faces `(("TODO" . ,blue)
4112 ("HACK" . ,red)
4113 ("XXX" . ,red)
4114 ("NOTE" . ,blue)))))
4115
4116(add-hook 'modus-themes-after-load-theme-hook #'my-modus-themes-hl-todo-faces)
4117#+end_src
4118
4119Normally, we do not touch user options, though this is an exception:
4120otherwise the defaults are not always legible.
4121
4056* Face coverage 4122* Face coverage
4057:properties: 4123:properties:
4058:custom_id: h:a9c8f29d-7f72-4b54-b74b-ddefe15d6a19 4124:custom_id: h:a9c8f29d-7f72-4b54-b74b-ddefe15d6a19
@@ -4098,6 +4164,7 @@ have lots of extensions, so the "full support" may not be 100% true…
4098+ breakpoint (provided by the built-in {{{file(gdb-mi.el)}}} library) 4164+ breakpoint (provided by the built-in {{{file(gdb-mi.el)}}} library)
4099+ calendar and diary 4165+ calendar and diary
4100+ calfw 4166+ calfw
4167+ calibredb
4101+ centaur-tabs 4168+ centaur-tabs
4102+ cfrs 4169+ cfrs
4103+ change-log and log-view (such as ~vc-print-log~, ~vc-print-root-log~) 4170+ change-log and log-view (such as ~vc-print-log~, ~vc-print-root-log~)
@@ -4112,6 +4179,7 @@ have lots of extensions, so the "full support" may not be 100% true…
4112+ completions 4179+ completions
4113+ consult 4180+ consult
4114+ corfu 4181+ corfu
4182+ corfu-quick
4115+ counsel* 4183+ counsel*
4116+ counsel-css 4184+ counsel-css
4117+ cov 4185+ cov
@@ -4146,6 +4214,7 @@ have lots of extensions, so the "full support" may not be 100% true…
4146+ easy-jekyll 4214+ easy-jekyll
4147+ ebdb 4215+ ebdb
4148+ ediff 4216+ ediff
4217+ ein (Emacs IPython Notebook)
4149+ eglot 4218+ eglot
4150+ el-search 4219+ el-search
4151+ eldoc-box 4220+ eldoc-box
@@ -4344,6 +4413,7 @@ have lots of extensions, so the "full support" may not be 100% true…
4344+ tomatinho 4413+ tomatinho
4345+ transient (pop-up windows such as Magit's) 4414+ transient (pop-up windows such as Magit's)
4346+ trashed 4415+ trashed
4416+ tree-sitter
4347+ treemacs 4417+ treemacs
4348+ tty-menu 4418+ tty-menu
4349+ tuareg 4419+ tuareg
@@ -4357,6 +4427,7 @@ have lots of extensions, so the "full support" may not be 100% true…
4357+ visible-mark 4427+ visible-mark
4358+ visual-regexp 4428+ visual-regexp
4359+ vterm 4429+ vterm
4430+ vundo
4360+ wcheck-mode 4431+ wcheck-mode
4361+ web-mode 4432+ web-mode
4362+ wgrep 4433+ wgrep
@@ -4398,6 +4469,7 @@ supported by the themes.
4398+ dtache 4469+ dtache
4399+ easy-kill 4470+ easy-kill
4400+ edit-indirect 4471+ edit-indirect
4472+ egerrit
4401+ elfeed-summary 4473+ elfeed-summary
4402+ evil-owl 4474+ evil-owl
4403+ flyspell-correct 4475+ flyspell-correct
@@ -4432,40 +4504,6 @@ supported by the themes.
4432This section covers information that may be of interest to users of 4504This section covers information that may be of interest to users of
4433individual packages. 4505individual packages.
4434 4506
4435** Note on avy hints
4436:properties:
4437:custom_id: h:2fdce705-6de7-44e6-ab7f-18f59af99e01
4438:end:
4439
4440Hints can appear everywhere, in wildly varying contexts, hence, their
4441appearance, by necessity, is a compromise. However, there are various
4442options for making them stand out. First is dimming the surroundings:
4443
4444#+begin_src emacs-lisp
4445(setq avy-background t)
4446#+end_src
4447
4448Dimming works well when you find it difficult to spot hints, any hint.
4449Second is limiting the number of faces used by hints:
4450
4451#+begin_src emacs-lisp
4452(setq avy-lead-faces
4453 '(avy-lead-face
4454 avy-lead-face-1
4455 avy-lead-face-1
4456 avy-lead-face-1
4457 avy-lead-face-1))
4458#+end_src
4459
4460Limiting the number of faces works well with longer hints when you find
4461it difficult to identify individual hints, especially with hints
4462touching each other. The first character of the hint will have an
4463intense color, the remaining ones the same neutral color.
4464
4465Third is preferring commands that produce fewer candidates. Fewer hints
4466is less noise: ~avy-goto-char-timer~ is an excellent alternative to
4467~avy-goto-char~.
4468
4469** Note on calendar.el weekday and weekend colors 4507** Note on calendar.el weekday and weekend colors
4470:properties: 4508:properties:
4471:custom_id: h:b2db46fb-32f4-44fd-8e11-d2b261cf51ae 4509:custom_id: h:b2db46fb-32f4-44fd-8e11-d2b261cf51ae
@@ -4495,6 +4533,72 @@ weekends uniformly.
4495For changes to take effect, the Calendar buffer needs to be generated 4533For changes to take effect, the Calendar buffer needs to be generated
4496anew. 4534anew.
4497 4535
4536** Note on git-gutter in Doom Emacs
4537:PROPERTIES:
4538:CUSTOM_ID: h:a195e37c-e58c-4148-b254-8ba1ed8a731a
4539:END:
4540
4541The =git-gutter= and =git-gutter-fr= packages default to drawing bitmaps
4542for the indicators they display (e.g. bitmap of a plus sign for added
4543lines). In Doom Emacs, these bitmaps are replaced with contiguous lines
4544which may look nicer, but require a change to the foreground of the
4545relevant faces to yield the desired colour combinations.
4546
4547Since this is Doom-specific, we urge users to apply changes in their
4548local setup. Below is some sample code, based on what we cover at
4549length elsewhere in this manual:
4550
4551[[#h:f4651d55-8c07-46aa-b52b-bed1e53463bb][Advanced customization]].
4552
4553[[#h:51ba3547-b8c8-40d6-ba5a-4586477fd4ae][Face specs at scale using the themes' palette]].
4554
4555#+begin_src emacs-lisp
4556(defun my-modus-themes-custom-faces ()
4557 (modus-themes-with-colors
4558 (custom-set-faces
4559 ;; Replace green with blue if you use `modus-themes-deuteranopia'.
4560 `(git-gutter-fr:added ((,class :foreground ,green-fringe-bg)))
4561 `(git-gutter-fr:deleted ((,class :foreground ,red-fringe-bg)))
4562 `(git-gutter-fr:modified ((,class :foreground ,yellow-fringe-bg))))))
4563
4564(add-hook 'modus-themes-after-load-theme-hook #'my-modus-themes-custom-faces)
4565#+end_src
4566
4567If the above does not work, try this instead:
4568
4569#+begin_src emacs-lisp
4570(after! modus-themes
4571 (modus-themes-with-colors
4572 (custom-set-faces
4573 ;; Replace green with blue if you use `modus-themes-deuteranopia'.
4574 `(git-gutter-fr:added ((,class :foreground ,green-fringe-bg)))
4575 `(git-gutter-fr:deleted ((,class :foreground ,red-fringe-bg)))
4576 `(git-gutter-fr:modified ((,class :foreground ,yellow-fringe-bg))))))
4577#+end_src
4578
4579Replace ~green-fringe-bg~ with ~blue-fringe-bg~ if you want to optimize
4580for red-green color deficiency.
4581
4582[[#h:3ed03a48-20d8-4ce7-b214-0eb7e4c79abe][Option for red-green color deficiency or deuteranopia]].
4583
4584** Note on php-mode multiline comments
4585:PROPERTIES:
4586:CUSTOM_ID: h:d0a3157b-9c04-46e8-8742-5fb2a7ae8798
4587:END:
4588
4589Depending on your build of Emacs and/or the environment it runs in,
4590multiline comments in PHP with the =php-mode= package use the
4591~font-lock-doc-face~ instead of ~font-lock-comment-face~.
4592
4593This seems to make all comments use the appropriate face:
4594
4595#+begin_src emacs-lisp
4596(defun my-multine-comments ()
4597 (setq-local c-doc-face-name 'font-lock-comment-face))
4598
4599(add-hook 'php-mode-hook #'my-multine-comments)
4600#+end_src
4601
4498** Note on underlines in compilation buffers 4602** Note on underlines in compilation buffers
4499:properties: 4603:properties:
4500:custom_id: h:420f5a33-c7a9-4112-9b04-eaf2cbad96bd 4604:custom_id: h:420f5a33-c7a9-4112-9b04-eaf2cbad96bd
@@ -4594,6 +4698,17 @@ elsewhere in this document. For example:
4594 4698
4595[[#h:51ba3547-b8c8-40d6-ba5a-4586477fd4ae][Face specs at scale using the themes' palette]]. 4699[[#h:51ba3547-b8c8-40d6-ba5a-4586477fd4ae][Face specs at scale using the themes' palette]].
4596 4700
4701To make the line thicker, set the height to be equal to the base font
4702size instead of the one pixel we use. This is done by specifying a rate
4703instead of an absolute number, as in =:height 1.0= versus =:height 1=.
4704For example:
4705
4706#+begin_src emacs-lisp
4707(modus-themes-with-colors
4708 (custom-set-faces
4709 `(fill-column-indicator ((,class :height 1.0 :background ,bg-inactive :foreground ,bg-inactive)))))
4710#+end_src
4711
4597** Note on highlight-parentheses.el 4712** Note on highlight-parentheses.el
4598:PROPERTIES: 4713:PROPERTIES:
4599:CUSTOM_ID: h:24bab397-dcb2-421d-aa6e-ec5bd622b913 4714:CUSTOM_ID: h:24bab397-dcb2-421d-aa6e-ec5bd622b913
@@ -5271,8 +5386,8 @@ and hints of green give us suitable shades of purple.
5271 5386
5272Due to the need of maintaining some difference in hueness between 5387Due to the need of maintaining some difference in hueness between
5273adjacent colors, it is not possible to make red, green, and yellow the 5388adjacent colors, it is not possible to make red, green, and yellow the
5274primary colors, because blue could not be used to control their 5389main colors, because blue cannot be used to control their luminance and,
5275luminance and, thus the relevant space would shrink considerably. 5390thus the relevant space will shrink considerably.
5276 5391
5277[[#h:5ce7ae2e-9348-4e55-b4cf-9302345b1826][Is the contrast ratio about adjacent colors?]] 5392[[#h:5ce7ae2e-9348-4e55-b4cf-9302345b1826][Is the contrast ratio about adjacent colors?]]
5278 5393
@@ -5508,8 +5623,8 @@ in which you can contribute to their ongoing development.
5508 5623
5509The ~modus-operandi~ and ~modus-vivendi~ themes are built into Emacs 28. 5624The ~modus-operandi~ and ~modus-vivendi~ themes are built into Emacs 28.
5510 5625
5511The source code of the themes is [[https://gitlab.com/protesilaos/modus-themes/][available on GitLab]], for the time 5626The source code of the themes is [[https://git.sr.ht/~protesilaos/modus-themes][available on SourceHut]]. Or check the
5512being. A [[https://github.com/protesilaos/modus-themes/][mirror on GitHub]] is also on offer. 5627[[https://gitlab.com/protesilaos/modus-themes/][GitLab mirror (former main source)]] and the [[https://github.com/protesilaos/modus-themes/][GitHub mirror]].
5513 5628
5514An HTML version of this manual is provided as an extension of the 5629An HTML version of this manual is provided as an extension of the
5515[[https://protesilaos.com/emacs/modus-themes/][author's personal website]] (does not rely on any non-free code). 5630[[https://protesilaos.com/emacs/modus-themes/][author's personal website]] (does not rely on any non-free code).
@@ -5520,7 +5635,10 @@ An HTML version of this manual is provided as an extension of the
5520:end: 5635:end:
5521#+cindex: Contributing 5636#+cindex: Contributing
5522 5637
5523A few tasks you can help with: 5638#+findex: modus-themes-report-bug
5639A few tasks you can help with by sending an email to the general
5640[[https://lists.sr.ht/~protesilaos/modus-themes][modus-themes public mailing list]] (or use the command
5641~modus-themes-report-bug~).
5524 5642
5525+ Suggest refinements to packages that are covered. 5643+ Suggest refinements to packages that are covered.
5526+ Report packages not covered thus far. 5644+ Report packages not covered thus far.
@@ -5528,7 +5646,8 @@ A few tasks you can help with:
5528+ Help expand the documentation of covered-but-not-styled packages. 5646+ Help expand the documentation of covered-but-not-styled packages.
5529+ Suggest refinements to the color palette. 5647+ Suggest refinements to the color palette.
5530+ Help expand this document or any other piece of documentation. 5648+ Help expand this document or any other piece of documentation.
5531+ Merge requests for code refinements. 5649+ Send patches for code refinements (if you need, ask me for help with
5650 Git---we all start out as beginners).
5532 5651
5533[[#h:111773e2-f26f-4b68-8c4f-9794ca6b9633][Patches require copyright assignment to the FSF]]. 5652[[#h:111773e2-f26f-4b68-8c4f-9794ca6b9633][Patches require copyright assignment to the FSF]].
5534 5653
@@ -5536,6 +5655,10 @@ It is preferable that your feedback includes some screenshots, GIFs, or
5536short videos, as well as further instructions to reproduce a given 5655short videos, as well as further instructions to reproduce a given
5537setup. Though this is not a requirement. 5656setup. Though this is not a requirement.
5538 5657
5658#+findex: modus-themes-version
5659Also consider mentioning the version of the themes you are using, such
5660as by invoking the command ~modus-themes-version~.
5661
5539Whatever you do, bear in mind the overarching objective of the Modus 5662Whatever you do, bear in mind the overarching objective of the Modus
5540themes: to keep a contrast ratio that is greater or equal to 7:1 between 5663themes: to keep a contrast ratio that is greater or equal to 7:1 between
5541background and foreground colors. If a compromise is ever necessary 5664background and foreground colors. If a compromise is ever necessary
@@ -5567,7 +5690,7 @@ will send you the assignment form for your past and future changes.
5567 5690
5568Please use your full legal name (in ASCII characters) as the subject 5691Please use your full legal name (in ASCII characters) as the subject
5569line of the message. 5692line of the message.
5570---------------------------------------------------------------------- 5693
5571REQUEST: SEND FORM FOR PAST AND FUTURE CHANGES 5694REQUEST: SEND FORM FOR PAST AND FUTURE CHANGES
5572 5695
5573[What is the name of the program or package you're contributing to?] 5696[What is the name of the program or package you're contributing to?]
@@ -5619,41 +5742,44 @@ The Modus themes are a collective effort. Every bit of work matters.
5619 Johansson, Basil L.{{{space()}}} Contovounesios, Björn Lindström, 5742 Johansson, Basil L.{{{space()}}} Contovounesios, Björn Lindström,
5620 Carlo Zancanaro, Christian Tietze, Daniel Mendler, Eli Zaretskii, 5743 Carlo Zancanaro, Christian Tietze, Daniel Mendler, Eli Zaretskii,
5621 Fritz Grabo, Illia Ostapyshyn, Kévin Le Gouguec, Kostadin Ninev, 5744 Fritz Grabo, Illia Ostapyshyn, Kévin Le Gouguec, Kostadin Ninev,
5622 Madhavan Krishnan, Markus Beppler, Matthew Stevenson, Mauro Aranda, 5745 Madhavan Krishnan, Manuel Giraud, Markus Beppler, Matthew Stevenson,
5623 Nicolas De Jaeghere, Philip Kaludercic, Pierre Téchoueyres, Rudolf 5746 Mauro Aranda, Nicolas De Jaeghere, Philip Kaludercic, Pierre
5624 Adamkovič, Stephen Gildea, Shreyas Ragavan, Stefan Kangas, Utkarsh 5747 Téchoueyres, Rudolf Adamkovič, Stephen Gildea, Shreyas Ragavan, Stefan
5625 Singh, Vincent Murphy, Xinglu Chen, Yuanchen Xie. 5748 Kangas, Utkarsh Singh, Vincent Murphy, Xinglu Chen, Yuanchen Xie.
5626 5749
5627+ Ideas and user feedback :: Aaron Jensen, Adam Porter, Adam Spiers, 5750+ Ideas and user feedback :: Aaron Jensen, Adam Porter, Adam Spiers,
5628 Adrian Manea, Alex Griffin, Alex Koen, Alex Peitsinis, Alexey Shmalko, 5751 Adrian Manea, Alex Griffin, Alex Koen, Alex Peitsinis, Alexey Shmalko,
5629 Alok Singh, Anders Johansson, André Alexandre Gomes, Antonio Hernández 5752 Alok Singh, Anders Johansson, André Alexandre Gomes, Andrew Tropin,
5630 Blas, Arif Rezai, Augusto Stoffel, Basil L.{{{space()}}} 5753 Antonio Hernández Blas, Arif Rezai, Augusto Stoffel, Basil
5631 Contovounesios, Burgess Chang, Christian Tietze, Christopher Dimech, 5754 L.{{{space()}}} Contovounesios, Burgess Chang, Christian Tietze,
5632 Damien Cassou, Daniel Mendler, Dario Gjorgjevski, David Edmondson, 5755 Christopher Dimech, Christopher League, Damien Cassou, Daniel Mendler,
5633 Davor Rotim, Divan Santana, Eliraz Kedmi, Emanuele Michele Alberto 5756 Dario Gjorgjevski, David Edmondson, Davor Rotim, Divan Santana, Eliraz
5634 Monterosso, Farasha Euker, Feng Shu, Gautier Ponsinet, Gerry Agbobada, 5757 Kedmi, Emanuele Michele Alberto Monterosso, Farasha Euker, Feng Shu,
5635 Gianluca Recchia, Guilherme Semente, Gustavo Barros, Hörmetjan Yiltiz, 5758 Gautier Ponsinet, Gerry Agbobada, Gianluca Recchia, Gonçalo Marrafa,
5636 Ilja Kocken, Iris Garcia, Jeremy Friesen, Jerry Zhang, Johannes 5759 Guilherme Semente, Gustavo Barros, Hörmetjan Yiltiz, Ilja Kocken, Iris
5637 Grødem, John Haman, Jorge Morais, Joshua O'Connor, Julio 5760 Garcia, Ivan Popovych, Jeremy Friesen, Jerry Zhang, Johannes Grødem,
5638 C. Villasante, Kenta Usami, Kevin Fleming, Kévin Le Gouguec, Kostadin 5761 John Haman, Jorge Morais, Joshua O'Connor, Julio C. Villasante, Kenta
5639 Ninev, Len Trigg, Lennart C. Karssen, Magne Hov, Manuel Uberti, Mark 5762 Usami, Kevin Fleming, Kévin Le Gouguec, Kostadin Ninev, Len Trigg,
5640 Bestley, Mark Burton, Markus Beppler, Mauro Aranda, Michael 5763 Lennart C. Karssen, Magne Hov, Manuel Uberti, Mark Bestley, Mark
5764 Burton, Markus Beppler, Mauro Aranda, Maxime Tréca, Michael
5641 Goldenberg, Morgan Smith, Morgan Willcock, Murilo Pereira, Nicky van 5765 Goldenberg, Morgan Smith, Morgan Willcock, Murilo Pereira, Nicky van
5642 Foreest, Nicolas De Jaeghere, Paul Poloskov, Pengji Zhang, Pete 5766 Foreest, Nicolas De Jaeghere, Paul Poloskov, Pengji Zhang, Pete
5643 Kazmier, Peter Wu, Philip Kaludercic, Pierre Téchoueyres, Robert 5767 Kazmier, Peter Wu, Philip Kaludercic, Pierre Téchoueyres, Przemysław
5644 Hepple, Roman Rudakov, Ryan Phillips, Rytis Paškauskas, Rudolf 5768 Kryger, Robert Hepple, Roman Rudakov, Ryan Phillips, Rytis Paškauskas,
5645 Adamkovič, Sam Kleinman, Samuel Culpepper, Saša Janiška, Shreyas 5769 Rudolf Adamkovič, Sam Kleinman, Samuel Culpepper, Saša Janiška,
5646 Ragavan, Simon Pugnet, Tassilo Horn, Thibaut Verron, Thomas Heartman, 5770 Shreyas Ragavan, Simon Pugnet, Tassilo Horn, Thibaut Verron, Thomas
5647 Togan Muftuoglu, Tony Zorman, Trey Merkley, Tomasz Hołubowicz, Toon 5771 Heartman, Togan Muftuoglu, Tony Zorman, Trey Merkley, Tomasz
5648 Claes, Uri Sharf, Utkarsh Singh, Vincent Foley. As well as users: 5772 Hołubowicz, Toon Claes, Uri Sharf, Utkarsh Singh, Vincent Foley. As
5649 Ben, CsBigDataHub1, Emacs Contrib, Eugene, Fourchaux, Fredrik, 5773 well as users: Ben, CsBigDataHub1, Emacs Contrib, Eugene, Fourchaux,
5650 Moesasji, Nick, TheBlob42, Trey, bepolymathe, bit9tream, derek-upham, 5774 Fredrik, Moesasji, Nick, TheBlob42, Trey, bepolymathe, bit9tream,
5651 doolio, fleimgruber, gitrj95, iSeeU, jixiuf, okamsn, pRot0ta1p. 5775 derek-upham, doolio, fleimgruber, gitrj95, iSeeU, jixiuf, okamsn,
5652 5776 pRot0ta1p.
5653+ Packaging :: Basil L.{{{space()}}} Contovounesios, Eli Zaretskii, Glenn 5777
5654 Morris, Mauro Aranda, Richard Stallman, Stefan Kangas (core Emacs), 5778+ Packaging :: Basil L.{{{space()}}} Contovounesios, Eli Zaretskii,
5655 Stefan Monnier (GNU Elpa), André Alexandre Gomes, Dimakakos Dimos, 5779 Glenn Morris, Mauro Aranda, Richard Stallman, Stefan Kangas (core
5656 Morgan Smith, Nicolas Goaziou (Guix), Dhavan Vaidya (Debian). 5780 Emacs), Stefan Monnier (GNU Elpa), André Alexandre Gomes, Andrew
5781 Tropin, Dimakakos Dimos, Morgan Smith, Nicolas Goaziou (Guix), Dhavan
5782 Vaidya (Debian).
5657 5783
5658+ Inspiration for certain features :: Bozhidar Batsov (zenburn-theme), 5784+ Inspiration for certain features :: Bozhidar Batsov (zenburn-theme),
5659 Fabrice Niessen (leuven-theme). 5785 Fabrice Niessen (leuven-theme).
@@ -5663,7 +5789,7 @@ Jaeghere, and Omar Antolín Camarena for their long time contributions
5663and insightful commentary on key aspects of the themes' design and/or 5789and insightful commentary on key aspects of the themes' design and/or
5664aspects of their functionality. 5790aspects of their functionality.
5665 5791
5666* Meta 5792* Other notes about the project
5667:properties: 5793:properties:
5668:custom_id: h:13752581-4378-478c-af17-165b6e76bc1b 5794:custom_id: h:13752581-4378-478c-af17-165b6e76bc1b
5669:end: 5795:end:
@@ -5688,12 +5814,16 @@ of this sort):
5688+ [[https://protesilaos.com/codelog/2021-06-02-modus-themes-org-agenda/][Introducing the variable modus-themes-org-agenda]] (2021-06-02) 5814+ [[https://protesilaos.com/codelog/2021-06-02-modus-themes-org-agenda/][Introducing the variable modus-themes-org-agenda]] (2021-06-02)
5689+ [[https://protesilaos.com/codelog/2022-01-02-review-modus-themes-org-habit-colours/][Modus themes: review of the org-habit graph colours]] (2022-01-02) 5815+ [[https://protesilaos.com/codelog/2022-01-02-review-modus-themes-org-habit-colours/][Modus themes: review of the org-habit graph colours]] (2022-01-02)
5690+ [[https://protesilaos.com/codelog/2022-01-03-modus-themes-port-faq/][Re: VSCode or Vim ports of the Emacs modus-themes?]] (2022-01-03) 5816+ [[https://protesilaos.com/codelog/2022-01-03-modus-themes-port-faq/][Re: VSCode or Vim ports of the Emacs modus-themes?]] (2022-01-03)
5817+ [[https://protesilaos.com/codelog/2022-04-20-modus-themes-case-study-avy/][Modus themes: case study on Avy faces and colour combinations]] (2022-04-20)
5818+ [[https://protesilaos.com/codelog/2022-04-21-modus-themes-colour-theory/][Emacs: colour theory and techniques used in the Modus themes]] (2022-04-21)
5691 5819
5692And here are the canonical sources of this project's documentation: 5820And here are the canonical sources of this project:
5693 5821
5694+ Manual :: <https://protesilaos.com/emacs/modus-themes> 5822+ Manual :: <https://protesilaos.com/emacs/modus-themes>
5695+ Change Log :: <https://protesilaos.com/emacs/modus-themes-changelog> 5823+ Change Log :: <https://protesilaos.com/emacs/modus-themes-changelog>
5696+ Screenshots :: <https://protesilaos.com/emacs/modus-themes-pictures> 5824+ Screenshots :: <https://protesilaos.com/emacs/modus-themes-pictures>
5825+ Git repository :: https://git.sr.ht/~protesilaos/modus-themes
5826+ Mailing list :: https://lists.sr.ht/~protesilaos/modus-themes
5697 5827
5698* GNU Free Documentation License 5828* GNU Free Documentation License
5699:properties: 5829:properties:
diff --git a/etc/themes/modus-operandi-theme.el b/etc/themes/modus-operandi-theme.el
index be80b394102..646504636f0 100644
--- a/etc/themes/modus-operandi-theme.el
+++ b/etc/themes/modus-operandi-theme.el
@@ -3,8 +3,8 @@
3;; Copyright (C) 2019-2022 Free Software Foundation, Inc. 3;; Copyright (C) 2019-2022 Free Software Foundation, Inc.
4 4
5;; Author: Protesilaos Stavrou <info@protesilaos.com> 5;; Author: Protesilaos Stavrou <info@protesilaos.com>
6;; URL: https://gitlab.com/protesilaos/modus-themes 6;; URL: https://git.sr.ht/~protesilaos/modus-themes
7;; Version: 2.3.0 7;; Version: 2.4.1
8;; Package-Requires: ((emacs "27.1")) 8;; Package-Requires: ((emacs "27.1"))
9;; Keywords: faces, theme, accessibility 9;; Keywords: faces, theme, accessibility
10 10
diff --git a/etc/themes/modus-themes.el b/etc/themes/modus-themes.el
index 1c522239508..f068e4a214d 100644
--- a/etc/themes/modus-themes.el
+++ b/etc/themes/modus-themes.el
@@ -3,9 +3,9 @@
3;; Copyright (C) 2019-2022 Free Software Foundation, Inc. 3;; Copyright (C) 2019-2022 Free Software Foundation, Inc.
4 4
5;; Author: Protesilaos Stavrou <info@protesilaos.com> 5;; Author: Protesilaos Stavrou <info@protesilaos.com>
6;; URL: https://gitlab.com/protesilaos/modus-themes 6;; URL: https://git.sr.ht/~protesilaos/modus-themes
7;; Version: 2.3.0 7;; Mailing list: https://lists.sr.ht/~protesilaos/modus-themes
8;; Last-Modified: <2022-04-01 12:33:34 +0300> 8;; Version: 2.4.1
9;; Package-Requires: ((emacs "27.1")) 9;; Package-Requires: ((emacs "27.1"))
10;; Keywords: faces, theme, accessibility 10;; Keywords: faces, theme, accessibility
11 11
@@ -68,306 +68,8 @@
68;; modus-themes-operandi-color-overrides (alist) 68;; modus-themes-operandi-color-overrides (alist)
69;; modus-themes-vivendi-color-overrides (alist) 69;; modus-themes-vivendi-color-overrides (alist)
70;; 70;;
71;; Below is the list of explicitly supported packages or face groups 71;; Check the manual for all supported packages (there are hundreds of
72;; (there are implicitly supported packages as well, which inherit from 72;; them).
73;; font-lock or some basic group). You are encouraged to report any
74;; missing package or change you would like to see.
75;;
76;; ace-window
77;; alert
78;; all-the-icons
79;; all-the-icons-dired
80;; all-the-icons-ibuffer
81;; annotate
82;; ansi-color
83;; anzu
84;; apropos
85;; artbollocks-mode
86;; auctex and TeX
87;; auto-dim-other-buffers
88;; avy
89;; awesome-tray
90;; bbdb
91;; binder
92;; bm
93;; bongo
94;; boon
95;; bookmark
96;; breakpoint (provided by built-in gdb-mi.el)
97;; calendar and diary
98;; calfw
99;; centaur-tabs
100;; cfrs
101;; change-log and log-view (`vc-print-log' and `vc-print-root-log')
102;; cider
103;; circe
104;; citar
105;; color-rg
106;; column-enforce-mode
107;; company-mode
108;; company-posframe
109;; compilation-mode
110;; completions
111;; consult
112;; corfu
113;; counsel
114;; counsel-css
115;; cov
116;; cperl-mode
117;; css-mode
118;; csv-mode
119;; ctrlf
120;; cursor-flash
121;; custom (M-x customize)
122;; dap-mode
123;; dashboard (emacs-dashboard)
124;; deadgrep
125;; debbugs
126;; deft
127;; devdocs
128;; dictionary
129;; diff-hl
130;; diff-mode
131;; dim-autoload
132;; dir-treeview
133;; Dired
134;; dired-async
135;; dired-git
136;; dired-git-info
137;; dired-narrow
138;; dired-subtree
139;; diredfl
140;; diredp (dired+)
141;; display-fill-column-indicator-mode
142;; doom-modeline
143;; dynamic-ruler
144;; easy-jekyll
145;; ebdb
146;; ediff
147;; eglot
148;; el-search
149;; eldoc
150;; eldoc-box
151;; elfeed
152;; elfeed-score
153;; elpher
154;; embark
155;; ement (ement.el)
156;; emms
157;; enh-ruby-mode (enhanced-ruby-mode)
158;; epa
159;; equake
160;; erc
161;; eros
162;; ert
163;; eshell
164;; eshell-fringe-status
165;; eshell-git-prompt
166;; eshell-prompt-extras (epe)
167;; eshell-syntax-highlighting
168;; evil (evil-mode)
169;; evil-goggles
170;; evil-snipe
171;; evil-visual-mark-mode
172;; eww
173;; exwm
174;; eyebrowse
175;; fancy-dabbrev
176;; flycheck
177;; flycheck-color-mode-line
178;; flycheck-indicator
179;; flycheck-posframe
180;; flymake
181;; flyspell
182;; flx
183;; freeze-it
184;; frog-menu
185;; focus
186;; fold-this
187;; font-lock (generic syntax highlighting)
188;; forge
189;; fountain (fountain-mode)
190;; geiser
191;; git-commit
192;; git-gutter (and variants)
193;; git-rebase
194;; git-timemachine
195;; gnus
196;; gotest
197;; golden-ratio-scroll-screen
198;; helm
199;; helm-ls-git
200;; helm-switch-shell
201;; helm-xref
202;; helpful
203;; highlight-indentation
204;; highlight-numbers
205;; highlight-thing
206;; hl-defined
207;; hl-fill-column
208;; hl-line-mode
209;; hl-todo
210;; hydra
211;; ibuffer
212;; icomplete
213;; ido-mode
214;; iedit
215;; iflipb
216;; image-dired
217;; imenu-list
218;; indium
219;; info
220;; info-colors
221;; interaction-log
222;; ioccur
223;; isearch, occur, etc.
224;; ivy
225;; ivy-posframe
226;; jira (org-jira)
227;; journalctl-mode
228;; js2-mode
229;; julia
230;; jupyter
231;; kaocha-runner
232;; keycast
233;; ledger-mode
234;; line numbers (`display-line-numbers-mode' and global variant)
235;; lsp-mode
236;; lsp-ui
237;; macrostep
238;; magit
239;; magit-imerge
240;; make-mode
241;; man
242;; marginalia
243;; markdown-mode
244;; markup-faces (`adoc-mode')
245;; mct
246;; mentor
247;; messages
248;; mini-modeline
249;; minimap
250;; mmm-mode
251;; mode-line
252;; mood-line
253;; mpdel
254;; mu4e
255;; multiple-cursors
256;; nano-modeline
257;; neotree
258;; notmuch
259;; num3-mode
260;; nxml-mode
261;; orderless
262;; org
263;; org-journal
264;; org-noter
265;; org-pomodoro
266;; org-recur
267;; org-roam
268;; org-superstar
269;; org-table-sticky-header
270;; org-tree-slide
271;; org-treescope
272;; origami
273;; outline-mode
274;; outline-minor-faces
275;; package (M-x list-packages)
276;; page-break-lines
277;; pandoc-mode
278;; paradox
279;; paren-face
280;; pass
281;; pdf-tools
282;; persp-mode
283;; perspective
284;; phi-grep
285;; pomidor
286;; popup
287;; powerline
288;; powerline-evil
289;; prism (see "Note for prism.el" in the manual)
290;; proced
291;; prodigy
292;; pulse
293;; pyim
294;; quick-peek
295;; racket-mode
296;; rainbow-blocks
297;; rainbow-delimiters
298;; rcirc
299;; recursion-indicator
300;; regexp-builder (also known as `re-builder')
301;; rg
302;; ripgrep
303;; rmail
304;; ruler-mode
305;; selectrum
306;; selectrum-prescient
307;; semantic
308;; sesman
309;; shell-script-mode
310;; shortdoc
311;; show-paren-mode
312;; shr
313;; side-notes
314;; sieve-mode
315;; skewer-mode
316;; slime (sldb)
317;; sly
318;; smart-mode-line
319;; smartparens
320;; smerge
321;; spaceline
322;; speedbar
323;; stripes
324;; suggest
325;; switch-window
326;; swiper
327;; sx
328;; symbol-overlay
329;; syslog-mode
330;; tab-bar-groups
331;; tab-bar-mode
332;; tab-line-mode
333;; table (built-in table.el)
334;; telega
335;; telephone-line
336;; terraform-mode
337;; term
338;; textsec
339;; tomatinho
340;; transient (pop-up windows like Magit's)
341;; trashed
342;; treemacs
343;; tty-menu
344;; tuareg
345;; typescript
346;; undo-tree
347;; vc (vc-dir.el, vc-hooks.el)
348;; vc-annotate (C-x v g)
349;; vertico
350;; vertico-quick
351;; vimish-fold
352;; visible-mark
353;; visual-regexp
354;; vterm
355;; wcheck-mode
356;; web-mode
357;; wgrep
358;; which-function-mode
359;; which-key
360;; whitespace-mode
361;; window-divider-mode
362;; winum
363;; writegood-mode
364;; woman
365;; xah-elisp-mode
366;; xref
367;; xterm-color (and ansi-colors)
368;; yaml-mode
369;; yasnippet
370;; ztree
371;; 73;;
372;; For a complete view of the project, also refer to the following files 74;; For a complete view of the project, also refer to the following files
373;; (should be distributed in the same repository/directory as the 75;; (should be distributed in the same repository/directory as the
@@ -383,7 +85,6 @@
383(eval-when-compile 85(eval-when-compile
384 (require 'cl-lib) 86 (require 'cl-lib)
385 (require 'subr-x)) 87 (require 'subr-x))
386(require 'seq)
387 88
388(defgroup modus-themes () 89(defgroup modus-themes ()
389 "Options for `modus-operandi', `modus-vivendi'. 90 "Options for `modus-operandi', `modus-vivendi'.
@@ -407,6 +108,36 @@ cover the blue-cyan-magenta side of the spectrum."
407 :prefix "modus-themes-" 108 :prefix "modus-themes-"
408 :tag "Modus Themes Faces") 109 :tag "Modus Themes Faces")
409 110
111(defvar modus-themes--version "2.5.0-dev"
112 "Current version of the Modus themes.
113
114The version either is the last tagged release, such as '2.4.0',
115or an in-development version like '2.5.0-dev'. As we use
116semantic versioning, tags of the '2.4.1' sort are not reported:
117those would count as part of '2.5.0-dev'.")
118
119;;;###autoload
120(defun modus-themes-version (&optional insert)
121 "Print `modus-themes--version' in the echo area.
122If optional INSERT argument is provided from Lisp or as a prefix
123argument, insert the `modus-themes--version' at point."
124 (interactive "P")
125 (if-let ((version modus-themes--version)
126 ((or insert current-prefix-arg)))
127 (insert version)
128 (message version)))
129
130;;;###autoload
131(defun modus-themes-report-bug ()
132 "Submit a bug report or issue to the Modus themes developers."
133 (interactive)
134 (reporter-submit-bug-report
135 "~protesilaos/modus-themes@lists.sr.ht"
136 (format "modus-themes (%s)\n" modus-themes--version)
137 ;; I am just getting started with this. Let's first see what people
138 ;; think about it.
139 nil nil nil nil))
140
410;;; Variables for each theme variant 141;;; Variables for each theme variant
411 142
412;;;; Modus Operandi 143;;;; Modus Operandi
@@ -561,7 +292,8 @@ cover the blue-cyan-magenta side of the spectrum."
561 ;; while bg-tab-inactive should be combined with fg-dim, whereas 292 ;; while bg-tab-inactive should be combined with fg-dim, whereas
562 ;; bg-tab-inactive-alt goes together with fg-main 293 ;; bg-tab-inactive-alt goes together with fg-main
563 ;; 294 ;;
564 ;; bg-completion-* variants are meant to be combined with fg-main 295 ;; bg-completion-* and bg-char-* variants are meant to be combined
296 ;; with fg-main
565 ;; 297 ;;
566 ;; fg-escape-char-construct and fg-escape-char-backslash can 298 ;; fg-escape-char-construct and fg-escape-char-backslash can
567 ;; be combined bg-main, bg-dim, bg-alt 299 ;; be combined bg-main, bg-dim, bg-alt
@@ -595,6 +327,10 @@ cover the blue-cyan-magenta side of the spectrum."
595 (bg-completion . "#b7dbff") 327 (bg-completion . "#b7dbff")
596 (bg-completion-subtle . "#def3ff") 328 (bg-completion-subtle . "#def3ff")
597 329
330 (bg-char-0 . "#7feaff")
331 (bg-char-1 . "#ffaaff")
332 (bg-char-2 . "#dff000")
333
598 (bg-tab-active . "#f6f6f6") 334 (bg-tab-active . "#f6f6f6")
599 (bg-tab-inactive . "#b7b7b7") 335 (bg-tab-inactive . "#b7b7b7")
600 (bg-tab-inactive-accent . "#a9b4f6") 336 (bg-tab-inactive-accent . "#a9b4f6")
@@ -807,7 +543,8 @@ symbol and the latter as a string.")
807 ;; while bg-tab-inactive should be combined with fg-dim, whereas 543 ;; while bg-tab-inactive should be combined with fg-dim, whereas
808 ;; bg-tab-inactive-alt goes together with fg-main 544 ;; bg-tab-inactive-alt goes together with fg-main
809 ;; 545 ;;
810 ;; bg-completion-* variants are meant to be combined with fg-main 546 ;; bg-completion-* and bg-char-* variants are meant to be combined
547 ;; with fg-main
811 ;; 548 ;;
812 ;; fg-escape-char-construct and fg-escape-char-backslash can 549 ;; fg-escape-char-construct and fg-escape-char-backslash can
813 ;; be combined bg-main, bg-dim, bg-alt 550 ;; be combined bg-main, bg-dim, bg-alt
@@ -841,6 +578,10 @@ symbol and the latter as a string.")
841 (bg-completion . "#142f69") 578 (bg-completion . "#142f69")
842 (bg-completion-subtle . "#0e194b") 579 (bg-completion-subtle . "#0e194b")
843 580
581 (bg-char-0 . "#0050af")
582 (bg-char-1 . "#7f1f7f")
583 (bg-char-2 . "#625a00")
584
844 (bg-tab-active . "#0e0e0e") 585 (bg-tab-active . "#0e0e0e")
845 (bg-tab-inactive . "#424242") 586 (bg-tab-inactive . "#424242")
846 (bg-tab-inactive-accent . "#35398f") 587 (bg-tab-inactive-accent . "#35398f")
@@ -1449,9 +1190,8 @@ The actual styling of the face is done by `modus-themes-faces'."
1449 1190
1450(defface modus-themes-variable-pitch nil 1191(defface modus-themes-variable-pitch nil
1451 "Generic face for applying a conditional `variable-pitch'. 1192 "Generic face for applying a conditional `variable-pitch'.
1452This behaves in accordance with `modus-themes-mixed-fonts', 1193This behaves in accordance with `modus-themes-mixed-fonts' and/or
1453`modus-themes-variable-pitch-headings' for all heading levels, 1194`modus-themes-variable-pitch-ui'.
1454and `modus-themes-variable-pitch-ui'.
1455 1195
1456The actual styling of the face is done by `modus-themes-faces'." 1196The actual styling of the face is done by `modus-themes-faces'."
1457 :group 'modus-themes-faces) 1197 :group 'modus-themes-faces)
@@ -3142,13 +2882,15 @@ In user configuration files the form may look like this:
3142 value 2882 value
3143 (modus-themes--warn option)))) 2883 (modus-themes--warn option))))
3144 2884
3145(defun modus-themes--alist-or-seq (properties alist-key seq-pred seq-default) 2885(defun modus-themes--property-lookup (properties alist-key list-pred default)
3146 "Return value from alist or sequence. 2886 "Return value from property alist or list.
3147Check PROPERTIES for an alist value that corresponds to 2887Check PROPERTIES for an alist value that corresponds to
3148ALIST-KEY. If no alist is present, search the PROPERTIES 2888ALIST-KEY. If no alist is present, search the PROPERTIES
3149sequence given SEQ-PRED, using SEQ-DEFAULT as a fallback." 2889list given LIST-PRED, using DEFAULT as a fallback."
3150 (if-let* ((val (or (alist-get alist-key properties) 2890 (if-let* ((val (or (alist-get alist-key properties)
3151 (seq-find seq-pred properties seq-default))) 2891 (cl-loop for x in properties
2892 if (funcall list-pred x) return x)
2893 default))
3152 ((listp val))) 2894 ((listp val)))
3153 (car val) 2895 (car val)
3154 val)) 2896 val))
@@ -3192,8 +2934,11 @@ Those are stored in `modus-themes-faces' and
3192 2934
3193(defun modus-themes--current-theme () 2935(defun modus-themes--current-theme ()
3194 "Return current modus theme." 2936 "Return current modus theme."
3195 (car (seq-filter (lambda (arg) (string-match-p "^modus" (symbol-name arg))) 2937 (car
3196 custom-enabled-themes))) 2938 (seq-filter
2939 (lambda (theme)
2940 (string-match-p "^modus" (symbol-name theme)))
2941 custom-enabled-themes)))
3197 2942
3198;; Helper functions that are meant to ease the implementation of the 2943;; Helper functions that are meant to ease the implementation of the
3199;; above customization variables. 2944;; above customization variables.
@@ -3245,11 +2990,11 @@ foreground. INTENSEFG is an alternative to the default."
3245 (cond 2990 (cond
3246 ((and (memq 'bold properties) 2991 ((and (memq 'bold properties)
3247 (memq 'italic properties)) 2992 (memq 'italic properties))
3248 (list 'modus-themes-fixed-pitch 'bold-italic)) 2993 (list 'bold-italic 'modus-themes-fixed-pitch))
3249 ((memq 'italic properties) 2994 ((memq 'italic properties)
3250 (list 'modus-themes-fixed-pitch 'italic)) 2995 (list 'italic 'modus-themes-fixed-pitch))
3251 ((memq 'bold properties) 2996 ((memq 'bold properties)
3252 (list 'modus-themes-fixed-pitch 'bold)) 2997 (list 'bold 'modus-themes-fixed-pitch))
3253 (t 'modus-themes-fixed-pitch)) 2998 (t 'modus-themes-fixed-pitch))
3254 :background 2999 :background
3255 (cond 3000 (cond
@@ -3368,10 +3113,10 @@ theme's fallback text color."
3368 3113
3369(defun modus-themes--paren (normalbg intensebg) 3114(defun modus-themes--paren (normalbg intensebg)
3370 "Conditional use of intense colors for matching parentheses. 3115 "Conditional use of intense colors for matching parentheses.
3371NORMALBG should be the special palette color `bg-paren-match' or 3116NORMALBG should be the special palette color 'bg-paren-match' or
3372something similar. INTENSEBG must be easier to discern next to 3117something similar. INTENSEBG must be easier to discern next to
3373other backgrounds, such as the special palette color 3118other backgrounds, such as the special palette color
3374`bg-paren-match-intense'." 3119'bg-paren-match-intense'."
3375 (let ((properties (modus-themes--list-or-warn 'modus-themes-paren-match))) 3120 (let ((properties (modus-themes--list-or-warn 'modus-themes-paren-match)))
3376 (list :inherit 3121 (list :inherit
3377 (if (memq 'bold properties) 3122 (if (memq 'bold properties)
@@ -3521,7 +3266,7 @@ that combines well with the background and foreground."
3521 fg-alt) 3266 fg-alt)
3522 (fg)) 3267 (fg))
3523 :height 3268 :height
3524 (modus-themes--alist-or-seq properties 'height #'floatp 'unspecified) 3269 (modus-themes--property-lookup properties 'height #'floatp 'unspecified)
3525 :weight 3270 :weight
3526 (or weight 'unspecified) 3271 (or weight 'unspecified)
3527 :overline 3272 :overline
@@ -3546,7 +3291,7 @@ FG is the foreground color to use."
3546 (or weight 'unspecified) 3291 (or weight 'unspecified)
3547 :height 3292 :height
3548 (cond ((memq 'no-scale properties) 'unspecified) 3293 (cond ((memq 'no-scale properties) 'unspecified)
3549 ((modus-themes--alist-or-seq properties 'height #'floatp 1.15))) 3294 ((modus-themes--property-lookup properties 'height #'floatp 1.15)))
3550 :foreground fg))) 3295 :foreground fg)))
3551 3296
3552(defun modus-themes--agenda-date (defaultfg grayscalefg &optional workaholicfg grayscaleworkaholicfg bg bold ul) 3297(defun modus-themes--agenda-date (defaultfg grayscalefg &optional workaholicfg grayscaleworkaholicfg bg bold ul)
@@ -3581,7 +3326,7 @@ weight. Optional UL applies an underline."
3581 (t 3326 (t
3582 defaultfg)) 3327 defaultfg))
3583 :height 3328 :height
3584 (modus-themes--alist-or-seq properties 'height #'floatp 'unspecified) 3329 (modus-themes--property-lookup properties 'height #'floatp 'unspecified)
3585 :underline 3330 :underline
3586 (if (and ul (memq 'underline-today properties)) 3331 (if (and ul (memq 'underline-today properties))
3587 t 3332 t
@@ -3637,8 +3382,8 @@ clearly distinguishes past, present, future tasks."
3637(defun modus-themes--agenda-habit (default traffic simple &optional default-d traffic-d simple-d) 3382(defun modus-themes--agenda-habit (default traffic simple &optional default-d traffic-d simple-d)
3638 "Specify background values for `modus-themes-org-agenda' habits. 3383 "Specify background values for `modus-themes-org-agenda' habits.
3639DEFAULT is the original foregrounc color. TRAFFIC is to be used 3384DEFAULT is the original foregrounc color. TRAFFIC is to be used
3640when the `traffic-light' style is applied, while SIMPLE 3385when the 'traffic-light' style is applied, while SIMPLE
3641corresponds to the \"simplified style\". 3386corresponds to the 'simplified style'.
3642 3387
3643Optional DEFAULT-D, TRAFFIC-D, SIMPLE-D are alternatives to the 3388Optional DEFAULT-D, TRAFFIC-D, SIMPLE-D are alternatives to the
3644main colors, meant for dopia when `modus-themes-deuteranopia' is 3389main colors, meant for dopia when `modus-themes-deuteranopia' is
@@ -3712,8 +3457,8 @@ Optional FG-DISTANT should be close to the main background
3712values. It is intended to be used as a distant-foreground 3457values. It is intended to be used as a distant-foreground
3713property." 3458property."
3714 (let* ((properties (modus-themes--list-or-warn 'modus-themes-mode-line)) 3459 (let* ((properties (modus-themes--list-or-warn 'modus-themes-mode-line))
3715 (padding (modus-themes--alist-or-seq properties 'padding #'natnump 1)) 3460 (padding (modus-themes--property-lookup properties 'padding #'natnump 1))
3716 (height (modus-themes--alist-or-seq properties 'height #'floatp 'unspecified)) 3461 (height (modus-themes--property-lookup properties 'height #'floatp 'unspecified))
3717 (padded (> padding 1)) 3462 (padded (> padding 1))
3718 (base (cond ((memq 'accented properties) 3463 (base (cond ((memq 'accented properties)
3719 (cons fg-accent bg-accent)) 3464 (cons fg-accent bg-accent))
@@ -3778,10 +3523,14 @@ property."
3778;; Basically this is just for the keycast key indicator. 3523;; Basically this is just for the keycast key indicator.
3779(defun modus-themes--mode-line-padded-box (color) 3524(defun modus-themes--mode-line-padded-box (color)
3780 "Set padding of mode line box attribute with given COLOR." 3525 "Set padding of mode line box attribute with given COLOR."
3781 (let ((padding (seq-find #'natnump modus-themes-mode-line 1))) 3526 (list :box (list :color color
3782 (list :box (list :line-width padding :color color)))) 3527 :line-width
3783 3528 (or (cl-loop
3784(defun modus-themes--diff (mainbg mainfg altbg altfg &optional deuteranbg deuteranfg bg-only-fg) 3529 for x in modus-themes-mode-line
3530 if (natnump x) return x)
3531 1))))
3532
3533(defun modus-themes--diff (mainbg mainfg altbg altfg &optional deubg deufg deualtbg deualtfg bg-only-fg)
3785 "Color combinations for `modus-themes-diffs'. 3534 "Color combinations for `modus-themes-diffs'.
3786 3535
3787MAINBG must be one of the dedicated backgrounds for diffs while 3536MAINBG must be one of the dedicated backgrounds for diffs while
@@ -3791,13 +3540,20 @@ ALTBG needs to be a slightly accented background that is meant to
3791be combined with ALTFG. Both must be less intense than MAINBG 3540be combined with ALTFG. Both must be less intense than MAINBG
3792and MAINFG respectively. 3541and MAINFG respectively.
3793 3542
3794DEUTERANBG and DEUTERANFG must be combinations of colors that account 3543DEUBG and DEUFG must be combinations of colors that account for
3795for red-green color defficiency (deuteranopia). 3544red-green color defficiency (deuteranopia). They are the
3545equivalent of MAINBG and MAINFG.
3546
3547DEUALTBG and DEUALTFG are the equivalent of ALTBG and ALTFG for
3548deuteranopia.
3796 3549
3797Optional BG-ONLY-FG applies ALTFG else leaves the foreground 3550Optional non-nil BG-ONLY-FG applies ALTFG else leaves the
3798unspecified." 3551foreground unspecified."
3799 (if modus-themes-deuteranopia 3552 (if modus-themes-deuteranopia
3800 (list :background (or deuteranbg mainbg) :foreground (or deuteranfg mainfg)) 3553 (pcase modus-themes-diffs
3554 ('desaturated (list :background (or deualtbg altbg) :foreground (or deualtfg altfg)))
3555 ('bg-only (list :background (or deualtbg altbg) :foreground (if bg-only-fg (or deualtfg altfg) 'unspecified)))
3556 (_ (list :background (or deubg mainbg) :foreground (or deufg mainfg))))
3801 (pcase modus-themes-diffs 3557 (pcase modus-themes-diffs
3802 ('desaturated (list :background altbg :foreground altfg)) 3558 ('desaturated (list :background altbg :foreground altfg))
3803 ('bg-only (list :background altbg :foreground (if bg-only-fg altfg 'unspecified))) 3559 ('bg-only (list :background altbg :foreground (if bg-only-fg altfg 'unspecified)))
@@ -4114,7 +3870,7 @@ pressed button style, else the released button."
4114 (weight weight) 3870 (weight weight)
4115 ('unspecified)) 3871 ('unspecified))
4116 :height 3872 :height
4117 (modus-themes--alist-or-seq properties 'height #'floatp 'unspecified) 3873 (modus-themes--property-lookup properties 'height #'floatp 'unspecified)
4118 :underline 3874 :underline
4119 (if (memq 'underline properties) 3875 (if (memq 'underline properties)
4120 t 3876 t
@@ -4379,7 +4135,8 @@ by virtue of calling either of `modus-themes-load-operandi' and
4379 ((,class ,@(modus-themes--diff 4135 ((,class ,@(modus-themes--diff
4380 bg-diff-focus-added fg-diff-focus-added 4136 bg-diff-focus-added fg-diff-focus-added
4381 green-nuanced-bg fg-diff-added 4137 green-nuanced-bg fg-diff-added
4382 bg-diff-focus-added-deuteran fg-diff-focus-added-deuteran)))) 4138 bg-diff-focus-added-deuteran fg-diff-focus-added-deuteran
4139 blue-nuanced-bg fg-diff-added-deuteran))))
4383 `(modus-themes-diff-changed 4140 `(modus-themes-diff-changed
4384 ((,class ,@(modus-themes--diff 4141 ((,class ,@(modus-themes--diff
4385 bg-diff-focus-changed fg-diff-focus-changed 4142 bg-diff-focus-changed fg-diff-focus-changed
@@ -4392,7 +4149,8 @@ by virtue of calling either of `modus-themes-load-operandi' and
4392 ((,class ,@(modus-themes--diff 4149 ((,class ,@(modus-themes--diff
4393 bg-diff-refine-added fg-diff-refine-added 4150 bg-diff-refine-added fg-diff-refine-added
4394 bg-diff-focus-added fg-diff-focus-added 4151 bg-diff-focus-added fg-diff-focus-added
4395 bg-diff-refine-added-deuteran fg-diff-refine-added-deuteran)))) 4152 bg-diff-refine-added-deuteran fg-diff-refine-added-deuteran
4153 bg-diff-focus-added-deuteran fg-diff-focus-added-deuteran))))
4396 `(modus-themes-diff-refine-changed 4154 `(modus-themes-diff-refine-changed
4397 ((,class ,@(modus-themes--diff 4155 ((,class ,@(modus-themes--diff
4398 bg-diff-refine-changed fg-diff-refine-changed 4156 bg-diff-refine-changed fg-diff-refine-changed
@@ -4405,7 +4163,8 @@ by virtue of calling either of `modus-themes-load-operandi' and
4405 ((,class ,@(modus-themes--diff 4163 ((,class ,@(modus-themes--diff
4406 bg-diff-focus-added fg-diff-focus-added 4164 bg-diff-focus-added fg-diff-focus-added
4407 bg-diff-added fg-diff-added 4165 bg-diff-added fg-diff-added
4408 bg-diff-focus-added-deuteran fg-diff-focus-added-deuteran)))) 4166 bg-diff-focus-added-deuteran fg-diff-focus-added-deuteran
4167 bg-diff-added-deuteran fg-diff-added-deuteran))))
4409 `(modus-themes-diff-focus-changed 4168 `(modus-themes-diff-focus-changed
4410 ((,class ,@(modus-themes--diff 4169 ((,class ,@(modus-themes--diff
4411 bg-diff-focus-changed fg-diff-focus-changed 4170 bg-diff-focus-changed fg-diff-focus-changed
@@ -4419,6 +4178,7 @@ by virtue of calling either of `modus-themes-load-operandi' and
4419 bg-diff-heading fg-diff-heading 4178 bg-diff-heading fg-diff-heading
4420 cyan-nuanced-bg cyan-nuanced-fg 4179 cyan-nuanced-bg cyan-nuanced-fg
4421 bg-header fg-main 4180 bg-header fg-main
4181 bg-header fg-main
4422 t)))) 4182 t))))
4423;;;;; deuteranopia-specific 4183;;;;; deuteranopia-specific
4424 `(modus-themes-grue ((,class :foreground ,@(modus-themes--deuteran blue green)))) 4184 `(modus-themes-grue ((,class :foreground ,@(modus-themes--deuteran blue green))))
@@ -4564,7 +4324,8 @@ by virtue of calling either of `modus-themes-load-operandi' and
4564 bg-region blue-intense-bg 4324 bg-region blue-intense-bg
4565 fg-alt blue-intense) 4325 fg-alt blue-intense)
4566 :extend t))) 4326 :extend t)))
4567 `(modus-themes-key-binding ((,class :inherit bold :foreground ,blue-alt-other))) 4327 `(modus-themes-key-binding ((,class :inherit (bold modus-themes-fixed-pitch)
4328 :foreground ,blue-alt-other)))
4568 `(modus-themes-prompt ((,class ,@(modus-themes--prompt 4329 `(modus-themes-prompt ((,class ,@(modus-themes--prompt
4569 cyan-alt-other blue-alt-other fg-alt 4330 cyan-alt-other blue-alt-other fg-alt
4570 cyan-nuanced-bg blue-refine-bg fg-main 4331 cyan-nuanced-bg blue-refine-bg fg-main
@@ -4592,7 +4353,7 @@ by virtue of calling either of `modus-themes-load-operandi' and
4592 `(elisp-shorthand-font-lock-face ((,class :inherit font-lock-variable-name-face))) 4353 `(elisp-shorthand-font-lock-face ((,class :inherit font-lock-variable-name-face)))
4593 `(error ((,class :inherit bold :foreground ,red))) 4354 `(error ((,class :inherit bold :foreground ,red)))
4594 `(escape-glyph ((,class :foreground ,fg-escape-char-construct))) 4355 `(escape-glyph ((,class :foreground ,fg-escape-char-construct)))
4595 `(file-name-shadow ((,class :inherit (shadow italic)))) 4356 `(file-name-shadow ((,class :inherit shadow)))
4596 `(header-line ((,class :inherit modus-themes-ui-variable-pitch 4357 `(header-line ((,class :inherit modus-themes-ui-variable-pitch
4597 :background ,bg-header :foreground ,fg-header))) 4358 :background ,bg-header :foreground ,fg-header)))
4598 `(header-line-highlight ((,class :inherit highlight))) 4359 `(header-line-highlight ((,class :inherit highlight)))
@@ -4759,10 +4520,10 @@ by virtue of calling either of `modus-themes-load-operandi' and
4759;;;;; avy 4520;;;;; avy
4760 `(avy-background-face ((,class :background ,bg-dim :foreground ,fg-dim :extend t))) 4521 `(avy-background-face ((,class :background ,bg-dim :foreground ,fg-dim :extend t)))
4761 `(avy-goto-char-timer-face ((,class :inherit (modus-themes-intense-neutral bold)))) 4522 `(avy-goto-char-timer-face ((,class :inherit (modus-themes-intense-neutral bold))))
4762 `(avy-lead-face ((,class :inherit (modus-themes-intense-blue bold modus-themes-reset-soft)))) 4523 `(avy-lead-face ((,class :inherit (bold modus-themes-reset-soft) :background ,bg-char-0)))
4763 `(avy-lead-face-0 ((,class :inherit (modus-themes-refine-magenta bold modus-themes-reset-soft)))) 4524 `(avy-lead-face-0 ((,class :inherit (bold modus-themes-reset-soft) :background ,bg-char-1)))
4764 `(avy-lead-face-1 ((,class :inherit (modus-themes-special-warm modus-themes-reset-soft)))) 4525 `(avy-lead-face-1 ((,class :inherit (modus-themes-special-warm modus-themes-reset-soft))))
4765 `(avy-lead-face-2 ((,class :inherit (modus-themes-refine-green bold modus-themes-reset-soft)))) 4526 `(avy-lead-face-2 ((,class :inherit (bold modus-themes-reset-soft) :background ,bg-char-2)))
4766;;;;; aw (ace-window) 4527;;;;; aw (ace-window)
4767 `(aw-background-face ((,class :foreground ,fg-unfocused))) 4528 `(aw-background-face ((,class :foreground ,fg-unfocused)))
4768 `(aw-key-face ((,class :inherit modus-themes-key-binding))) 4529 `(aw-key-face ((,class :inherit modus-themes-key-binding)))
@@ -4849,6 +4610,27 @@ by virtue of calling either of `modus-themes-load-operandi' and
4849 `(cfw:face-toolbar-button-off ((,class :inherit shadow))) 4610 `(cfw:face-toolbar-button-off ((,class :inherit shadow)))
4850 `(cfw:face-toolbar-button-on ((,class :inherit bold :background ,blue-nuanced-bg 4611 `(cfw:face-toolbar-button-on ((,class :inherit bold :background ,blue-nuanced-bg
4851 :foreground ,blue-alt))) 4612 :foreground ,blue-alt)))
4613;;;;; calibredb
4614 `(calibredb-archive-face ((,class :foreground ,magenta-alt-faint)))
4615 `(calibredb-author-face ((,class :foreground ,blue-faint)))
4616 `(calibredb-comment-face ((,class :inherit shadow)))
4617 `(calibredb-date-face ((,class :foreground ,cyan)))
4618 `(calibredb-edit-annotation-header-title-face ((,class :inherit bold)))
4619 `(calibredb-favorite-face ((,class :foreground ,red-alt)))
4620 `(calibredb-file-face (( )))
4621 `(calibredb-format-face ((,class :foreground ,cyan-faint)))
4622 `(calibredb-highlight-face ((,class :inherit success)))
4623 `(calibredb-id-face (( )))
4624 `(calibredb-ids-face (( )))
4625 `(calibredb-search-header-highlight-face ((,class :inherit modus-themes-hl-line)))
4626 `(calibredb-search-header-library-name-face ((,class :foreground ,blue-active)))
4627 `(calibredb-search-header-library-path-face ((,class :inherit bold)))
4628 `(calibredb-search-header-sort-face ((,class :inherit bold :foreground ,magenta-active)))
4629 `(calibredb-search-header-total-face ((,class :inherit bold :foreground ,cyan-active)))
4630 `(calibredb-search-header-filter-face ((,class :inherit bold)))
4631 `(calibredb-mark-face ((,class :inherit modus-themes-mark-sel)))
4632 `(calibredb-size-face (( )))
4633 `(calibredb-tag-face ((,class :foreground ,magenta-alt-faint)))
4852;;;;; centaur-tabs 4634;;;;; centaur-tabs
4853 `(centaur-tabs-active-bar-face ((,class :background ,blue-active))) 4635 `(centaur-tabs-active-bar-face ((,class :background ,blue-active)))
4854 `(centaur-tabs-close-mouse-face ((,class :inherit bold :foreground ,red-active :underline t))) 4636 `(centaur-tabs-close-mouse-face ((,class :inherit bold :foreground ,red-active :underline t)))
@@ -4992,6 +4774,9 @@ by virtue of calling either of `modus-themes-load-operandi' and
4992 `(corfu-bar ((,class :background ,fg-alt))) 4774 `(corfu-bar ((,class :background ,fg-alt)))
4993 `(corfu-border ((,class :background ,bg-active))) 4775 `(corfu-border ((,class :background ,bg-active)))
4994 `(corfu-default ((,class :background ,bg-alt))) 4776 `(corfu-default ((,class :background ,bg-alt)))
4777;;;;; corfu-quick
4778 `(corfu-quick1 ((,class :inherit bold :background ,bg-char-0)))
4779 `(corfu-quick2 ((,class :inherit bold :background ,bg-char-1)))
4995;;;;; counsel 4780;;;;; counsel
4996 `(counsel-active-mode ((,class :foreground ,magenta-alt-other))) 4781 `(counsel-active-mode ((,class :foreground ,magenta-alt-other)))
4997 `(counsel-application-name ((,class :foreground ,red-alt-other))) 4782 `(counsel-application-name ((,class :foreground ,red-alt-other)))
@@ -5323,6 +5108,13 @@ by virtue of calling either of `modus-themes-load-operandi' and
5323 `(ediff-odd-diff-Ancestor ((,class :inherit ediff-even-diff-Ancestor))) 5108 `(ediff-odd-diff-Ancestor ((,class :inherit ediff-even-diff-Ancestor)))
5324 `(ediff-odd-diff-B ((,class :inherit ediff-even-diff-B))) 5109 `(ediff-odd-diff-B ((,class :inherit ediff-even-diff-B)))
5325 `(ediff-odd-diff-C ((,class :inherit ediff-even-diff-C))) 5110 `(ediff-odd-diff-C ((,class :inherit ediff-even-diff-C)))
5111;;;;; ein (Emacs IPython Notebook)
5112 `(ein:basecell-input-area-face ((,class :background ,bg-dim :extend t)))
5113 `(ein:cell-output-area (( )))
5114 `(ein:cell-output-area-error ((,class :background ,red-nuanced-bg :extend t)))
5115 `(ein:cell-output-stderr ((,class :background ,red-nuanced-bg :extend t)))
5116 `(ein:markdowncell-input-area-face (( )))
5117 `(ein:notification-tab-normal ((,class :underline t)))
5326;;;;; eglot 5118;;;;; eglot
5327 `(eglot-mode-line ((,class :inherit modus-themes-bold :foreground ,magenta-active))) 5119 `(eglot-mode-line ((,class :inherit modus-themes-bold :foreground ,magenta-active)))
5328;;;;; el-search 5120;;;;; el-search
@@ -5637,7 +5429,7 @@ by virtue of calling either of `modus-themes-load-operandi' and
5637 `(font-lock-doc-face ((,class :inherit modus-themes-slant 5429 `(font-lock-doc-face ((,class :inherit modus-themes-slant
5638 ,@(modus-themes--syntax-string 5430 ,@(modus-themes--syntax-string
5639 fg-docstring fg-special-cold 5431 fg-docstring fg-special-cold
5640 fg-special-mild magenta-nuanced-fg 5432 fg-special-mild fg-special-calm
5641 fg-special-mild magenta-nuanced-fg)))) 5433 fg-special-mild magenta-nuanced-fg))))
5642 `(font-lock-function-name-face ((,class ,@(modus-themes--syntax-extra 5434 `(font-lock-function-name-face ((,class ,@(modus-themes--syntax-extra
5643 magenta magenta-faint 5435 magenta magenta-faint
@@ -5651,30 +5443,31 @@ by virtue of calling either of `modus-themes-load-operandi' and
5651 yellow yellow-faint)))) 5443 yellow yellow-faint))))
5652 `(font-lock-preprocessor-face ((,class ,@(modus-themes--syntax-extra 5444 `(font-lock-preprocessor-face ((,class ,@(modus-themes--syntax-extra
5653 red-alt-other red-alt-other-faint 5445 red-alt-other red-alt-other-faint
5654 blue-alt blue-alt-faint)))) 5446 cyan-alt-other cyan-alt-faint))))
5655 `(font-lock-regexp-grouping-backslash ((,class :inherit bold 5447 `(font-lock-regexp-grouping-backslash ((,class :inherit modus-themes-bold
5656 ,@(modus-themes--syntax-string 5448 ,@(modus-themes--syntax-string
5657 fg-escape-char-backslash yellow-alt-faint 5449 fg-escape-char-backslash yellow-alt-faint
5658 yellow-alt magenta-alt 5450 yellow-alt magenta-alt
5659 red-faint green-alt-other-faint)))) 5451 red-faint green-alt-other-faint))))
5660 `(font-lock-regexp-grouping-construct ((,class :inherit bold 5452 `(font-lock-regexp-grouping-construct ((,class :inherit modus-themes-bold
5661 ,@(modus-themes--syntax-string 5453 ,@(modus-themes--syntax-string
5662 fg-escape-char-construct red-alt-other-faint 5454 fg-escape-char-construct red-alt-other-faint
5663 red-alt-other blue-alt-other 5455 red-alt-other blue-alt-other
5664 blue-faint blue-alt-other-faint)))) 5456 blue-faint blue-alt-other-faint))))
5665 `(font-lock-string-face ((,class ,@(modus-themes--syntax-string 5457 `(font-lock-string-face ((,class ,@(modus-themes--syntax-string
5666 blue-alt blue-alt-faint 5458 blue-alt blue-alt-faint
5667 green-alt-other red-alt 5459 green-alt-other red-alt-other
5668 green-alt-faint red-alt-faint)))) 5460 green-alt-faint red-alt-faint))))
5669 `(font-lock-type-face ((,class :inherit modus-themes-bold 5461 `(font-lock-type-face ((,class :inherit modus-themes-bold
5670 ,@(modus-themes--syntax-foreground 5462 ,@(modus-themes--syntax-extra
5671 cyan-alt-other cyan-alt-faint)))) 5463 cyan-alt-other cyan-alt-faint
5464 magenta-alt-other magenta-alt-other-faint))))
5672 `(font-lock-variable-name-face ((,class ,@(modus-themes--syntax-extra 5465 `(font-lock-variable-name-face ((,class ,@(modus-themes--syntax-extra
5673 cyan cyan-faint 5466 cyan cyan-faint
5674 blue-alt-other blue-alt-other-faint)))) 5467 blue-alt blue-alt-faint))))
5675 `(font-lock-warning-face ((,class :inherit modus-themes-bold 5468 `(font-lock-warning-face ((,class :inherit modus-themes-bold
5676 ,@(modus-themes--syntax-comment 5469 ,@(modus-themes--syntax-foreground
5677 yellow-active red-active red-faint yellow-faint)))) 5470 yellow-active yellow-alt-faint))))
5678;;;;; forge 5471;;;;; forge
5679 `(forge-post-author ((,class :inherit bold :foreground ,fg-main))) 5472 `(forge-post-author ((,class :inherit bold :foreground ,fg-main)))
5680 `(forge-post-date ((,class :foreground ,fg-special-cold))) 5473 `(forge-post-date ((,class :foreground ,fg-special-cold)))
@@ -5685,7 +5478,7 @@ by virtue of calling either of `modus-themes-load-operandi' and
5685 `(forge-topic-unread ((,class :inherit bold :foreground ,fg-main))) 5478 `(forge-topic-unread ((,class :inherit bold :foreground ,fg-main)))
5686;;;;; fountain-mode 5479;;;;; fountain-mode
5687 `(fountain-character ((,class :foreground ,blue-alt-other))) 5480 `(fountain-character ((,class :foreground ,blue-alt-other)))
5688 `(fountain-comment ((,class :inherit modus-themes-slant :foreground ,fg-alt))) 5481 `(fountain-comment ((,class :inherit font-lock-comment-face)))
5689 `(fountain-dialog ((,class :foreground ,blue-alt))) 5482 `(fountain-dialog ((,class :foreground ,blue-alt)))
5690 `(fountain-metadata-key ((,class :foreground ,green-alt-other))) 5483 `(fountain-metadata-key ((,class :foreground ,green-alt-other)))
5691 `(fountain-metadata-value ((,class :foreground ,blue))) 5484 `(fountain-metadata-value ((,class :foreground ,blue)))
@@ -5719,11 +5512,11 @@ by virtue of calling either of `modus-themes-load-operandi' and
5719 `(geiser-font-lock-xref-link ((,class :inherit button))) 5512 `(geiser-font-lock-xref-link ((,class :inherit button)))
5720;;;;; git-commit 5513;;;;; git-commit
5721 `(git-commit-comment-action ((,class :inherit font-lock-comment-face))) 5514 `(git-commit-comment-action ((,class :inherit font-lock-comment-face)))
5722 `(git-commit-comment-branch-local ((,class :inherit modus-themes-slant :foreground ,blue-alt))) 5515 `(git-commit-comment-branch-local ((,class :inherit font-lock-comment-face :foreground ,blue-alt)))
5723 `(git-commit-comment-branch-remote ((,class :inherit modus-themes-slant :foreground ,magenta-alt))) 5516 `(git-commit-comment-branch-remote ((,class :inherit font-lock-comment-face :foreground ,magenta-alt)))
5724 `(git-commit-comment-detached ((,class :inherit modus-themes-slant :foreground ,cyan-alt))) 5517 `(git-commit-comment-detached ((,class :inherit font-lock-comment-face :foreground ,cyan-alt)))
5725 `(git-commit-comment-file ((,class :inherit modus-themes-slant :foreground ,cyan))) 5518 `(git-commit-comment-file ((,class :inherit font-lock-comment-face :foreground ,cyan)))
5726 `(git-commit-comment-heading ((,class :inherit (bold modus-themes-slant)))) 5519 `(git-commit-comment-heading ((,class :inherit (bold font-lock-comment-face))))
5727 `(git-commit-keyword ((,class :foreground ,magenta))) 5520 `(git-commit-keyword ((,class :foreground ,magenta)))
5728 `(git-commit-known-pseudo-header ((,class :foreground ,cyan-alt-other))) 5521 `(git-commit-known-pseudo-header ((,class :foreground ,cyan-alt-other)))
5729 `(git-commit-nonempty-second-line ((,class :inherit error))) 5522 `(git-commit-nonempty-second-line ((,class :inherit error)))
@@ -5741,8 +5534,8 @@ by virtue of calling either of `modus-themes-load-operandi' and
5741 `(git-gutter-fr:deleted ((,class :inherit modus-themes-fringe-red))) 5534 `(git-gutter-fr:deleted ((,class :inherit modus-themes-fringe-red)))
5742 `(git-gutter-fr:modified ((,class :inherit modus-themes-fringe-yellow))) 5535 `(git-gutter-fr:modified ((,class :inherit modus-themes-fringe-yellow)))
5743;;;;; git-rebase 5536;;;;; git-rebase
5744 `(git-rebase-comment-hash ((,class :inherit modus-themes-slant :foreground ,cyan))) 5537 `(git-rebase-comment-hash ((,class :inherit font-lock-comment-face :foreground ,cyan)))
5745 `(git-rebase-comment-heading ((,class :inherit (bold modus-themes-slant)))) 5538 `(git-rebase-comment-heading ((,class :inherit (bold font-lock-comment-face))))
5746 `(git-rebase-description ((,class :foreground ,fg-main))) 5539 `(git-rebase-description ((,class :foreground ,fg-main)))
5747 `(git-rebase-hash ((,class :foreground ,cyan-alt-other))) 5540 `(git-rebase-hash ((,class :foreground ,cyan-alt-other)))
5748;;;;; git-timemachine 5541;;;;; git-timemachine
@@ -6114,7 +5907,8 @@ by virtue of calling either of `modus-themes-load-operandi' and
6114 `(kaocha-runner-warning-face ((,class :inherit warning))) 5907 `(kaocha-runner-warning-face ((,class :inherit warning)))
6115;;;;; keycast 5908;;;;; keycast
6116 `(keycast-command ((,class :inherit bold :foreground ,blue-active))) 5909 `(keycast-command ((,class :inherit bold :foreground ,blue-active)))
6117 `(keycast-key ((,class ,@(modus-themes--mode-line-padded-box blue-active) 5910 ;; FIXME 2022-05-03: The padding breaks `keycast-tab-bar-mode'
5911 `(keycast-key ((,class ;; ,@(modus-themes--mode-line-padded-box blue-active)
6118 :background ,blue-active :foreground ,bg-main))) 5912 :background ,blue-active :foreground ,bg-main)))
6119;;;;; ledger-mode 5913;;;;; ledger-mode
6120 `(ledger-font-auto-xact-face ((,class :foreground ,magenta))) 5914 `(ledger-font-auto-xact-face ((,class :foreground ,magenta)))
@@ -6128,23 +5922,26 @@ by virtue of calling either of `modus-themes-load-operandi' and
6128 `(ledger-font-payee-uncleared-face ((,class :foreground ,red-alt-other))) 5922 `(ledger-font-payee-uncleared-face ((,class :foreground ,red-alt-other)))
6129 `(ledger-font-xact-highlight-face ((,class :background ,bg-hl-alt))) 5923 `(ledger-font-xact-highlight-face ((,class :background ,bg-hl-alt)))
6130;;;;; line numbers (display-line-numbers-mode and global variant) 5924;;;;; line numbers (display-line-numbers-mode and global variant)
5925 ;; Here we cannot inherit `modus-themes-fixed-pitch'. We need to
5926 ;; fall back to `default' otherwise line numbers do not scale when
5927 ;; using `text-scale-adjust'.
6131 `(line-number 5928 `(line-number
6132 ((,class :inherit default 5929 ((,class :inherit ,(if modus-themes-mixed-fonts 'fixed-pitch 'default)
6133 ,@(modus-themes--line-numbers 5930 ,@(modus-themes--line-numbers
6134 fg-alt bg-dim 5931 fg-alt bg-dim
6135 fg-unfocused)))) 5932 fg-unfocused))))
6136 `(line-number-current-line 5933 `(line-number-current-line
6137 ((,class :inherit (bold default) 5934 ((,class :inherit (bold line-number)
6138 ,@(modus-themes--line-numbers 5935 ,@(modus-themes--line-numbers
6139 fg-main bg-active 5936 fg-main bg-active
6140 blue-alt-other)))) 5937 blue-alt-other))))
6141 `(line-number-major-tick 5938 `(line-number-major-tick
6142 ((,class :inherit (bold default) 5939 ((,class :inherit (bold line-number)
6143 ,@(modus-themes--line-numbers 5940 ,@(modus-themes--line-numbers
6144 yellow-nuanced-fg yellow-nuanced-bg 5941 yellow-nuanced-fg yellow-nuanced-bg
6145 red-alt)))) 5942 red-alt))))
6146 `(line-number-minor-tick 5943 `(line-number-minor-tick
6147 ((,class :inherit (bold default) 5944 ((,class :inherit (bold line-number)
6148 ,@(modus-themes--line-numbers 5945 ,@(modus-themes--line-numbers
6149 fg-alt bg-inactive 5946 fg-alt bg-inactive
6150 fg-inactive)))) 5947 fg-inactive))))
@@ -6228,7 +6025,8 @@ by virtue of calling either of `modus-themes-load-operandi' and
6228 `(magit-diff-added ((,class ,@(modus-themes--diff 6025 `(magit-diff-added ((,class ,@(modus-themes--diff
6229 bg-diff-added fg-diff-added 6026 bg-diff-added fg-diff-added
6230 green-nuanced-bg fg-diff-added 6027 green-nuanced-bg fg-diff-added
6231 bg-diff-added-deuteran fg-diff-added-deuteran)))) 6028 bg-diff-added-deuteran fg-diff-added-deuteran
6029 blue-nuanced-bg fg-diff-added-deuteran))))
6232 `(magit-diff-added-highlight ((,class :inherit modus-themes-diff-focus-added))) 6030 `(magit-diff-added-highlight ((,class :inherit modus-themes-diff-focus-added)))
6233 `(magit-diff-base ((,class ,@(modus-themes--diff 6031 `(magit-diff-base ((,class ,@(modus-themes--diff
6234 bg-diff-changed fg-diff-changed 6032 bg-diff-changed fg-diff-changed
@@ -6249,6 +6047,7 @@ by virtue of calling either of `modus-themes-load-operandi' and
6249 bg-active fg-inactive 6047 bg-active fg-inactive
6250 bg-inactive fg-inactive 6048 bg-inactive fg-inactive
6251 bg-inactive fg-inactive 6049 bg-inactive fg-inactive
6050 nil nil
6252 t)))) 6051 t))))
6253 ;; NOTE: we do not follow the pattern of inheriting from 6052 ;; NOTE: we do not follow the pattern of inheriting from
6254 ;; modus-themes-grue-* faces, as this is a special case. 6053 ;; modus-themes-grue-* faces, as this is a special case.
@@ -6687,9 +6486,7 @@ by virtue of calling either of `modus-themes-load-operandi' and
6687 :background ,bg-alt))) 6486 :background ,bg-alt)))
6688 `(org-column-title ((,class :inherit (bold modus-themes-fixed-pitch default) 6487 `(org-column-title ((,class :inherit (bold modus-themes-fixed-pitch default)
6689 :underline t :background ,bg-alt))) 6488 :underline t :background ,bg-alt)))
6690 `(org-date ((,class :inherit ,(if modus-themes-mixed-fonts 6489 `(org-date ((,class :inherit (modus-themes-link-symlink modus-themes-fixed-pitch))))
6691 '(fixed-pitch modus-themes-link-symlink)
6692 'modus-themes-link-symlink))))
6693 `(org-date-selected ((,class :foreground ,blue-alt :inverse-video t))) 6490 `(org-date-selected ((,class :foreground ,blue-alt :inverse-video t)))
6694 `(org-dispatcher-highlight ((,class :inherit (bold modus-themes-mark-alt)))) 6491 `(org-dispatcher-highlight ((,class :inherit (bold modus-themes-mark-alt))))
6695 `(org-document-info ((,class :foreground ,fg-special-cold))) 6492 `(org-document-info ((,class :foreground ,fg-special-cold)))
@@ -6906,7 +6703,7 @@ by virtue of calling either of `modus-themes-load-operandi' and
6906 `(popup-summary-face ((,class :background ,bg-active :foreground ,fg-inactive))) 6703 `(popup-summary-face ((,class :background ,bg-active :foreground ,fg-inactive)))
6907 `(popup-tip-face ((,class :inherit modus-themes-refine-yellow))) 6704 `(popup-tip-face ((,class :inherit modus-themes-refine-yellow)))
6908;;;;; powerline 6705;;;;; powerline
6909 `(powerline-active0 ((,class :background ,bg-main :foreground ,blue-faint :inverse-video t))) 6706 `(powerline-active0 ((,class :background ,blue-faint :foreground ,bg-main)))
6910 `(powerline-active1 ((,class :background ,blue-nuanced-bg :foreground ,blue-nuanced-fg))) 6707 `(powerline-active1 ((,class :background ,blue-nuanced-bg :foreground ,blue-nuanced-fg)))
6911 `(powerline-active2 ((,class :background ,bg-active :foreground ,fg-active))) 6708 `(powerline-active2 ((,class :background ,bg-active :foreground ,fg-active)))
6912 `(powerline-inactive0 ((,class :background ,bg-special-cold :foreground ,fg-special-cold))) 6709 `(powerline-inactive0 ((,class :background ,bg-special-cold :foreground ,fg-special-cold)))
@@ -7355,7 +7152,9 @@ by virtue of calling either of `modus-themes-load-operandi' and
7355;;;;; transient 7152;;;;; transient
7356 `(transient-active-infix ((,class :inherit modus-themes-special-mild))) 7153 `(transient-active-infix ((,class :inherit modus-themes-special-mild)))
7357 `(transient-amaranth ((,class :inherit bold :foreground ,yellow-alt))) 7154 `(transient-amaranth ((,class :inherit bold :foreground ,yellow-alt)))
7358 `(transient-argument ((,class :inherit bold :background ,cyan-nuanced-bg :foreground ,cyan))) 7155 ;; Placate the compiler for what is a spurious warning. We also
7156 ;; have to do this with `eldoc-highlight-function-argument'.
7157 (list 'transient-argument `((,class :inherit bold :background ,cyan-nuanced-bg :foreground ,cyan)))
7359 `(transient-blue ((,class :inherit bold :foreground ,blue))) 7158 `(transient-blue ((,class :inherit bold :foreground ,blue)))
7360 `(transient-disabled-suffix ((,class :inherit modus-themes-intense-red))) 7159 `(transient-disabled-suffix ((,class :inherit modus-themes-intense-red)))
7361 `(transient-enabled-suffix ((,class :inherit modus-themes-grue-background-subtle))) 7160 `(transient-enabled-suffix ((,class :inherit modus-themes-grue-background-subtle)))
@@ -7379,6 +7178,24 @@ by virtue of calling either of `modus-themes-load-operandi' and
7379 `(trashed-marked ((,class :inherit modus-themes-mark-alt))) 7178 `(trashed-marked ((,class :inherit modus-themes-mark-alt)))
7380 `(trashed-restored ((,class :inherit modus-themes-mark-sel))) 7179 `(trashed-restored ((,class :inherit modus-themes-mark-sel)))
7381 `(trashed-symlink ((,class :inherit modus-themes-link-symlink))) 7180 `(trashed-symlink ((,class :inherit modus-themes-link-symlink)))
7181;;;;; tree-sitter
7182 `(tree-sitter-hl-face:attribute ((,class :inherit font-lock-variable-name-face)))
7183 `(tree-sitter-hl-face:constant.builtin ((,class :inherit tree-sitter-hl-face:constant)))
7184 `(tree-sitter-hl-face:escape ((,class :inherit font-lock-regexp-grouping-backslash)))
7185 `(tree-sitter-hl-face:function ((,class :inherit font-lock-function-name-face)))
7186 `(tree-sitter-hl-face:function.call ((,class :inherit tree-sitter-hl-face:function)))
7187 `(tree-sitter-hl-face:label (( )))
7188 `(tree-sitter-hl-face:method.call (( )))
7189 `(tree-sitter-hl-face:operator ((,class :inherit modus-themes-bold)))
7190 `(tree-sitter-hl-face:property (( )))
7191 `(tree-sitter-hl-face:property.definition ((,class :inherit font-lock-variable-name-face)))
7192 `(tree-sitter-hl-face:punctuation (( )))
7193 `(tree-sitter-hl-face:punctuation.bracket (( )))
7194 `(tree-sitter-hl-face:punctuation.delimiter (( )))
7195 `(tree-sitter-hl-face:punctuation.special ((,class :inherit font-lock-regexp-grouping-construct)))
7196 `(tree-sitter-hl-face:string.special ((,class :inherit tree-sitter-hl-face:string)))
7197 `(tree-sitter-hl-face:tag ((,class :inherit font-lock-function-name-face)))
7198 `(tree-sitter-hl-face:type.argument (( )))
7382;;;;; treemacs 7199;;;;; treemacs
7383 `(treemacs-directory-collapsed-face ((,class :foreground ,magenta-alt))) 7200 `(treemacs-directory-collapsed-face ((,class :foreground ,magenta-alt)))
7384 `(treemacs-directory-face ((,class :inherit dired-directory))) 7201 `(treemacs-directory-face ((,class :inherit dired-directory)))
@@ -7460,8 +7277,8 @@ by virtue of calling either of `modus-themes-load-operandi' and
7460;;;;; vertico 7277;;;;; vertico
7461 `(vertico-current ((,class :inherit modus-themes-completion-selected))) 7278 `(vertico-current ((,class :inherit modus-themes-completion-selected)))
7462;;;;; vertico-quick 7279;;;;; vertico-quick
7463 `(vertico-quick1 ((,class :inherit (modus-themes-intense-blue bold)))) 7280 `(vertico-quick1 ((,class :inherit bold :background ,bg-char-0)))
7464 `(vertico-quick2 ((,class :inherit (modus-themes-refine-magenta bold)))) 7281 `(vertico-quick2 ((,class :inherit bold :background ,bg-char-1)))
7465;;;;; vimish-fold 7282;;;;; vimish-fold
7466 `(vimish-fold-fringe ((,class :foreground ,cyan-active))) 7283 `(vimish-fold-fringe ((,class :foreground ,cyan-active)))
7467 `(vimish-fold-mouse-face ((,class :inherit modus-themes-intense-blue))) 7284 `(vimish-fold-mouse-face ((,class :inherit modus-themes-intense-blue)))
@@ -7491,6 +7308,8 @@ by virtue of calling either of `modus-themes-load-operandi' and
7491 `(vterm-color-underline ((,class :foreground ,fg-special-warm :underline t))) 7308 `(vterm-color-underline ((,class :foreground ,fg-special-warm :underline t)))
7492 `(vterm-color-white ((,class :background "gray65" :foreground "gray65"))) 7309 `(vterm-color-white ((,class :background "gray65" :foreground "gray65")))
7493 `(vterm-color-yellow ((,class :background ,yellow :foreground ,yellow))) 7310 `(vterm-color-yellow ((,class :background ,yellow :foreground ,yellow)))
7311;;;;; vundo
7312 `(vundo-highlight ((,class :inherit (bold vundo-node) :foreground ,red-intense)))
7494;;;;; wcheck-mode 7313;;;;; wcheck-mode
7495 `(wcheck-default-face ((,class :foreground ,red :underline t))) 7314 `(wcheck-default-face ((,class :foreground ,red :underline t)))
7496;;;;; web-mode 7315;;;;; web-mode
@@ -7652,6 +7471,9 @@ by virtue of calling either of `modus-themes-load-operandi' and
7652 `(flymake-error-bitmap '(flymake-double-exclamation-mark modus-themes-fringe-red)) 7471 `(flymake-error-bitmap '(flymake-double-exclamation-mark modus-themes-fringe-red))
7653 `(flymake-warning-bitmap '(exclamation-mark modus-themes-fringe-yellow)) 7472 `(flymake-warning-bitmap '(exclamation-mark modus-themes-fringe-yellow))
7654 `(flymake-note-bitmap '(exclamation-mark modus-themes-fringe-cyan)) 7473 `(flymake-note-bitmap '(exclamation-mark modus-themes-fringe-cyan))
7474;;;; highlight-changes
7475 `(highlight-changes-colors nil)
7476 `(highlight-changes-face-list '(success warning error bold bold-italic))
7655;;;; ibuffer 7477;;;; ibuffer
7656 `(ibuffer-deletion-face 'modus-themes-mark-del) 7478 `(ibuffer-deletion-face 'modus-themes-mark-del)
7657 `(ibuffer-filter-group-name-face 'modus-themes-pseudo-header) 7479 `(ibuffer-filter-group-name-face 'modus-themes-pseudo-header)
@@ -7753,9 +7575,4 @@ by virtue of calling either of `modus-themes-load-operandi' and
7753 (add-to-list 'custom-theme-load-path dir)))) 7575 (add-to-list 'custom-theme-load-path dir))))
7754 7576
7755(provide 'modus-themes) 7577(provide 'modus-themes)
7756
7757;; Local Variables:
7758;; time-stamp-pattern: "Last-Modified: <%Y-%02m-%02d %02H:%02M:%02S %5z>"
7759;; End:
7760
7761;;; modus-themes.el ends here 7578;;; modus-themes.el ends here
diff --git a/etc/themes/modus-vivendi-theme.el b/etc/themes/modus-vivendi-theme.el
index fb95772654f..fe52aefc84d 100644
--- a/etc/themes/modus-vivendi-theme.el
+++ b/etc/themes/modus-vivendi-theme.el
@@ -3,8 +3,8 @@
3;; Copyright (C) 2019-2022 Free Software Foundation, Inc. 3;; Copyright (C) 2019-2022 Free Software Foundation, Inc.
4 4
5;; Author: Protesilaos Stavrou <info@protesilaos.com> 5;; Author: Protesilaos Stavrou <info@protesilaos.com>
6;; URL: https://gitlab.com/protesilaos/modus-themes 6;; URL: https://git.sr.ht/~protesilaos/modus-themes
7;; Version: 2.3.0 7;; Version: 2.4.1
8;; Package-Requires: ((emacs "27.1")) 8;; Package-Requires: ((emacs "27.1"))
9;; Keywords: faces, theme, accessibility 9;; Keywords: faces, theme, accessibility
10 10