aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorProtesilaos Stavrou2021-04-18 06:30:12 +0300
committerStefan Kangas2021-04-18 18:39:49 +0200
commitdc9b0dc4616e63fb0e30a4fd79ffc196ebcac73b (patch)
tree3ab6d4ab17e0f8bd8a97bf0352090b8414b335a4 /doc
parent2822246b5d8154d0166e17ffd28a1d85b57d68aa (diff)
downloademacs-dc9b0dc4616e63fb0e30a4fd79ffc196ebcac73b.tar.gz
emacs-dc9b0dc4616e63fb0e30a4fd79ffc196ebcac73b.zip
Update modus-themes to version 1.3.2
* doc/misc/modus-themes.org (COPYING): Reword to match the phrasing of other manuals that are distributed with Emacs. (Install from the archives) (Sample configuration for use-package) (Option for more bold constructs) (Option for more slanted constructs) (Option for syntax highlighting) (Option for no font mixing) (Option for links) (Option for command prompt styles) (Option for completion framework aesthetics) (Option for fringe visibility) (Option for language checkers) (Option for org-habit graph styles) (Option for line numbers (display-line-numbers-mode)) (Option for parenthesis matching (show-paren-mode)) (Option for diff buffer looks) (Option for scaled headings) (Option for variable-pitch font in UI elements) (Option for variable-pitch font in headings) (Case-by-case face specs using the themes' palette (DIY)) (Face specs at scale using the themes' palette (DIY)) (Font configurations for Org and others (DIY)) (Load theme depending on time of day): Minor markup changes for better texi output. (Option for mode line presentation): Document new possible values for 'modus-themes-mode-line'. (Option for line highlighting (hl-line-mode)): Document new 'modus-themes-hl-line' variable, which supersedes 'modus-themes-intense-hl-line'. (Option for active region): Document new possible values for 'modus-themes-region'. (Option for org-mode block styles): Cite variables that affect fontification. (Option for the headings' overall style): Include the option of a per-level nil value. (Remap face with local value (DIY)) (Override colors (DIY)): Add sections. (Full support for packages or face groups): Document newly supported packages (Note for dimmer.el) (Note for EWW and Elfeed fonts (SHR fonts)): Add notes. (Acknowledgements): Add names of new contributors. (GNU Free Documentation License): Add tags for html export. * etc/themes/modus-operandi-theme.el (File) * etc/themes/modus-vivendi-theme.el (File): Update to version 1.3.1 * etc/themes/modus-themes.el (modus-themes-operandi-colors) (modus-themes-vivendi-colors) (modus-theme-subtle-red) (modus-themes-subtle-red) (modus-theme-subtle-green) (modus-themes-subtle-green) (modus-theme-subtle-yellow) (modus-themes-subtle-yellow) (modus-theme-subtle-blue) (modus-themes-subtle-blue) (modus-theme-subtle-magenta) (modus-themes-subtle-magenta) (modus-theme-subtle-cyan) (modus-themes-subtle-cyan) (modus-theme-subtle-neutral) (modus-themes-subtle-neutral) (modus-theme-intense-red) (modus-themes-intense-red) (modus-theme-intense-green) (modus-themes-intense-green) (modus-theme-intense-yellow) (modus-themes-intense-yellow) (modus-theme-intense-blue) (modus-themes-intense-blue) (modus-theme-intense-magenta) (modus-themes-intense-magenta) (modus-theme-intense-cyan) (modus-themes-intense-cyan) (modus-theme-intense-neutral) (modus-themes-intense-neutral) (modus-theme-refine-red) (modus-themes-refine-red) (modus-theme-refine-green) (modus-themes-refine-green) (modus-theme-refine-yellow) (modus-themes-refine-yellow) (modus-theme-refine-blue) (modus-themes-refine-blue) (modus-theme-refine-magenta) (modus-themes-refine-magenta) (modus-theme-refine-cyan) (modus-themes-refine-cyan) (modus-theme-active-red) (modus-themes-active-red) (modus-theme-active-green) (modus-themes-active-green) (modus-theme-active-yellow) (modus-themes-active-yellow) (modus-theme-active-blue) (modus-themes-active-blue) (modus-theme-active-magenta) (modus-themes-active-magenta) (modus-theme-active-cyan) (modus-themes-active-cyan) (modus-theme-fringe-red) (modus-themes-fringe-red) (modus-theme-fringe-green) (modus-themes-fringe-green) (modus-theme-fringe-yellow) (modus-themes-fringe-yellow) (modus-theme-fringe-blue) (modus-themes-fringe-blue) (modus-theme-fringe-magenta) (modus-themes-fringe-magenta) (modus-theme-fringe-cyan) (modus-themes-fringe-cyan) (modus-theme-nuanced-red) (modus-theme-nuanced-green) (modus-theme-nuanced-yellow) (modus-theme-nuanced-blue) (modus-theme-nuanced-magenta) (modus-theme-nuanced-cyan) (modus-theme-special-cold) (modus-theme-special-mild) (modus-theme-special-warm) (modus-theme-special-calm) (modus-theme-diff-added) (modus-theme-diff-changed) (modus-theme-diff-removed) (modus-theme-diff-refine-added) (modus-theme-diff-refine-changed) (modus-theme-diff-refine-removed) (modus-theme-diff-focus-added) (modus-theme-diff-focus-changed) (modus-theme-diff-focus-removed) (modus-theme-diff-heading) (modus-theme-pseudo-header) (modus-theme-mark-alt) (modus-theme-mark-del) (modus-theme-mark-sel) (modus-theme-mark-symbol) (modus-theme-heading-1) (modus-theme-heading-2) (modus-theme-heading-3) (modus-theme-heading-4) (modus-theme-heading-5) (modus-theme-heading-6) (modus-theme-heading-7) (modus-theme-heading-8) (modus-theme-hl-line) (modus-theme-bold) (modus-theme-slant) (modus-theme-variable-pitch) (modus-theme-graph-red-0) (modus-theme-graph-red-1) (modus-theme-graph-green-0) (modus-theme-graph-green-1) (modus-theme-graph-yellow-0) (modus-theme-graph-yellow-1) (modus-theme-graph-blue-0) (modus-theme-graph-blue-1) (modus-theme-graph-magenta-0) (modus-theme-graph-magenta-1) (modus-theme-graph-cyan-0) (modus-theme-graph-cyan-1) (modus-theme-lang-note) (modus-theme-lang-warning) (modus-theme-lang-error): Rename all internal faces. (modus-themes-headings) (modus-themes-fringes) (modus-themes-lang-checkers) (modus-themes-org-blocks) (modus-themes-org-habit) (modus-themes-mode-line) (modus-themes-diffs) (modus-themes-completions) (modus-themes-prompts) (modus-themes-intense-hl-line) (modus-themes-hl-line) (modus-themes-paren-match) (modus-themes-syntax) (modus-themes-links) (modus-themes-region): Update defcustom. (modus-themes--fringe): (modus-themes--headings-choice): (modus-themes--prompt): (modus-themes--org-block-delim): (modus-themes--mode-line-attrs): (modus-themes--link): (modus-themes--region): (modus-themes--hl-line): Adjustments to internal functions. (modus-themes-faces): Update faces. (modus-themes-custom-variables): Update custom variables.
Diffstat (limited to 'doc')
-rw-r--r--doc/misc/modus-themes.org499
1 files changed, 406 insertions, 93 deletions
diff --git a/doc/misc/modus-themes.org b/doc/misc/modus-themes.org
index 9764a3467fa..001ed572186 100644
--- a/doc/misc/modus-themes.org
+++ b/doc/misc/modus-themes.org
@@ -4,9 +4,9 @@
4#+language: en 4#+language: en
5#+options: ':t toc:nil author:t email:t 5#+options: ':t toc:nil author:t email:t
6 6
7#+macro: stable-version 1.2.3 7#+macro: stable-version 1.3.2
8#+macro: release-date 2021-03-05 8#+macro: release-date 2021-04-18
9#+macro: development-version 1.3.0-dev 9#+macro: development-version 1.4.0-dev
10#+macro: export-date (eval (format-time-string "%F %R %z" (current-time))) 10#+macro: export-date (eval (format-time-string "%F %R %z" (current-time)))
11#+macro: file @@texinfo:@file{@@$1@@texinfo:}@@ 11#+macro: file @@texinfo:@file{@@$1@@texinfo:}@@
12#+macro: space @@texinfo:@: @@ 12#+macro: space @@texinfo:@: @@
@@ -46,11 +46,15 @@ built on {{{export-date}}}.
46Copyright (C) 2020-2021 Free Software Foundation, Inc. 46Copyright (C) 2020-2021 Free Software Foundation, Inc.
47 47
48#+begin_quote 48#+begin_quote
49Permission is granted to copy, distribute and/or modify this 49Permission is granted to copy, distribute and/or modify this document
50document under the terms of the GNU Free Documentation License, 50under the terms of the GNU Free Documentation License, Version 1.3 or
51Version 1.3 or any later version published by the Free Software 51any later version published by the Free Software Foundation; with no
52Foundation; with no Invariant Sections, with no Front-Cover Texts, 52Invariant Sections, with the Front-Cover Texts being “A GNU Manual,” and
53and with no Back-Cover Texts. 53with the Back-Cover Texts as in (a) below. A copy of the license is
54included in the section entitled “GNU Free Documentation License.”
55
56(a) The FSF’s Back-Cover Text is: “You have the freedom to copy and
57modify this GNU manual.”
54#+end_quote 58#+end_quote
55 59
56* Overview 60* Overview
@@ -141,7 +145,7 @@ The themes are now ready to be used: [[#h:3f3c3728-1b34-437d-9d0c-b110f5b161a9][
141:custom_id: h:c4b10085-149f-43e2-bd4d-347f33aee054 145:custom_id: h:c4b10085-149f-43e2-bd4d-347f33aee054
142:end: 146:end:
143 147
144The =modus-themes= package is available from the GNU ELPA archive, which 148The ~modus-themes~ package is available from the GNU ELPA archive, which
145is configured by default. 149is configured by default.
146 150
147Prior to querying any package archive, make sure to have updated the 151Prior to querying any package archive, make sure to have updated the
@@ -287,7 +291,8 @@ package configurations in their setup. We use this as an example:
287 :init 291 :init
288 ;; Add all your customizations prior to loading the themes 292 ;; Add all your customizations prior to loading the themes
289 (setq modus-themes-slanted-constructs t 293 (setq modus-themes-slanted-constructs t
290 modus-themes-bold-constructs nil) 294 modus-themes-bold-constructs nil
295 modus-themes-region 'no-extend)
291 296
292 ;; Load the theme files before enabling a theme (else you get an error). 297 ;; Load the theme files before enabling a theme (else you get an error).
293 (modus-themes-load-themes) 298 (modus-themes-load-themes)
@@ -374,13 +379,13 @@ Symbol: ~modus-themes-bold-constructs~
374 379
375Possible values: 380Possible values:
376 381
3771. =nil= (default) 3821. ~nil~ (default)
3782. =t= 3832. ~t~
379 384
380The default is to use a bold typographic weight only when it is 385The default is to use a bold typographic weight only when it is
381required. 386required.
382 387
383With a non-nil value (=t=) display several syntactic constructs in bold 388With a non-nil value (~t~) display several syntactic constructs in bold
384weight. This concerns keywords and other important aspects of code 389weight. This concerns keywords and other important aspects of code
385syntax. It also affects certain mode line indicators and command-line 390syntax. It also affects certain mode line indicators and command-line
386prompts. 391prompts.
@@ -397,13 +402,13 @@ Symbol: ~modus-themes-slanted-constructs~
397 402
398Possible values: 403Possible values:
399 404
4001. =nil= (default) 4051. ~nil~ (default)
4012. =t= 4062. ~t~
402 407
403The default is to not use slanted text (italics) unless it is absolutely 408The default is to not use slanted text (italics) unless it is absolutely
404necessary. 409necessary.
405 410
406With a non-nil value (=t=) choose to render more faces in slanted text. 411With a non-nil value (~t~) choose to render more faces in slanted text.
407This typically affects documentation strings and code comments. 412This typically affects documentation strings and code comments.
408 413
409** Option for syntax highlighting 414** Option for syntax highlighting
@@ -418,7 +423,7 @@ Symbol: ~modus-themes-syntax~
418 423
419Possible values: 424Possible values:
420 425
4211. =nil= (default) 4261. ~nil~ (default)
4222. ~faint~ 4272. ~faint~
4233. ~yellow-comments~ 4283. ~yellow-comments~
4244. ~green-strings~ 4294. ~green-strings~
@@ -467,8 +472,8 @@ Symbol: ~modus-themes-no-mixed-fonts~
467 472
468Possible values: 473Possible values:
469 474
4701. =nil= (default) 4751. ~nil~ (default)
4712. =t= 4762. ~t~
472 477
473By default, the themes configure some spacing-sensitive faces like Org 478By default, the themes configure some spacing-sensitive faces like Org
474tables and code blocks to always inherit from the ~fixed-pitch~ face. 479tables and code blocks to always inherit from the ~fixed-pitch~ face.
@@ -476,14 +481,14 @@ This is to ensure that those constructs remain monospaced even when
476users opt for a mode that remaps typeface families, such as the built-in 481users opt for a mode that remaps typeface families, such as the built-in
477{{{kbd(M-x variable-pitch-mode)}}}. Otherwise the layout would appear 482{{{kbd(M-x variable-pitch-mode)}}}. Otherwise the layout would appear
478broken, due to how spacing is done. To disable this behaviour, set the 483broken, due to how spacing is done. To disable this behaviour, set the
479option to =t=. 484option to ~t~.
480 485
481Users may prefer to use another package for handling mixed typeface 486Users may prefer to use another package for handling mixed typeface
482configurations, rather than letting the theme do it, perhaps because a 487configurations, rather than letting the theme do it, perhaps because a
483purpose-specific package has extra functionality. Two possible options 488purpose-specific package has extra functionality. Two possible options
484are ~org-variable-pitch~ and ~mixed-pitch~. 489are ~org-variable-pitch~ and ~mixed-pitch~.
485 490
486[[#h:defcf4fc-8fa8-4c29-b12e-7119582cc929][Font configurations for Org (and others)]]. 491[[#h:defcf4fc-8fa8-4c29-b12e-7119582cc929][Font configurations for Org and others]].
487 492
488** Option for links 493** Option for links
489:properties: 494:properties:
@@ -497,7 +502,7 @@ Symbol: ~modus-themes-links~
497 502
498Possible values: 503Possible values:
499 504
5001. =nil= (default) 5051. ~nil~ (default)
5012. ~faint~ 5062. ~faint~
5023. ~neutral-underline~ 5073. ~neutral-underline~
5034. ~faint-neutral-underline~ 5084. ~faint-neutral-underline~
@@ -545,7 +550,7 @@ Symbol: ~modus-themes-prompts~
545 550
546Possible values: 551Possible values:
547 552
5481. =nil= (default) 5531. ~nil~ (default)
5492. ~subtle-accented~ (~subtle~ exists for backward compatibility) 5542. ~subtle-accented~ (~subtle~ exists for backward compatibility)
5503. ~intense-accented~ (~intense~ exists for backward compatibility) 5553. ~intense-accented~ (~intense~ exists for backward compatibility)
5514. ~subtle-gray~ 5564. ~subtle-gray~
@@ -577,12 +582,15 @@ Symbol: ~modus-themes-mode-line~
577 582
578Possible values: 583Possible values:
579 584
5801. =nil= (default) 5851. ~nil~ (default)
5812. ~3d~ 5862. ~3d~
5823. ~moody~ 5873. ~moody~
5834. ~borderless~ 5884. ~borderless~
5845. ~borderless-3d~ 5895. ~borderless-3d~
5856. ~borderless-moody~ 5906. ~borderless-moody~
5917. ~accented~
5928. ~accented-3d~
5939. ~accented-moody~
586 594
587The default produces a two-dimensional effect both for the active and 595The default produces a two-dimensional effect both for the active and
588inactive modelines. The differences between the two are limited to 596inactive modelines. The differences between the two are limited to
@@ -612,6 +620,11 @@ that the inactive modelines remain visible, they apply a slightly more
612prominent background to them than what their counterparts do (same 620prominent background to them than what their counterparts do (same
613inactive background as with the default). 621inactive background as with the default).
614 622
623Similarly, ~accented~, ~accented-3d~, and ~accented-moody~ correspond to the
624default (~nil~), ~3d~, and ~moody~ styles respectively, except that the active
625mode line uses a colored background instead of the standard shade of
626gray.
627
615Note that Moody does not expose any faces that the themes could style 628Note that Moody does not expose any faces that the themes could style
616directly. Instead it re-purposes existing ones to render its tabs and 629directly. Instead it re-purposes existing ones to render its tabs and
617ribbons. As such, there may be cases where the contrast ratio falls 630ribbons. As such, there may be cases where the contrast ratio falls
@@ -624,10 +637,11 @@ is activated when Emacs determines that the background and foreground of
624the given construct are too close to each other in terms of color 637the given construct are too close to each other in terms of color
625distance. In effect, users would need to experiment with the variable 638distance. In effect, users would need to experiment with the variable
626~face-near-same-color-threshold~ to trigger the effect. We find that a 639~face-near-same-color-threshold~ to trigger the effect. We find that a
627value of =45000= will suffice, contrary to the default =30000=. Do not set 640value of =45000= will suffice, contrary to the default =30000=. Though for
628the value too high, because that would have the adverse effect of always 641the ~accented-moody~ value mentioned above, that should be raised up to
629overriding the default color (which has been carefully designed to be 642=70000=. Do not set it too high, because it has the adverse effect of
630highly accessible). 643always overriding the default colors (which have been carefully designed
644to be highly accessible).
631 645
632Furthermore, because Moody expects an underline and overline instead of 646Furthermore, because Moody expects an underline and overline instead of
633a box style, it is advised you include this in your setup: 647a box style, it is advised you include this in your setup:
@@ -648,7 +662,7 @@ Symbol: ~modus-themes-completions~
648 662
649Possible values: 663Possible values:
650 664
6511. =nil= (default) 6651. ~nil~ (default)
6522. ~moderate~ 6662. ~moderate~
6533. ~opinionated~ 6673. ~opinionated~
654 668
@@ -661,7 +675,7 @@ The former category encompasses Icomplete, Ido, Selectrum as well as
661pattern matching styles like Orderless and Flx. The latter covers Helm, 675pattern matching styles like Orderless and Flx. The latter covers Helm,
662Ivy, and similar. 676Ivy, and similar.
663 677
664A value of =nil= will respect the metaphors of each completion framework. 678A value of ~nil~ will respect the metaphors of each completion framework.
665 679
666Option ~moderate~ applies a combination of background and foreground that 680Option ~moderate~ applies a combination of background and foreground that
667is fairly subtle. For Icomplete and friends this constitutes a 681is fairly subtle. For Icomplete and friends this constitutes a
@@ -677,7 +691,7 @@ packages will revert to an even more nuanced aesthetic with some
677additional changes to the choice of hues. 691additional changes to the choice of hues.
678 692
679To appreciate the scope of this customization option, you should spend 693To appreciate the scope of this customization option, you should spend
680some time with every one of the =nil= (default), ~moderate~, and ~opinionated~ 694some time with every one of the ~nil~ (default), ~moderate~, and ~opinionated~
681possibilities. 695possibilities.
682 696
683** Option for fringe visibility 697** Option for fringe visibility
@@ -692,7 +706,7 @@ Symbol: ~modus-themes-fringes~
692 706
693Possible values: 707Possible values:
694 708
6951. =nil= (default) 7091. ~nil~ (default)
6962. ~subtle~ 7102. ~subtle~
6973. ~intense~ 7113. ~intense~
698 712
@@ -716,7 +730,7 @@ Symbol: ~modus-themes-lang-checkers~
716 730
717Possible values: 731Possible values:
718 732
7191. =nil= (default) 7331. ~nil~ (default)
7202. ~subtle-foreground~ 7342. ~subtle-foreground~
7213. ~intense-foreground~ 7353. ~intense-foreground~
7224. ~straight-underline~ 7364. ~straight-underline~
@@ -755,25 +769,50 @@ refer to their documentation strings.
755** Option for line highlighting (hl-line-mode) 769** Option for line highlighting (hl-line-mode)
756:properties: 770:properties:
757:alt_title: Line highlighting 771:alt_title: Line highlighting
758:description: Toggle intense style for current line highlighting 772:description: Choose style of current line (hl-line-mode)
759:custom_id: h:1dba1cfe-d079-4c13-a810-f768e8789177 773:custom_id: h:1dba1cfe-d079-4c13-a810-f768e8789177
760:end: 774:end:
761#+vindex: modus-themes-intense-hl-line 775#+vindex: modus-themes-hl-line
762 776
763Symbol: ~modus-themes-intense-hl-line~ 777Symbol: ~modus-themes-hl-line~
764 778
765Possible values: 779Possible values:
766 780
7671. =nil= (default) 7811. ~nil~ (default)
7682. =t= 7822. ~intense-background~
7833. ~accented-background~
7844. ~underline-neutral~
7855. ~underline-accented~
7866. ~underline-only-neutral~
7877. ~underline-only-accented~
788
789The default is to use a subtle gray background for the current line when
790~hl-line-mode~ is enabled.
791
792The ~intense-background~ applies a more prominent gray to the background
793of the current line.
794
795With ~accented-background~ the default's subtle aesthetic is retained, but
796the background has a more colored hint.
797
798The ~underline-neutral~ combines the default subtle neutral background
799with a gray underline.
769 800
770The default is to use a subtle gray background for ~hl-line-mode~ and its 801Similarly, the ~underline-accented~ renders the background of the current
771global equivalent. 802line in a subtle colored background, while it also draws an accented
803underline.
772 804
773With a non-nil value (=t=) use a more prominent background color instead. 805Option ~underline-only-neutral~ produces a neutral underline, but does not
806use any background.
774 807
775This affects several packages that enable ~hl-line-mode~, such as =elfeed= 808While ~underline-only-accented~ also uses just an underline, only this one
776and =mu4e=. 809is colored.
810
811Consider setting the variable ~x-underline-at-descent-line~ to a non-nil
812value for better results with underlines.
813
814This style affects several packages that enable ~hl-line-mode~, such as
815=elfeed= and =mu4e=.
777 816
778** Option for line numbers (display-line-numbers-mode) 817** Option for line numbers (display-line-numbers-mode)
779:properties: 818:properties:
@@ -787,8 +826,8 @@ Symbol: ~modus-themes-subtle-line-numbers~
787 826
788Possible value: 827Possible value:
789 828
7901. =nil= (default) 8291. ~nil~ (default)
7912. =t= 8302. ~t~
792 831
793The default style for ~display-line-numbers-mode~ and its global variant 832The default style for ~display-line-numbers-mode~ and its global variant
794is to apply a subtle gray background to the line numbers. The current 833is to apply a subtle gray background to the line numbers. The current
@@ -799,7 +838,7 @@ Similarly, the faces for ~display-line-numbers-major-tick~ and its
799counterpart ~display-line-numbers-minor-tick~ use appropriate styles that 838counterpart ~display-line-numbers-minor-tick~ use appropriate styles that
800involve a bespoke background and foreground combination. 839involve a bespoke background and foreground combination.
801 840
802With a non-nil value (=t=), line numbers have no background of their own. 841With a non-nil value (~t~), line numbers have no background of their own.
803Instead they retain the primary background of the theme, blending with 842Instead they retain the primary background of the theme, blending with
804the rest of the buffer. Foreground values for all relevant faces are 843the rest of the buffer. Foreground values for all relevant faces are
805updated to accommodate this aesthetic. 844updated to accommodate this aesthetic.
@@ -816,7 +855,7 @@ Symbol: ~modus-themes-paren-match~
816 855
817Possible values: 856Possible values:
818 857
8191. =nil= (default) 8581. ~nil~ (default)
8202. ~subtle-bold~ 8592. ~subtle-bold~
8213. ~intense~ 8603. ~intense~
8224. ~intense-bold~ 8614. ~intense-bold~
@@ -847,10 +886,12 @@ Symbol: ~modus-themes-region~
847 886
848Possible values: 887Possible values:
849 888
8501. =nil= (default) 8891. ~nil~ (default)
8512. ~no-extend~ 8902. ~no-extend~
8523. ~bg-only~ 8913. ~bg-only~
8534. ~bg-only-no-extend~ 8924. ~bg-only-no-extend~
8935. ~accent~
8946. ~accent-no-extend~
854 895
855Nil means to only use a prominent gray background with a neutral 896Nil means to only use a prominent gray background with a neutral
856foreground. The foreground overrides all syntax highlighting. The 897foreground. The foreground overrides all syntax highlighting. The
@@ -866,6 +907,11 @@ colors. It extends to the edge of the window.
866Option ~bg-only-no-extend~ is a combination of the ~bg-only~ and ~no-extend~ 907Option ~bg-only-no-extend~ is a combination of the ~bg-only~ and ~no-extend~
867options. 908options.
868 909
910Option ~accent~ is like the default, though it uses a more colorful
911background, while ~accent-no-extend~ is the same except it draws the
912region only up to the end of each line instead of extending to the edge
913of the window.
914
869** Option for diff buffer looks 915** Option for diff buffer looks
870:properties: 916:properties:
871:alt_title: Diffs 917:alt_title: Diffs
@@ -878,7 +924,7 @@ Symbol: ~modus-themes-diffs~
878 924
879Possible values: 925Possible values:
880 926
8811. =nil= (default) 9271. ~nil~ (default)
8822. ~desaturated~ 9282. ~desaturated~
8833. ~fg-only~ 9293. ~fg-only~
8844. ~bg-only~ 9304. ~bg-only~
@@ -935,7 +981,7 @@ Symbol: ~modus-themes-org-blocks~
935 981
936Possible values: 982Possible values:
937 983
9381. =nil= (default) 9841. ~nil~ (default)
9392. ~grayscale~ 9852. ~grayscale~
9403. ~rainbow~ 9863. ~rainbow~
941 987
@@ -960,6 +1006,9 @@ major-mode so that the colors are applied consistently throughout: use
960Or start typing in each code block (inefficient at scale, but it still 1006Or start typing in each code block (inefficient at scale, but it still
961works). 1007works).
962 1008
1009The extent of Org block delimiter lines is controlled by the variable
1010~org-fontify-whole-block-delimiter-line~.
1011
963** Option for org-habit graph styles 1012** Option for org-habit graph styles
964:properties: 1013:properties:
965:alt_title: Org agenda habits 1014:alt_title: Org agenda habits
@@ -972,7 +1021,7 @@ Symbol: ~modus-themes-org-habit~
972 1021
973Possible values: 1022Possible values:
974 1023
9751. =nil= (default) 10241. ~nil~ (default)
9762. ~simplified~ 10252. ~simplified~
9773. ~traffic-light~ 10263. ~traffic-light~
978 1027
@@ -1014,11 +1063,10 @@ than other customization options documented in this manual.
1014 1063
1015Symbol: ~modus-themes-headings~ 1064Symbol: ~modus-themes-headings~
1016 1065
1017Possible values, which can be specified for each heading level (examples 1066Possible values, which can be specified for each heading level N
1018further below): 1067(examples further below):
1019 1068
1020+ nil (default fallback option---covers all heading levels) 1069+ ~nil~ (~t~ is also available for backward compatibility)
1021+ =t= (default style for a single heading, when the fallback differs)
1022+ ~no-bold~ 1070+ ~no-bold~
1023+ ~line~ 1071+ ~line~
1024+ ~line-no-bold~ 1072+ ~line-no-bold~
@@ -1058,19 +1106,19 @@ To set a uniform value for all heading levels, use this pattern:
1058 '((t . section))) 1106 '((t . section)))
1059 1107
1060;; Default aesthetic for every heading 1108;; Default aesthetic for every heading
1061(setq modus-themes-headings 1109(setq modus-themes-headings nil)
1062 '())
1063#+end_src 1110#+end_src
1064 1111
1065The default style for headings uses a fairly desaturated foreground 1112The default style for headings uses a fairly desaturated foreground
1066value in combination with bold typographic weight. To specify this 1113color in combination with bold typographic weight. To specify this
1067style for a given level N, assuming you wish to have another fallback 1114style for a given level N, assuming you wish to have another fallback
1068option, just specify the value =t= like this: 1115option, just assign the value ~nil~ like this:
1069 1116
1070#+begin_src emacs-lisp 1117#+begin_src emacs-lisp
1071(setq modus-themes-headings 1118(setq modus-themes-headings
1072 '((1 . t) 1119 '((1 . nil)
1073 (2 . line) 1120 (2 . line)
1121 (3) ; same as nil
1074 (t . rainbow-line-no-bold))) 1122 (t . rainbow-line-no-bold)))
1075#+end_src 1123#+end_src
1076 1124
@@ -1122,6 +1170,9 @@ A description of all other possible styles beyond the default:
1122 1170
1123+ ~no-color-no-bold~ is like ~no-color~ but without the bold weight. 1171+ ~no-color-no-bold~ is like ~no-color~ but without the bold weight.
1124 1172
1173Remember to also inspect relevant variables that Org provides, such as:
1174~org-fontify-whole-heading-line~ and ~org-fontify-done-headline~.
1175
1125** Option for scaled headings 1176** Option for scaled headings
1126:properties: 1177:properties:
1127:alt_title: Scaled headings 1178:alt_title: Scaled headings
@@ -1134,12 +1185,12 @@ Symbol: ~modus-themes-scale-headings~
1134 1185
1135Possible values: 1186Possible values:
1136 1187
11371. =nil= (default) 11881. ~nil~ (default)
11382. =t= 11892. ~t~
1139 1190
1140The default is to use the same size for headings and paragraph text. 1191The default is to use the same size for headings and paragraph text.
1141 1192
1142With a non-nil value (=t=) make headings larger in height relative to the 1193With a non-nil value (~t~) make headings larger in height relative to the
1143main text. This is noticeable in modes like Org, Markdown, and Info. 1194main text. This is noticeable in modes like Org, Markdown, and Info.
1144 1195
1145*** Control the scale of headings 1196*** Control the scale of headings
@@ -1217,8 +1268,8 @@ Symbol: ~modus-themes-variable-pitch-ui~
1217 1268
1218Possible values: 1269Possible values:
1219 1270
12201. =nil= (default) 12711. ~nil~ (default)
12212. =t= 12722. ~t~
1222 1273
1223This option concerns User Interface elements that are under the direct 1274This option concerns User Interface elements that are under the direct
1224control of Emacs. In particular: the mode line, header line, tab bar, 1275control of Emacs. In particular: the mode line, header line, tab bar,
@@ -1227,7 +1278,7 @@ and tab line.
1227The default is to use the same font as the rest of Emacs, which usually 1278The default is to use the same font as the rest of Emacs, which usually
1228is a monospaced family. 1279is a monospaced family.
1229 1280
1230With a non-nil value (=t=) apply a proportionately spaced typeface. This 1281With a non-nil value (~t~) apply a proportionately spaced typeface. This
1231is done by assigning the ~variable-pitch~ face to the relevant items. 1282is done by assigning the ~variable-pitch~ face to the relevant items.
1232 1283
1233[[#h:defcf4fc-8fa8-4c29-b12e-7119582cc929][Font configurations for Org and others]]. 1284[[#h:defcf4fc-8fa8-4c29-b12e-7119582cc929][Font configurations for Org and others]].
@@ -1244,13 +1295,13 @@ Symbol: ~modus-themes-variable-pitch-headings~
1244 1295
1245Possible values: 1296Possible values:
1246 1297
12471. =nil= (default) 12981. ~nil~ (default)
12482. =t= 12992. ~t~
1249 1300
1250The default is to use the main font family, which typically is 1301The default is to use the main font family, which typically is
1251monospaced. 1302monospaced.
1252 1303
1253With a non-nil value (=t=) apply a proportionately spaced typeface, else 1304With a non-nil value (~t~) apply a proportionately spaced typeface, else
1254"variable-pitch", to headings (such as in Org mode). 1305"variable-pitch", to headings (such as in Org mode).
1255 1306
1256[[#h:defcf4fc-8fa8-4c29-b12e-7119582cc929][Font configurations for Org and others]]. 1307[[#h:defcf4fc-8fa8-4c29-b12e-7119582cc929][Font configurations for Org and others]].
@@ -1357,7 +1408,7 @@ With that granted, let us expand the example to actually change the
1357 1408
1358If you evaluate this form, your cursor will become blue. But if you 1409If you evaluate this form, your cursor will become blue. But if you
1359change themes, such as with ~modus-themes-toggle~, your edits will be 1410change themes, such as with ~modus-themes-toggle~, your edits will be
1360lost, because the newly loaded theme will override the =:background= 1411lost, because the newly loaded theme will override the ~:background~
1361attribute you had assigned to that face. 1412attribute you had assigned to that face.
1362 1413
1363For such changes to persist, we need to make them after loading the 1414For such changes to persist, we need to make them after loading the
@@ -1458,7 +1509,7 @@ Getting a list of colors may have its applications, though what you are
1458most likely interested in is how to use those variables to configure 1509most likely interested in is how to use those variables to configure
1459several faces at once. To do so we can rely on the built-in 1510several faces at once. To do so we can rely on the built-in
1460~custom-set-faces~ function, which sets face specifications for the 1511~custom-set-faces~ function, which sets face specifications for the
1461special =user= theme. That "theme" gets applied on top of regular themes 1512special ~user~ theme. That "theme" gets applied on top of regular themes
1462like ~modus-operandi~ and ~modus-vivendi~. 1513like ~modus-operandi~ and ~modus-vivendi~.
1463 1514
1464This is how it works: 1515This is how it works:
@@ -1502,7 +1553,7 @@ Thus:
1502[[#h:86f6906b-f090-46cc-9816-1fe8aeb38776][A theme-agnostic hook for theme loading]]. 1553[[#h:86f6906b-f090-46cc-9816-1fe8aeb38776][A theme-agnostic hook for theme loading]].
1503 1554
1504To discover the faces defined by all loaded libraries, you may do 1555To discover the faces defined by all loaded libraries, you may do
1505{{{kbd(M-x list-faces-display)}}}. Be warned that when you =:inherit= a face 1556{{{kbd(M-x list-faces-display)}}}. Be warned that when you ~:inherit~ a face
1506you are introducing an implicit dependency, so try to avoid doing so for 1557you are introducing an implicit dependency, so try to avoid doing so for
1507libraries other than the built-in {{{file(faces.el)}}} (or at least understand 1558libraries other than the built-in {{{file(faces.el)}}} (or at least understand
1508that things may break if you inherit from a yet-to-be-loaded face). 1559that things may break if you inherit from a yet-to-be-loaded face).
@@ -1524,6 +1575,68 @@ the previous section. Adapt the above example like this:
1524 ...)) 1575 ...))
1525#+end_src 1576#+end_src
1526 1577
1578** Remap face with local value (DIY)
1579:properties:
1580:custom_id: h:7a93cb6f-4eca-4d56-a85c-9dcd813d6b0f
1581:end:
1582#+cindex: Remapping faces
1583
1584There are cases where we need to change the buffer-local attributes of a
1585face. This might be because we have our own minor mode that re-uses a
1586face for a particular purpose, such as a line selection tool that
1587activates ~hl-line-mode~, but we wish to keep it distinct from other
1588buffers. This is where ~face-remap-add-relative~ can be applied and may
1589be combined with ~modus-themes-with-colors~ to deliver consistent results.
1590
1591[[#h:51ba3547-b8c8-40d6-ba5a-4586477fd4ae][Face specs at scale using the themes' palette (DIY)]].
1592
1593In this example we will write a simple interactive function that adjusts
1594the background color of the ~region~ face. This is the sample code:
1595
1596#+begin_src emacs-lisp
1597(defvar my-rainbow-region-colors
1598 (modus-themes-with-colors
1599 `((red . ,red-subtle-bg)
1600 (green . ,green-subtle-bg)
1601 (yellow . ,yellow-subtle-bg)
1602 (blue . ,blue-subtle-bg)
1603 (magenta . ,magenta-subtle-bg)
1604 (cyan . ,cyan-subtle-bg)))
1605 "Sample list of color values for `my-rainbow-region'.")
1606
1607(defun my-rainbow-region (color)
1608 "Remap buffer-local attribute of `region' using COLOR."
1609 (interactive
1610 (list
1611 (completing-read "Pick a color: " my-rainbow-region-colors)))
1612 (face-remap-add-relative
1613 'region
1614 `( :background ,(alist-get (intern color) my-rainbow-region-colors)
1615 :foreground ,(face-attribute 'default :foreground))))
1616#+end_src
1617
1618When ~my-rainbow-region~ is called interactively, it prompts for a color
1619to use. The list of candidates is drawn from the car of each
1620association in ~my-rainbow-region-colors~ (so "red", "green", etc.).
1621
1622To extend this principle, we may write wrapper functions that pass a
1623color directly. Those can be useful in tandem with hooks. Consider
1624this example:
1625
1626#+begin_src emacs-lisp
1627(defun my-rainbow-region-magenta ()
1628 (my-rainbow-region 'magenta))
1629
1630(add-hook 'diff-mode-hook #'my-rainbow-region-magenta)
1631#+end_src
1632
1633Whenever we enter a ~diff-mode~ buffer, we now get a magenta-colored
1634region.
1635
1636Perhaps you may wish to generalise those findings in to a set of
1637functions that also accept an arbitrary face. We shall leave the
1638experimentation up to you.
1639
1527** Override colors (DIY) 1640** Override colors (DIY)
1528:properties: 1641:properties:
1529:custom_id: h:307d95dd-8dbd-4ece-a543-10ae86f155a6 1642:custom_id: h:307d95dd-8dbd-4ece-a543-10ae86f155a6
@@ -1627,16 +1740,89 @@ with {{{kbd(M-x modus-themes-toggle)}}} will also use the overrides.
1627Given that this is a user-level customisation, one is free to implement 1740Given that this is a user-level customisation, one is free to implement
1628whatever color values they desire, even if the possible combinations 1741whatever color values they desire, even if the possible combinations
1629fall below the minimum 7:1 contrast ratio that governs the design of the 1742fall below the minimum 7:1 contrast ratio that governs the design of the
1630themes (the WCAG AAA legibility standard). Preferences aside, it is 1743themes (the WCAG AAA legibility standard). Alternatively, this can also
1631advised to inspect the source code of ~modus-themes-operandi-colors~ and 1744be done programmatically ([[#h:4589acdc-2505-41fc-9f5e-699cfc45ab00][Override color saturation]]).
1632~modus-themes-vivendi-colors~ to read the inline commentary: it explains 1745
1633what the intended use of each palette subset is. 1746For manual interventions it is advised to inspect the source code of
1747~modus-themes-operandi-colors~ and ~modus-themes-vivendi-colors~ for the
1748inline commentary: it explains what the intended use of each palette
1749subset is.
1634 1750
1635Furthermore, users may benefit from the ~modus-themes-contrast~ function 1751Furthermore, users may benefit from the ~modus-themes-contrast~ function
1636that we provide: [[#h:02e25930-e71a-493d-828a-8907fc80f874][test color combinations]]. It measures the contrast 1752that we provide: [[#h:02e25930-e71a-493d-828a-8907fc80f874][test color combinations]]. It measures the contrast
1637ratio between two color values, so it can help in overriding the palette 1753ratio between two color values, so it can help in overriding the palette
1638(or a subset thereof) without making the end result inaccessible. 1754(or a subset thereof) without making the end result inaccessible.
1639 1755
1756** Override color saturation (DIY)
1757:properties:
1758:custom_id: h:4589acdc-2505-41fc-9f5e-699cfc45ab00
1759:end:
1760#+cindex: Change a theme's color saturation
1761
1762In the previous section we documented how one can override color values
1763manually ([[#h:307d95dd-8dbd-4ece-a543-10ae86f155a6][Override colors]]). Here we use a programmatic approach which
1764leverages the built-in ~color-saturate-name~ function to adjust the
1765saturation of all color values used by the active Modus theme. Our goal
1766is to prepare a counterpart of the active theme's palette that holds
1767modified color values, adjusted for a percent change in saturation. A
1768positive number amplifies the effect, while a negative one will move
1769towards a grayscale spectrum.
1770
1771We start with a function that can be either called from Lisp or invoked
1772interactively. In the former scenario, we pass to it the rate of change
1773we want. While in the latter, a minibuffer prompt asks for a number to
1774apply the desired effect. In either case, we intend to assign anew the
1775value of ~modus-themes-operandi-color-overrides~ (light theme) and the
1776same for ~modus-themes-vivendi-color-overrides~ (dark theme).
1777
1778#+begin_src emacs-lisp
1779(defun my-modus-themes-saturate (percent)
1780 "Saturate current Modus theme palette overrides by PERCENT."
1781 (interactive
1782 (list (read-number "Saturation by percent: ")))
1783 (let* ((theme (modus-themes--current-theme))
1784 (palette (pcase theme
1785 ('modus-operandi modus-themes-operandi-colors)
1786 ('modus-vivendi modus-themes-vivendi-colors)
1787 (_ (error "No Modus theme is active"))))
1788 (overrides (pcase theme
1789 ('modus-operandi 'modus-themes-operandi-color-overrides)
1790 ('modus-vivendi 'modus-themes-vivendi-color-overrides)
1791 (_ (error "No Modus theme is active")))))
1792 (let (name cons colors)
1793 (dolist (cons palette)
1794 (setq name (color-saturate-name (cdr cons) percent))
1795 (setq name (format "%s" name))
1796 (setq cons `(,(car cons) . ,name))
1797 (push cons colors))
1798 (set overrides colors))
1799 (pcase theme
1800 ('modus-operandi (modus-themes-load-operandi))
1801 ('modus-vivendi (modus-themes-load-vivendi)))))
1802
1803;; sample Elisp calls (or call `my-modus-themes-saturate' interactively)
1804(my-modus-themes-saturate 50)
1805(my-modus-themes-saturate -75)
1806#+end_src
1807
1808Using the above has an immediate effect, as it reloads the active Modus
1809theme.
1810
1811To disable the effect, one must reset the aforementioned variables to
1812~nil~. Or specify a command for it, such as by taking inspiration from
1813the ~modus-themes-toggle~ we already provide:
1814
1815#+begin_src emacs-lisp
1816(defun my-modus-themes-revert-overrides ()
1817 "Reset palette overrides and reload active Modus theme."
1818 (interactive)
1819 (setq modus-themes-operandi-color-overrides nil
1820 modus-themes-vivendi-color-overrides nil)
1821 (pcase (modus-themes--current-theme)
1822 ('modus-operandi (modus-themes-load-operandi))
1823 ('modus-vivendi (modus-themes-load-vivendi))))
1824#+end_src
1825
1640** Font configurations for Org and others (DIY) 1826** Font configurations for Org and others (DIY)
1641:properties: 1827:properties:
1642:custom_id: h:defcf4fc-8fa8-4c29-b12e-7119582cc929 1828:custom_id: h:defcf4fc-8fa8-4c29-b12e-7119582cc929
@@ -1677,9 +1863,9 @@ reading the doc string of ~set-face-attribute~):
1677(set-face-attribute 'fixed-pitch nil :family "DejaVu Sans Mono" :height 1.0) 1863(set-face-attribute 'fixed-pitch nil :family "DejaVu Sans Mono" :height 1.0)
1678#+end_src 1864#+end_src
1679 1865
1680Note the differences in the =:height= property. The =default= face must 1866Note the differences in the ~:height~ property. The ~default~ face must
1681specify an absolute value, which is the point size × 10. So if you want 1867specify an absolute value, which is the point size × 10. So if you want
1682to use a font at point size =11=, you set the height to =110=.[fn:: =:height= 1868to use a font at point size =11=, you set the height to =110=.[fn:: ~:height~
1683values do not need to be rounded to multiples of ten: the likes of =115= 1869values do not need to be rounded to multiples of ten: the likes of =115=
1684are perfectly valid—some typefaces will change to account for those 1870are perfectly valid—some typefaces will change to account for those
1685finer increments.] Whereas every other face must have a value that is 1871finer increments.] Whereas every other face must have a value that is
@@ -1689,6 +1875,8 @@ importance: it ensures that all fonts can scale gracefully when using
1689something like the ~text-scale-adjust~ command which only operates on the 1875something like the ~text-scale-adjust~ command which only operates on the
1690base font size (i.e. the ~default~ face's absolute height). 1876base font size (i.e. the ~default~ face's absolute height).
1691 1877
1878[[#h:e6c5451f-6763-4be7-8fdb-b4706a422a4c][Note for EWW and Elfeed fonts (SHR fonts)]].
1879
1692** Custom Org user faces (DIY) 1880** Custom Org user faces (DIY)
1693:properties: 1881:properties:
1694:custom_id: h:89f0678d-c5c3-4a57-a526-668b2bb2d7ad 1882:custom_id: h:89f0678d-c5c3-4a57-a526-668b2bb2d7ad
@@ -1871,6 +2059,68 @@ package:
1871 (circadian-setup)) 2059 (circadian-setup))
1872#+end_src 2060#+end_src
1873 2061
2062** Backdrop for pdf-tools (DIY)
2063:properties:
2064:custom_id: h:ff69dfe1-29c0-447a-915c-b5ff7c5509cd
2065:end:
2066#+cindex: Remapping pdf-tools backdrop
2067
2068Most PDF files use a white background for their page, making it
2069impossible to discern the file's boundaries in the buffer while using
2070the Modus Operandi theme. To introduce a distinction between the
2071buffer's backdrop and the PDF page's background, the former must be
2072rendered as some shade of gray. Ideally, ~pdf-tools~ would provide a face
2073that the themes could support directly, though this does not seem to be
2074the case for the time being. We must thus employ the face remapping
2075technique that is documented elsewhere in this document to change the
2076buffer-local value of the ~default~ face.
2077
2078[[#h:7a93cb6f-4eca-4d56-a85c-9dcd813d6b0f][Remap face with local value (DIY)]].
2079
2080To remap the buffer's backdrop, we start with a function like this one:
2081
2082#+begin_src emacs-lisp
2083(defun my-pdf-tools-backdrop ()
2084 (face-remap-add-relative
2085 'default
2086 `(:background ,(modus-themes-color 'bg-alt))))
2087
2088(add-hook 'pdf-tools-enabled-hook #'my-pdf-tools-backdrop)
2089#+end_src
2090
2091The idea is to assign that function to a hook that gets called when
2092~pdf-tools~ renders the document: ~pdf-tools-enabled-hook~. This is enough
2093when you only use one theme. However it has the downside of setting the
2094background color value only at render time. In other words, the face
2095remapping function does not get evaluated anew whenever the theme
2096changes, such as upon invoking {{{kbd(M-x modus-themes-toggle)}}}.
2097
2098To have our face remapping adapt gracefully while switching between the
2099Modus themes, we need to also account for the current theme and control
2100the activation of ~pdf-view-midnight-minor-mode~. To which end we arrive
2101at something like the following, which builds on the above example:
2102
2103#+begin_src emacs-lisp
2104(defun my-pdf-tools-backdrop ()
2105 (face-remap-add-relative
2106 'default
2107 `(:background ,(modus-themes-color 'bg-alt))))
2108
2109(defun my-pdf-tools-midnight-mode-toggle ()
2110 (when (derived-mode-p 'pdf-view-mode)
2111 (if (eq (car custom-enabled-themes) 'modus-vivendi)
2112 (pdf-view-midnight-minor-mode 1)
2113 (pdf-view-midnight-minor-mode -1))
2114 (my-pdf-tools-backdrop)))
2115
2116(add-hook 'pdf-tools-enabled-hook #'my-pdf-tools-midnight-mode-toggle)
2117(add-hook 'modus-themes-after-load-theme-hook #'my-pdf-tools-midnight-mode-toggle)
2118#+end_src
2119
2120With those in place, PDFs have a distinct backdrop for their page, while
2121they automatically switch to their dark mode when ~modus-themes-toggle~ is
2122called from inside a buffer whose major-mode is ~pdf-view-mode~.
2123
1874** A theme-agnostic hook for theme loading (DIY) 2124** A theme-agnostic hook for theme loading (DIY)
1875:properties: 2125:properties:
1876:custom_id: h:86f6906b-f090-46cc-9816-1fe8aeb38776 2126:custom_id: h:86f6906b-f090-46cc-9816-1fe8aeb38776
@@ -1976,6 +2226,7 @@ have lots of extensions, so the "full support" may not be 100% true…
1976+ compilation-mode 2226+ compilation-mode
1977+ completions 2227+ completions
1978+ consult 2228+ consult
2229+ corfu
1979+ counsel* 2230+ counsel*
1980+ counsel-css 2231+ counsel-css
1981+ counsel-notmuch 2232+ counsel-notmuch
@@ -2018,8 +2269,9 @@ have lots of extensions, so the "full support" may not be 100% true…
2018+ eldoc-box 2269+ eldoc-box
2019+ elfeed 2270+ elfeed
2020+ elfeed-score 2271+ elfeed-score
2272+ embark
2021+ emms 2273+ emms
2022+ enhanced-ruby-mode 2274+ enh-ruby-mode (enhanced-ruby-mode)
2023+ epa 2275+ epa
2024+ equake 2276+ equake
2025+ erc 2277+ erc
@@ -2149,6 +2401,7 @@ have lots of extensions, so the "full support" may not be 100% true…
2149+ outline-minor-faces 2401+ outline-minor-faces
2150+ package (what you get with {{{kbd(M-x list-packages)}}}) 2402+ package (what you get with {{{kbd(M-x list-packages)}}})
2151+ page-break-lines 2403+ page-break-lines
2404+ pandoc-mode
2152+ paradox 2405+ paradox
2153+ paren-face 2406+ paren-face
2154+ parrot 2407+ parrot
@@ -2206,7 +2459,11 @@ have lots of extensions, so the "full support" may not be 100% true…
2206+ sx 2459+ sx
2207+ symbol-overlay 2460+ symbol-overlay
2208+ syslog-mode 2461+ syslog-mode
2462+ tab-bar-groups
2463+ tab-bar-mode
2464+ tab-line-mode
2209+ table (built-in table.el) 2465+ table (built-in table.el)
2466+ telega
2210+ telephone-line 2467+ telephone-line
2211+ terraform-mode 2468+ terraform-mode
2212+ term 2469+ term
@@ -2221,6 +2478,7 @@ have lots of extensions, so the "full support" may not be 100% true…
2221+ vc (built-in mode line status for version control) 2478+ vc (built-in mode line status for version control)
2222+ vc-annotate (the out put of {{{kbd(C-x v g)}}}) 2479+ vc-annotate (the out put of {{{kbd(C-x v g)}}})
2223+ vdiff 2480+ vdiff
2481+ vertico
2224+ vimish-fold 2482+ vimish-fold
2225+ visible-mark 2483+ visible-mark
2226+ visual-regexp 2484+ visual-regexp
@@ -2274,6 +2532,42 @@ inherit from some basic faces. Please confirm.
2274This section covers information that may be of interest to users of 2532This section covers information that may be of interest to users of
2275individual packages. 2533individual packages.
2276 2534
2535** Note for dimmer.el
2536:properties:
2537:custom_id: h:8eb4b758-d318-4480-9ead-357a571beb93
2538:end:
2539
2540The {{{file(dimmer.el)}}} library by Neil Okamoto can be configured to
2541automatically dim the colors of inactive Emacs windows. To guarantee
2542consistent results with the Modus themes, we suggest some tweaks to the
2543default styles, such as in this minimal setup:
2544
2545#+begin_src emacs-lisp
2546(use-package dimmer
2547 :config
2548 (setq dimmer-fraction 0.3)
2549 (setq dimmer-adjustment-mode :foreground)
2550 (setq dimmer-use-colorspace :rgb)
2551
2552 (dimmer-mode 1))
2553#+end_src
2554
2555Of the above, we strongly recommend the RGB color space because it is
2556the one that remains faithful to the hueness of the colors used by the
2557themes. Whereas the default CIELAB space has a tendency to distort
2558colors in addition to applying the dim effect, which can be somewhat
2559disorienting.
2560
2561The value of the ~dimmer-fraction~ has been selected empirically. Users
2562might prefer to tweak it further (increasing it makes the dim effect
2563more pronounced).
2564
2565Changing the ~dimmer-adjustment-mode~ is a matter of preference. Though
2566because the Modus themes use black and white as their base colors, any
2567other value for that variable will turn the main background gray. This
2568inadvertently leads to the opposite of the intended utility of this
2569package: it draws too much attention to unfocused windows.
2570
2277** Note for display-fill-column-indicator-mode 2571** Note for display-fill-column-indicator-mode
2278:properties: 2572:properties:
2279:custom_id: h:2a602816-bc1b-45bf-9675-4cbbd7bf6cab 2573:custom_id: h:2a602816-bc1b-45bf-9675-4cbbd7bf6cab
@@ -2521,6 +2815,21 @@ specifications the webpage provides.
2521 2815
2522Consult {{{kbd(C-h v shr-use-colors)}}}. 2816Consult {{{kbd(C-h v shr-use-colors)}}}.
2523 2817
2818
2819** Note for EWW and Elfeed fonts (SHR fonts)
2820:properties:
2821:custom_id: h:e6c5451f-6763-4be7-8fdb-b4706a422a4c
2822:end:
2823
2824EWW and Elfeed rely on the Simple HTML Renderer to display their
2825content. The {{{file(shr.el)}}} library contains the variable ~shr-use-fonts~
2826that controls whether the text in the buffer is set to a ~variable-pitch~
2827typeface (proportionately spaced) or if just retains whatever the
2828default font family is. Its default value is non-nil, which means that
2829~variable-pitch~ is applied.
2830
2831[[#h:defcf4fc-8fa8-4c29-b12e-7119582cc929][Font configurations for Org and others]].
2832
2524** Note for Helm grep 2833** Note for Helm grep
2525:properties: 2834:properties:
2526:custom_id: h:d28879a2-8e4b-4525-986e-14c0f873d229 2835:custom_id: h:d28879a2-8e4b-4525-986e-14c0f873d229
@@ -2748,26 +3057,28 @@ The Modus themes are a collective effort. Every bit of work matters.
2748 3057
2749+ Contributions to code or documentation :: Anders Johansson, Basil 3058+ Contributions to code or documentation :: Anders Johansson, Basil
2750 L.{{{space()}}} Contovounesios, Carlo Zancanaro, Eli Zaretskii, Kostadin 3059 L.{{{space()}}} Contovounesios, Carlo Zancanaro, Eli Zaretskii, Kostadin
2751 Ninev, Madhavan Krishnan, Markus Beppler, Matthew Stevenson, Nicolas 3060 Ninev, Madhavan Krishnan, Markus Beppler, Matthew Stevenson, Mauro
2752 De Jaeghere, Shreyas Ragavan, Stefan Kangas, Vincent Murphy, Xinglu 3061 Aranda, Nicolas De Jaeghere, Shreyas Ragavan, Stefan Kangas, Vincent
2753 Chen. 3062 Murphy, Xinglu Chen.
2754 3063
2755+ Ideas and user feedback :: Aaron Jensen, Adam Spiers, Adrian Manea, 3064+ Ideas and user feedback :: Aaron Jensen, Adam Spiers, Adrian Manea,
2756 Alex Griffin, Alex Peitsinis, Alexey Shmalko, Alok Singh, Anders 3065 Alex Griffin, Alex Peitsinis, Alexey Shmalko, Alok Singh, Anders
2757 Johansson, André Alexandre Gomes, Arif Rezai, Basil L.{{{space()}}} 3066 Johansson, André Alexandre Gomes, Arif Rezai, Basil L.{{{space()}}}
2758 Contovounesios, Burgess Chang, Christian Tietze, Christopher Dimech, 3067 Contovounesios, Burgess Chang, Christian Tietze, Christopher Dimech,
2759 Damien Cassou, Daniel Mendler, Dario Gjorgjevski, David Edmondson, 3068 Damien Cassou, Daniel Mendler, Dario Gjorgjevski, David Edmondson,
2760 Davor Rotim, Divan Santana, Gerry Agbobada, Gianluca Recchia, Gustavo 3069 Davor Rotim, Divan Santana, Emanuele Michele Alberto Monterosso,
2761 Barros, Hörmetjan Yiltiz, Ilja Kocken, Iris Garcia, Jeremy Friesen, 3070 Farasha Euker, Gerry Agbobada, Gianluca Recchia, Gustavo Barros,
2762 John Haman, Joshua O'Connor, Kevin Fleming, Kostadin Ninev, Len Trigg, 3071 Hörmetjan Yiltiz, Ilja Kocken, Iris Garcia, Jeremy Friesen, John
2763 Manuel Uberti, Mark Burton, Markus Beppler, Michael Goldenberg, Morgan 3072 Haman, Joshua O'Connor, Kevin Fleming, Kévin Le Gouguec, Kostadin
2764 Smith, Murilo Pereira, Nicolas De Jaeghere, Paul Poloskov, Pete 3073 Ninev, Len Trigg, Manuel Uberti, Mark Burton, Markus Beppler, Mauro
2765 Kazmier, Peter Wu, Philip K., Pierre Téchoueyres, Roman Rudakov, Ryan 3074 Aranda, Michael Goldenberg, Morgan Smith, Murilo Pereira, Nicky van
2766 Phillips, Sam Kleinman, Shreyas Ragavan, Simon Pugnet, Tassilo Horn, 3075 Foreest, Nicolas De Jaeghere, Paul Poloskov, Pete Kazmier, Peter Wu,
2767 Thibaut Verron, Trey Merkley, Togan Muftuoglu, Toon Claes, Uri Sharf, 3076 Philip K., Pierre Téchoueyres, Roman Rudakov, Ryan Phillips, Sam
2768 Utkarsh Singh, Vincent Foley. As well as users: Ben, CsBigDataHub1, 3077 Kleinman, Shreyas Ragavan, Simon Pugnet, Tassilo Horn, Thibaut Verron,
2769 Emacs Contrib, Eugene, Fourchaux, Fredrik, Moesasji, Nick, TheBlob42, 3078 Trey Merkley, Togan Muftuoglu, Toon Claes, Uri Sharf, Utkarsh Singh,
2770 bepolymathe, doolio, fleimgruber, iSeeU, jixiuf, okamsn. 3079 Vincent Foley. As well as users: Ben, CsBigDataHub1, Emacs Contrib,
3080 Eugene, Fourchaux, Fredrik, Moesasji, Nick, TheBlob42, Trey,
3081 bepolymathe, doolio, fleimgruber, iSeeU, jixiuf, okamsn, pRot0ta1p.
2771 3082
2772+ Packaging :: Basil L.{{{space()}}} Contovounesios, Eli Zaretskii, Glenn 3083+ Packaging :: Basil L.{{{space()}}} Contovounesios, Eli Zaretskii, Glenn
2773 Morris, Mauro Aranda, Richard Stallman, Stefan Kangas (core Emacs), 3084 Morris, Mauro Aranda, Richard Stallman, Stefan Kangas (core Emacs),
@@ -2819,6 +3130,7 @@ And here are the canonical sources of this project's documentation:
2819#+texinfo: @include doclicense.texi 3130#+texinfo: @include doclicense.texi
2820 3131
2821#+begin_export html 3132#+begin_export html
3133<pre>
2822 3134
2823 GNU Free Documentation License 3135 GNU Free Documentation License
2824 Version 1.3, 3 November 2008 3136 Version 1.3, 3 November 2008
@@ -3270,6 +3582,7 @@ If your document contains nontrivial examples of program code, we
3270recommend releasing these examples in parallel under your choice of 3582recommend releasing these examples in parallel under your choice of
3271free software license, such as the GNU General Public License, 3583free software license, such as the GNU General Public License,
3272to permit their use in free software. 3584to permit their use in free software.
3585</pre>
3273#+end_export 3586#+end_export
3274 3587
3275#+html: <!-- 3588#+html: <!--