Implement "user" palette extension (common or per-theme)

This commit is contained in:
Protesilaos Stavrou 2024-06-24 23:11:37 +03:00
parent 4c73580111
commit 573db128a0
No known key found for this signature in database
GPG key ID: 99BD6459CD5CA3EA
11 changed files with 401 additions and 135 deletions

View file

@ -116,6 +116,7 @@ Customization options
* Heading styles:: Choose among several styles, also per heading level
* UI typeface:: Toggle the use of variable-pitch across the User Interface
* Palette overrides:: Refashion color values and/or semantic color mappings
* Option to extend the palette for use with overrides::
Use colors from the Modus themes palette
@ -777,6 +778,7 @@ active, it must be reloaded for changes to take effect.
* Heading styles:: Choose among several styles, also per heading level
* UI typeface:: Toggle the use of variable-pitch across the User Interface
* Palette overrides:: Refashion color values and/or semantic color mappings
* Option to extend the palette for use with overrides::

File: modus-themes.info, Node: Custom reload theme, Next: Disable other themes, Up: Customization options
@ -1228,7 +1230,7 @@ items.
for Org and others.

File: modus-themes.info, Node: Palette overrides, Prev: UI typeface, Up: Customization options
File: modus-themes.info, Node: Palette overrides, Next: Option to extend the palette for use with overrides, Prev: UI typeface, Up: Customization options
4.12 Option for palette overrides
=================================
@ -1345,6 +1347,65 @@ their name, such as fg-removed which complements bg-removed.
watch:
<https://protesilaos.com/codelog/2022-12-17-modus-themes-v4-demo/>.

File: modus-themes.info, Node: Option to extend the palette for use with overrides, Prev: Palette overrides, Up: Customization options
4.13 Option to extend the palette for use with overrides
========================================================
It is possible to extend the built-in palette of each theme. For
example, the user may want to define their own cherry color with a
value of #a0134f and then apply it as an override (*note Option for
palette overrides: Palette overrides.). This can be done in the form of
a common set of definitions or on a per-theme basis.
The common values are stored in the user option
modus-themes-common-palette-user. As for per-theme variables, we have
the following user options:
modus-operandi-palette-user
modus-operandi-tinted-palette-user
modus-operandi-deuteranopia-palette-user
modus-operandi-tritanopia-palette-user
modus-vivendi-palette-user
modus-vivendi-tinted-palette-user
modus-vivendi-deuteranopia-palette-user
modus-vivendi-tritanopia-palette-user
Examples demonstrating how to use the aforementioned:
;;; Common customizations
;; Define two new colors in the common "user" palette of all the Modus themes.
(setq modus-themes-common-palette-user
'((cherry "#a0134f")
(plum "#6f459a")))
;; Use them in the overrides.
(setq modus-themes-common-palette-overrides
'((cursor cherry)
(string plum)))
;;; Per-theme customizations
;; Define two new colors in the "user" palette of `modus-operandi'.
;; Other themes will not use these.
(setq modus-operandi-palette-user
'((cherry "#a0134f")
(plum "#6f459a")))
;; Use them in the overrides.
(setq modus-operandi-palette-overrides
'((cursor cherry)
(string plum)))

File: modus-themes.info, Node: Preview theme colors, Next: Use colors from the Modus themes palette, Prev: Customization options, Up: Top
@ -6178,13 +6239,23 @@ B.2 Variable index
* modus-operandi-deuteranopia-palette-overrides: Palette overrides.
(line 30)
* modus-operandi-deuteranopia-palette-user: Option to extend the palette for use with overrides.
(line 20)
* modus-operandi-palette-overrides: Palette overrides. (line 28)
* modus-operandi-palette-user: Option to extend the palette for use with overrides.
(line 16)
* modus-operandi-tinted-palette-overrides: Palette overrides. (line 32)
* modus-operandi-tinted-palette-user: Option to extend the palette for use with overrides.
(line 18)
* modus-operandi-tritanopia-palette-overrides: Palette overrides.
(line 34)
* modus-operandi-tritanopia-palette-user: Option to extend the palette for use with overrides.
(line 22)
* modus-themes-after-load-theme-hook: Enable and load. (line 85)
* modus-themes-bold-constructs: Bold constructs. (line 6)
* modus-themes-common-palette-overrides: Palette overrides. (line 22)
* modus-themes-common-palette-user: Option to extend the palette for use with overrides.
(line 12)
* modus-themes-completions: Completion UIs. (line 6)
* modus-themes-custom-auto-reload: Custom reload theme. (line 6)
* modus-themes-disable-other-themes: Disable other themes. (line 6)
@ -6207,10 +6278,18 @@ B.2 Variable index
* modus-themes-variable-pitch-ui: UI typeface. (line 6)
* modus-vivendi-deuteranopia-palette-overrides: Palette overrides.
(line 38)
* modus-vivendi-deuteranopia-palette-user: Option to extend the palette for use with overrides.
(line 28)
* modus-vivendi-palette-overrides: Palette overrides. (line 36)
* modus-vivendi-palette-user: Option to extend the palette for use with overrides.
(line 24)
* modus-vivendi-tinted-palette-overrides: Palette overrides. (line 40)
* modus-vivendi-tinted-palette-user: Option to extend the palette for use with overrides.
(line 26)
* modus-vivendi-tritanopia-palette-overrides: Palette overrides.
(line 42)
* modus-vivendi-tritanopia-palette-user: Option to extend the palette for use with overrides.
(line 30)

File: modus-themes.info, Node: Concept index, Prev: Variable index, Up: Indices
@ -6283,128 +6362,129 @@ B.3 Concept index

Tag Table:
Node: Top872
Node: Overview8413
Node: How do the themes look like11185
Node: Learn about the latest changes11544
Node: Installation11932
Node: Install manually from source12862
Node: Install from the archives13687
Node: Install on GNU/Linux14286
Node: Debian 11 Bullseye14779
Node: GNU Guix15189
Node: Dealing with byte compilation errors15472
Node: Enable and load16630
Node: The require-theme for built-in Emacs themes20574
Node: Sample configuration with and without use-package21694
Node: Differences between loading and enabling24542
Node: Customization options26674
Node: Custom reload theme30458
Node: Disable other themes31378
Node: Bold constructs32620
Node: Italic constructs33492
Node: Option for which themes to toggle34320
Node: Mixed fonts35095
Node: Command prompts36149
Node: Completion UIs37992
Node: Org mode blocks40843
Node: Heading styles41486
Node: UI typeface45916
Node: Palette overrides46889
Node: Preview theme colors51253
Node: Use colors from the Modus themes palette53066
Node: Get a single color from the palette with modus-themes-get-color-value53930
Node: Use theme colors in code with modus-themes-with-colors56292
Node: Advanced customization58548
Node: DIY Palette override presets60207
Node: DIY Stylistic variants using palette overrides63062
Node: DIY Make the mode line borderless65116
Node: DIY Make the active mode line colorful66491
Node: DIY Make the tab bar more or less colorful68709
Node: DIY Make the fringe invisible or another color70646
Node: DIY Make links use subtle or no underlines71847
Node: DIY Make prompts more or less colorful72965
Node: DIY Make completion matches more or less colorful74288
Node: DIY Make comments yellow and strings green77847
Node: DIY Make code syntax use the old alt-syntax style79556
Node: DIY Make use of alternative styles for code syntax82679
Node: DIY Make matching parenthesis more or less intense86141
Node: DIY Make box buttons more or less gray87513
Node: DIY Make TODO and DONE more or less intense88526
Node: DIY Make headings more or less colorful90027
Node: DIY Make Org block colors more or less colorful92144
Node: DIY Make Org agenda more or less colorful96518
Node: DIY Make inline code in prose use alternative styles99693
Node: DIY Make mail citations and headers more or less colorful101935
Node: DIY Make the region preserve text colors plus other styles104335
Node: DIY Make mouse highlights more or less colorful105891
Node: DIY Make language underlines less colorful106904
Node: DIY Make line numbers use alternative styles108056
Node: DIY Make diffs use only a foreground109699
Node: DIY Make deuteranopia diffs red and blue instead of yellow and blue112590
Node: DIY More accurate colors in terminal emulators115070
Node: DIY Range of color with terminal emulators116382
Node: DIY Per-theme customization settings119175
Node: DIY Do not extend the region background120608
Node: DIY Add padding to the mode line121412
Node: DIY Remap face with local value124345
Node: DIY Font configurations for Org and others126893
Ref: DIY Font configurations for Org and others-Footnote-1129876
Node: DIY Configure bold and italic faces130063
Node: DIY Custom Org todo keyword and priority faces134685
Node: DIY Custom Org emphasis faces138428
Node: DIY Use colored Org source blocks per language143309
Node: DIY Measure color contrast147949
Node: DIY Load theme depending on time of day150669
Node: DIY Backdrop for pdf-tools151699
Node: DIY Toggle themes without reloading them154868
Node: DIY Use more spacious margins or padding in Emacs frames156177
Node: DIY Custom hl-todo colors160434
Node: DIY Add support for solaire-mode162251
Node: DIY Use a hook at the post-load-theme phase165377
Node: DIY A theme-agnostic hook for theme loading167501
Node: Face coverage170132
Node: Supported packages170584
Node: Indirectly covered packages176315
Node: Notes on individual packages177684
Node: Note on calendarel weekday and weekend colors178784
Node: Note on git-gutter in Doom Emacs179932
Node: Note on php-mode multiline comments182432
Node: Note on underlines in compilation buffers183192
Node: Note on inline Latex in Org buffers184064
Node: Note on dimmerel184674
Node: Note on display-fill-column-indicator-mode186159
Node: Note on highlight-parenthesesel187612
Node: Note on mmm-modeel background colors193695
Node: Note for prism196049
Node: Note on company-mode overlay pop-up199271
Ref: Note on company-mode overlay pop-up-Footnote-1200001
Ref: Note on company-mode overlay pop-up-Footnote-2200068
Node: Note on ERC escaped color sequences200123
Ref: Note on ERC escaped color sequences-Footnote-1201551
Node: Note on powerline or spaceline201661
Node: Note on SHR colors202075
Node: Note on SHR fonts202499
Node: Note on Ement colors and fonts203186
Node: Note on pdf-tools link hints204696
Node: Note on the Notmuch logo207156
Node: Note on goto-address-mode faces207694
Node: Frequently Asked Questions208812
Node: Is the contrast ratio about adjacent colors?209445
Node: What does it mean to avoid exaggerations?210954
Node: Why are colors mostly variants of blue magenta cyan?212806
Node: What is the best setup for legibility?217140
Node: Are these color schemes?219787
Node: Port the Modus themes to other platforms?223471
Node: Contributing226317
Node: Sources of the themes226716
Node: Issues you can help with227612
Node: Patches require copyright assignment to the FSF229005
Node: Acknowledgements231227
Node: GNU Free Documentation License235465
Node: Indices260829
Node: Function index261008
Node: Variable index262306
Node: Concept index265000
Node: Overview8469
Node: How do the themes look like11241
Node: Learn about the latest changes11600
Node: Installation11988
Node: Install manually from source12918
Node: Install from the archives13743
Node: Install on GNU/Linux14342
Node: Debian 11 Bullseye14835
Node: GNU Guix15245
Node: Dealing with byte compilation errors15528
Node: Enable and load16686
Node: The require-theme for built-in Emacs themes20630
Node: Sample configuration with and without use-package21750
Node: Differences between loading and enabling24598
Node: Customization options26730
Node: Custom reload theme30570
Node: Disable other themes31490
Node: Bold constructs32732
Node: Italic constructs33604
Node: Option for which themes to toggle34432
Node: Mixed fonts35207
Node: Command prompts36261
Node: Completion UIs38104
Node: Org mode blocks40955
Node: Heading styles41598
Node: UI typeface46028
Node: Palette overrides47001
Node: Option to extend the palette for use with overrides51425
Node: Preview theme colors53389
Node: Use colors from the Modus themes palette55202
Node: Get a single color from the palette with modus-themes-get-color-value56066
Node: Use theme colors in code with modus-themes-with-colors58428
Node: Advanced customization60684
Node: DIY Palette override presets62343
Node: DIY Stylistic variants using palette overrides65198
Node: DIY Make the mode line borderless67252
Node: DIY Make the active mode line colorful68627
Node: DIY Make the tab bar more or less colorful70845
Node: DIY Make the fringe invisible or another color72782
Node: DIY Make links use subtle or no underlines73983
Node: DIY Make prompts more or less colorful75101
Node: DIY Make completion matches more or less colorful76424
Node: DIY Make comments yellow and strings green79983
Node: DIY Make code syntax use the old alt-syntax style81692
Node: DIY Make use of alternative styles for code syntax84815
Node: DIY Make matching parenthesis more or less intense88277
Node: DIY Make box buttons more or less gray89649
Node: DIY Make TODO and DONE more or less intense90662
Node: DIY Make headings more or less colorful92163
Node: DIY Make Org block colors more or less colorful94280
Node: DIY Make Org agenda more or less colorful98654
Node: DIY Make inline code in prose use alternative styles101829
Node: DIY Make mail citations and headers more or less colorful104071
Node: DIY Make the region preserve text colors plus other styles106471
Node: DIY Make mouse highlights more or less colorful108027
Node: DIY Make language underlines less colorful109040
Node: DIY Make line numbers use alternative styles110192
Node: DIY Make diffs use only a foreground111835
Node: DIY Make deuteranopia diffs red and blue instead of yellow and blue114726
Node: DIY More accurate colors in terminal emulators117206
Node: DIY Range of color with terminal emulators118518
Node: DIY Per-theme customization settings121311
Node: DIY Do not extend the region background122744
Node: DIY Add padding to the mode line123548
Node: DIY Remap face with local value126481
Node: DIY Font configurations for Org and others129029
Ref: DIY Font configurations for Org and others-Footnote-1132012
Node: DIY Configure bold and italic faces132199
Node: DIY Custom Org todo keyword and priority faces136821
Node: DIY Custom Org emphasis faces140564
Node: DIY Use colored Org source blocks per language145445
Node: DIY Measure color contrast150085
Node: DIY Load theme depending on time of day152805
Node: DIY Backdrop for pdf-tools153835
Node: DIY Toggle themes without reloading them157004
Node: DIY Use more spacious margins or padding in Emacs frames158313
Node: DIY Custom hl-todo colors162570
Node: DIY Add support for solaire-mode164387
Node: DIY Use a hook at the post-load-theme phase167513
Node: DIY A theme-agnostic hook for theme loading169637
Node: Face coverage172268
Node: Supported packages172720
Node: Indirectly covered packages178451
Node: Notes on individual packages179820
Node: Note on calendarel weekday and weekend colors180920
Node: Note on git-gutter in Doom Emacs182068
Node: Note on php-mode multiline comments184568
Node: Note on underlines in compilation buffers185328
Node: Note on inline Latex in Org buffers186200
Node: Note on dimmerel186810
Node: Note on display-fill-column-indicator-mode188295
Node: Note on highlight-parenthesesel189748
Node: Note on mmm-modeel background colors195831
Node: Note for prism198185
Node: Note on company-mode overlay pop-up201407
Ref: Note on company-mode overlay pop-up-Footnote-1202137
Ref: Note on company-mode overlay pop-up-Footnote-2202204
Node: Note on ERC escaped color sequences202259
Ref: Note on ERC escaped color sequences-Footnote-1203687
Node: Note on powerline or spaceline203797
Node: Note on SHR colors204211
Node: Note on SHR fonts204635
Node: Note on Ement colors and fonts205322
Node: Note on pdf-tools link hints206832
Node: Note on the Notmuch logo209292
Node: Note on goto-address-mode faces209830
Node: Frequently Asked Questions210948
Node: Is the contrast ratio about adjacent colors?211581
Node: What does it mean to avoid exaggerations?213090
Node: Why are colors mostly variants of blue magenta cyan?214942
Node: What is the best setup for legibility?219276
Node: Are these color schemes?221923
Node: Port the Modus themes to other platforms?225607
Node: Contributing228453
Node: Sources of the themes228852
Node: Issues you can help with229748
Node: Patches require copyright assignment to the FSF231141
Node: Acknowledgements233363
Node: GNU Free Documentation License237601
Node: Indices262965
Node: Function index263144
Node: Variable index264442
Node: Concept index268645

End Tag Table

View file

@ -1190,6 +1190,74 @@ Named colors can be previewed, such as with the command
For a video tutorial that users of all skill levels can approach,
watch: https://protesilaos.com/codelog/2022-12-17-modus-themes-v4-demo/.
** Option to extend the palette for use with overrides
:PROPERTIES:
:CUSTOM_ID: h:287fb971-a866-4d88-9993-56e902dd63c4
:END:
It is possible to extend the built-in palette of each theme. For
example, the user may want to define their own =cherry= color with
a value of =#a0134f= and then apply it as an override ([[#h:34c7a691-19bb-4037-8d2f-67a07edab150][Option for palette overrides]]).
This can be done in the form of a common set of definitions or on a
per-theme basis.
#+vindex: modus-themes-common-palette-user
The common values are stored in the user option ~modus-themes-common-palette-user~.
As for per-theme variables, we have the following user options:
#+vindex: modus-operandi-palette-user
- ~modus-operandi-palette-user~
#+vindex: modus-operandi-tinted-palette-user
- ~modus-operandi-tinted-palette-user~
#+vindex: modus-operandi-deuteranopia-palette-user
- ~modus-operandi-deuteranopia-palette-user~
#+vindex: modus-operandi-tritanopia-palette-user
- ~modus-operandi-tritanopia-palette-user~
#+vindex: modus-vivendi-palette-user
- ~modus-vivendi-palette-user~
#+vindex: modus-vivendi-tinted-palette-user
- ~modus-vivendi-tinted-palette-user~
#+vindex: modus-vivendi-deuteranopia-palette-user
- ~modus-vivendi-deuteranopia-palette-user~
#+vindex: modus-vivendi-tritanopia-palette-user
- ~modus-vivendi-tritanopia-palette-user~
Examples demonstrating how to use the aforementioned:
#+begin_src emacs-lisp
;;; Common customizations
;; Define two new colors in the common "user" palette of all the Modus themes.
(setq modus-themes-common-palette-user
'((cherry "#a0134f")
(plum "#6f459a")))
;; Use them in the overrides.
(setq modus-themes-common-palette-overrides
'((cursor cherry)
(string plum)))
;;; Per-theme customizations
;; Define two new colors in the "user" palette of `modus-operandi'.
;; Other themes will not use these.
(setq modus-operandi-palette-user
'((cherry "#a0134f")
(plum "#6f459a")))
;; Use them in the overrides.
(setq modus-operandi-palette-overrides
'((cursor cherry)
(string plum)))
#+end_src
* Preview theme colors
:properties:
:custom_id: h:f4d4b71b-2ca5-4c3d-b0b4-9bfd7aa7fb4d

View file

@ -491,6 +491,19 @@ Semantic color mappings have the form (MAPPING-NAME COLOR-NAME)
with both as symbols. The latter is a named color that already
exists in the palette and is associated with a HEX-VALUE.")
(defcustom modus-operandi-deuteranopia-palette-user nil
"Like the `modus-operandi-deuteranopia-palette' for user-defined entries.
This is meant to extend the palette with custom named colors and/or
semantic palette mappings. Those may then be used in combination with
palette overrides (also see `modus-themes-common-palette-overrides' and
`modus-operandi-deuteranopia-palette-overrides')."
:group 'modus-themes
:package-version '(modus-themes . "4.5.0")
:type '(repeat (list symbol (choice symbol string)))
:set #'modus-themes--set-option
:initialize #'custom-initialize-default
:link '(info-link "(modus-themes) Option to extend the palette for use with overrides"))
(defcustom modus-operandi-deuteranopia-palette-overrides nil
"Overrides for `modus-operandi-deuteranopia-palette'.

View file

@ -489,6 +489,19 @@ Semantic color mappings have the form (MAPPING-NAME COLOR-NAME)
with both as symbols. The latter is a named color that already
exists in the palette and is associated with a HEX-VALUE.")
(defcustom modus-operandi-palette-user nil
"Like the `modus-operandi-palette' for user-defined entries.
This is meant to extend the palette with custom named colors and/or
semantic palette mappings. Those may then be used in combination with
palette overrides (also see `modus-themes-common-palette-overrides' and
`modus-operandi-palette-overrides')."
:group 'modus-themes
:package-version '(modus-themes . "4.5.0")
:type '(repeat (list symbol (choice symbol string)))
:set #'modus-themes--set-option
:initialize #'custom-initialize-default
:link '(info-link "(modus-themes) Option to extend the palette for use with overrides"))
(defcustom modus-operandi-palette-overrides nil
"Overrides for `modus-operandi-palette'.

View file

@ -489,6 +489,19 @@ Semantic color mappings have the form (MAPPING-NAME COLOR-NAME)
with both as symbols. The latter is a named color that already
exists in the palette and is associated with a HEX-VALUE.")
(defcustom modus-operandi-tinted-palette-user nil
"Like the `modus-operandi-tinted-palette' for user-defined entries.
This is meant to extend the palette with custom named colors and/or
semantic palette mappings. Those may then be used in combination with
palette overrides (also see `modus-themes-common-palette-overrides' and
`modus-operandi-tinted-palette-overrides')."
:group 'modus-themes
:package-version '(modus-themes . "4.5.0")
:type '(repeat (list symbol (choice symbol string)))
:set #'modus-themes--set-option
:initialize #'custom-initialize-default
:link '(info-link "(modus-themes) Option to extend the palette for use with overrides"))
(defcustom modus-operandi-tinted-palette-overrides nil
"Overrides for `modus-operandi-tinted-palette'.

View file

@ -491,6 +491,19 @@ Semantic color mappings have the form (MAPPING-NAME COLOR-NAME)
with both as symbols. The latter is a named color that already
exists in the palette and is associated with a HEX-VALUE.")
(defcustom modus-operandi-tritanopia-palette-user nil
"Like the `modus-operandi-tritanopia-palette' for user-defined entries.
This is meant to extend the palette with custom named colors and/or
semantic palette mappings. Those may then be used in combination with
palette overrides (also see `modus-themes-common-palette-overrides' and
`modus-operandi-tritanopia-palette-overrides')."
:group 'modus-themes
:package-version '(modus-themes . "4.5.0")
:type '(repeat (list symbol (choice symbol string)))
:set #'modus-themes--set-option
:initialize #'custom-initialize-default
:link '(info-link "(modus-themes) Option to extend the palette for use with overrides"))
(defcustom modus-operandi-tritanopia-palette-overrides nil
"Overrides for `modus-operandi-tritanopia-palette'.

View file

@ -641,6 +641,20 @@ In user configuration files the form may look like this:
:initialize #'custom-initialize-default
:link '(info-link "(modus-themes) Command prompts"))
(defcustom modus-themes-common-palette-user nil
"Common user-defined colors to extend all the themes' palettes.
This is meant to extend the palette of the active Modus theme with
custom named colors and/or semantic palette mappings. Those may then be
used in combination with palette overrides (see
`modus-themes-common-palette-overrides')."
:group 'modus-themes
:package-version '(modus-themes . "4.5.0")
:type '(repeat (list symbol (choice symbol string)))
:set #'modus-themes--set-option
:initialize #'custom-initialize-default
:link '(info-link "(modus-themes) Extend the palette for use with overrides"))
(defcustom modus-themes-common-palette-overrides nil
"Set palette overrides for all the Modus themes.
@ -1068,22 +1082,22 @@ C1 and C2 are color values written in hexadecimal RGB."
(car (or (modus-themes--list-enabled-themes)
(modus-themes--list-known-themes))))
(defun modus-themes--palette-symbol (theme &optional overrides)
"Return THEME palette as a symbol.
With optional OVERRIDES, return THEME palette overrides as a
symbol."
(when-let ((suffix (cond
((and theme overrides)
"palette-overrides")
(theme
"palette"))))
(intern (format "%s-%s" theme suffix))))
(defun modus-themes--palette-symbol (theme &optional suffix)
"Return THEME palette as a symbol of the form THEME-palette.
With optional SUFFIX, return THEME-palette-SUFFIX as a symbol."
(when theme
(intern
(if suffix
(format "%s-palette-%s" theme suffix)
(format "%s-palette" theme)))))
(defun modus-themes--palette-value (theme &optional overrides)
"Return palette value of THEME with optional OVERRIDES."
(let ((base-value (symbol-value (modus-themes--palette-symbol theme))))
(let* ((core-palette (symbol-value (modus-themes--palette-symbol theme)))
(user-palette (symbol-value (modus-themes--palette-symbol theme "user")))
(base-value (append modus-themes-common-palette-user user-palette core-palette)))
(if overrides
(append (symbol-value (modus-themes--palette-symbol theme :overrides))
(append (symbol-value (modus-themes--palette-symbol theme "overrides"))
modus-themes-common-palette-overrides
base-value)
base-value)))

View file

@ -491,6 +491,19 @@ Semantic color mappings have the form (MAPPING-NAME COLOR-NAME)
with both as symbols. The latter is a named color that already
exists in the palette and is associated with a HEX-VALUE.")
(defcustom modus-vivendi-deuteranopia-palette-user nil
"Like the `modus-vivendi-deuteranopia-palette' for user-defined entries.
This is meant to extend the palette with custom named colors and/or
semantic palette mappings. Those may then be used in combination with
palette overrides (also see `modus-themes-common-palette-overrides' and
`modus-vivendi-deuteranopia-palette-overrides')."
:group 'modus-themes
:package-version '(modus-themes . "4.5.0")
:type '(repeat (list symbol (choice symbol string)))
:set #'modus-themes--set-option
:initialize #'custom-initialize-default
:link '(info-link "(modus-themes) Option to extend the palette for use with overrides"))
(defcustom modus-vivendi-deuteranopia-palette-overrides nil
"Overrides for `modus-vivendi-deuteranopia-palette'.

View file

@ -489,6 +489,19 @@ Semantic color mappings have the form (MAPPING-NAME COLOR-NAME)
with both as symbols. The latter is a named color that already
exists in the palette and is associated with a HEX-VALUE.")
(defcustom modus-vivendi-palette-user nil
"Like the `modus-vivendi--palette' for user-defined entries.
This is meant to extend the palette with custom named colors and/or
semantic palette mappings. Those may then be used in combination with
palette overrides (also see `modus-themes-common-palette-overrides' and
`modus-vivendi--palette-overrides')."
:group 'modus-themes
:package-version '(modus-themes . "4.5.0")
:type '(repeat (list symbol (choice symbol string)))
:set #'modus-themes--set-option
:initialize #'custom-initialize-default
:link '(info-link "(modus-themes) Option to extend the palette for use with overrides"))
(defcustom modus-vivendi-palette-overrides nil
"Overrides for `modus-vivendi-palette'.

View file

@ -489,6 +489,19 @@ Semantic color mappings have the form (MAPPING-NAME COLOR-NAME)
with both as symbols. The latter is a named color that already
exists in the palette and is associated with a HEX-VALUE.")
(defcustom modus-vivendi-tinted-palette-user nil
"Like the `modus-vivendi-tinted-palette' for user-defined entries.
This is meant to extend the palette with custom named colors and/or
semantic palette mappings. Those may then be used in combination with
palette overrides (also see `modus-themes-common-palette-overrides' and
`modus-vivendi-tinted-palette-overrides')."
:group 'modus-themes
:package-version '(modus-themes . "4.5.0")
:type '(repeat (list symbol (choice symbol string)))
:set #'modus-themes--set-option
:initialize #'custom-initialize-default
:link '(info-link "(modus-themes) Option to extend the palette for use with overrides"))
(defcustom modus-vivendi-tinted-palette-overrides nil
"Overrides for `modus-vivendi-tinted-palette'.

View file

@ -491,6 +491,19 @@ Semantic color mappings have the form (MAPPING-NAME COLOR-NAME)
with both as symbols. The latter is a named color that already
exists in the palette and is associated with a HEX-VALUE.")
(defcustom modus-vivendi-tritanopia-palette-user nil
"Like the `modus-vivendi-tritanopia-palette' for user-defined entries.
This is meant to extend the palette with custom named colors and/or
semantic palette mappings. Those may then be used in combination with
palette overrides (also see `modus-themes-common-palette-overrides' and
`modus-vivendi-tritanopia-palette-overrides')."
:group 'modus-themes
:package-version '(modus-themes . "4.5.0")
:type '(repeat (list symbol (choice symbol string)))
:set #'modus-themes--set-option
:initialize #'custom-initialize-default
:link '(info-link "(modus-themes) Option to extend the palette for use with overrides"))
(defcustom modus-vivendi-tritanopia-palette-overrides nil
"Overrides for `modus-vivendi-tritanopia-palette'.