[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/modus-operandi-theme 9ff949f 17/99: Initial implementat
From: |
Stefan Monnier |
Subject: |
[elpa] externals/modus-operandi-theme 9ff949f 17/99: Initial implementation of "faint syntax" option |
Date: |
Fri, 31 Jul 2020 09:25:18 -0400 (EDT) |
branch: externals/modus-operandi-theme
commit 9ff949f6d485e8983ada22ed587b338e9c33228f
Author: Protesilaos Stavrou <info@protesilaos.com>
Commit: Protesilaos Stavrou <info@protesilaos.com>
Initial implementation of "faint syntax" option
Users now have the option to reduce the colour saturation in modes where
syntax highlighting takes place.
The complete report is available on my website:
https://protesilaos.com/codelog/2020-07-04-modus-themes-faint-colours/
Note that this is the first iteration of this option. It might still be
improved further.
---
README.org | 22 ++++
modus-operandi-theme.el | 316 +++++++++++++++++++++++++++++++++++-------------
modus-vivendi-theme.el | 316 +++++++++++++++++++++++++++++++++++-------------
3 files changed, 486 insertions(+), 168 deletions(-)
diff --git a/README.org b/README.org
index f3a9bf0..a14c10f 100644
--- a/README.org
+++ b/README.org
@@ -387,6 +387,21 @@ The default is to use colour-coded backgrounds for
line-wise highlights.
which is, nonetheless, more subtle with this option than with its
default equivalent.
+** Option for faint code syntax highlighting
+ :PROPERTIES:
+ :CUSTOM_ID: h:9f05eef0-9d0d-4305-98a1-c4e49f41e1c8
+ :END:
+
++ =modus-operandi-theme-faint-syntax=
++ =modus-vivendi-theme-faint-syntax=
+
+Use less saturated colours in programming modes for highlighting code
+syntax. The intent is to offer an impression of minimalism. The
+default is to use saturated colours.
+
+*This option is new and could still undergo further refinements.* User
+feedback would be much appreciated.
+
** Option for intense standard completions
:PROPERTIES:
:CUSTOM_ID: h:5b0b1e66-8287-4f3f-ba14-011c29320a3f
@@ -1183,6 +1198,13 @@ once. It will allow you to make contributions to Emacs
in general.
If you interested in the principles that govern the development of this
project, read my article
[[https://protesilaos.com/codelog/2020-03-17-design-modus-themes-emacs/][On the
design of the Modus themes]] (2020-03-17).
+Some more articles for those interested in the kind of work that goes
+into this project:
+
++
[[https://protesilaos.com/codelog/2020-06-13-modus-vivendi-palette-review/][Modus
Vivendi theme subtle palette review]] (2020-06-13)
++
[[https://protesilaos.com/codelog/2020-05-10-modus-operandi-palette-review/][Modus
Operandi theme subtle palette review]] (2020-05-10)
++
[[https://protesilaos.com/codelog/2020-07-04-modus-themes-faint-colours/][Modus
themes: new "faint syntax" option]] (2020-07-04)
+
* COPYING
:PROPERTIES:
:CUSTOM_ID: h:66652183-2fe0-46cd-b4bb-4121bad78d57
diff --git a/modus-operandi-theme.el b/modus-operandi-theme.el
index 06edc2e..fefe9ef 100644
--- a/modus-operandi-theme.el
+++ b/modus-operandi-theme.el
@@ -49,6 +49,7 @@
;; modus-operandi-theme-distinct-org-blocks
;; modus-operandi-theme-3d-modeline
;; modus-operandi-theme-subtle-diffs
+;; modus-operandi-theme-faint-syntax
;; modus-operandi-theme-intense-standard-completions
;; modus-operandi-theme-override-colors-alist
;;
@@ -491,8 +492,20 @@ For more on the matter, read the documentation of
"Use prominent backgrounds for Icomplete, Ido, or similar."
:type 'boolean)
+(defcustom modus-operandi-theme-faint-syntax nil
+ "Use less saturated colours for code syntax highlighting."
+ :type 'boolean)
+
;; Helper functions that are meant to ease the implementation of the
;; above customisation options.
+(defun modus-operandi-theme-syntax-foreground (normal faint)
+ "Apply foreground value to code syntax.
+NORMAL is the more saturated colour, which should be the default.
+FAINT is the less saturated colour."
+ (if modus-operandi-theme-faint-syntax
+ (list :foreground faint)
+ (list :foreground normal)))
+
(defun modus-operandi-theme-heading-foreground (subtle rainbow)
"Apply foreground value to headings.
SUBTLE is the default aesthetic. RAINBOW is the saturated one."
@@ -618,6 +631,21 @@ AMOUNT is a customisation option."
("red-alt-other" . "#a0132f") ("green-alt-other" . "#145c33")
("yellow-alt-other" . "#863927") ("blue-alt-other" . "#0000bb")
("magenta-alt-other" . "#5317ac") ("cyan-alt-other" . "#005a5f")
+ ;; styles for desaturated foreground text, intended for use with
+ ;; the `modus-operandi-theme-faint-syntax' option
+ ;;
+ ;; must be combined with: `bg-main', `bg-alt', `bg-dim'
+ ("red-faint" . "#7f1010") ("green-faint" . "#104410")
+ ("yellow-faint" . "#5f4400") ("blue-faint" . "#002f88")
+ ("magenta-faint" . "#752f50") ("cyan-faint" . "#12506f")
+
+ ("red-alt-faint" . "#702f00") ("green-alt-faint" . "#30440f")
+ ("yellow-alt-faint" . "#5d5000") ("blue-alt-faint" . "#003f78")
+ ("magenta-alt-faint" . "#702565") ("cyan-alt-faint" . "#354f6f")
+
+ ("red-alt-other-faint" . "#7f002f") ("green-alt-other-faint" . "#0f443f")
+ ("yellow-alt-other-faint" . "#5e3a20") ("blue-alt-other-faint" .
"#1f2f6f")
+ ("magenta-alt-other-faint" . "#5f3f7f") ("cyan-alt-other-faint" .
"#2e584f")
;; styles for elements that should be very subtle
;;
;; must be combined with: `bg-main', `bg-alt', `bg-dim'
@@ -1722,21 +1750,37 @@ Also bind `class' to ((class color) (min-colors 89))."
;;;; fold-this
`(fold-this-overlay ((,class :inherit modus-theme-special-mild)))
;;;; font-lock
- `(font-lock-builtin-face ((,class :foreground ,magenta-alt :weight
,modus-theme-bold)))
+ `(font-lock-builtin-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint)
+ :weight ,modus-theme-bold)))
`(font-lock-comment-delimiter-face ((,class :foreground ,fg-alt :slant
,modus-theme-slant)))
`(font-lock-comment-face ((,class :foreground ,fg-alt :slant
,modus-theme-slant)))
- `(font-lock-constant-face ((,class :foreground ,blue-alt-other)))
- `(font-lock-doc-face ((,class :foreground ,fg-special-cold :slant
,modus-theme-slant)))
- `(font-lock-function-name-face ((,class :foreground ,magenta)))
- `(font-lock-keyword-face ((,class :foreground ,magenta-alt-other :weight
,modus-theme-bold)))
- `(font-lock-negation-char-face ((,class :foreground ,yellow :weight
,modus-theme-bold)))
- `(font-lock-preprocessor-face ((,class :foreground ,red-alt-other)))
+ `(font-lock-constant-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ blue-alt-other
blue-alt-other-faint))))
+ `(font-lock-doc-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ fg-special-cold cyan-alt-other-faint)
+ :slant ,modus-theme-slant)))
+ `(font-lock-function-name-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta magenta-faint))))
+ `(font-lock-keyword-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ magenta-alt-other
magenta-alt-other-faint)
+ :weight ,modus-theme-bold)))
+ `(font-lock-negation-char-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ yellow yellow-faint)
+ :weight ,modus-theme-bold)))
+ `(font-lock-preprocessor-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ red-alt-other
red-alt-other-faint))))
`(font-lock-regexp-grouping-backslash ((,class :foreground
,fg-escape-char-backslash :weight bold)))
`(font-lock-regexp-grouping-construct ((,class :foreground
,fg-escape-char-construct :weight bold)))
- `(font-lock-string-face ((,class :foreground ,blue-alt)))
- `(font-lock-type-face ((,class :foreground ,magenta-alt)))
- `(font-lock-variable-name-face ((,class :foreground ,cyan)))
- `(font-lock-warning-face ((,class :foreground ,yellow-active :weight
,modus-theme-bold)))
+ `(font-lock-string-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ blue-alt blue-alt-faint))))
+ `(font-lock-type-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint))))
+ `(font-lock-variable-name-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ cyan cyan-faint))))
+ `(font-lock-warning-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ yellow-active yellow-alt-faint)
+ :weight ,modus-theme-bold)))
;;;; forge
`(forge-post-author ((,class :foreground ,fg-main :weight bold)))
`(forge-post-date ((,class :foreground ,fg-special-cold)))
@@ -1778,15 +1822,25 @@ Also bind `class' to ((class color) (min-colors 89))."
`(fountain-template ((,class :foreground ,magenta-alt)))
`(fountain-trans ((,class :foreground ,magenta :weight bold)))
;;;; geiser
- `(geiser-font-lock-autodoc-current-arg ((,class :foreground ,magenta)))
- `(geiser-font-lock-autodoc-identifier ((,class :foreground ,blue)))
- `(geiser-font-lock-doc-button ((,class :foreground ,cyan-alt :underline t)))
+ `(geiser-font-lock-autodoc-current-arg ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta magenta-faint))))
+ `(geiser-font-lock-autodoc-identifier ((,class
,@(modus-operandi-theme-syntax-foreground
+ blue blue-faint))))
+ `(geiser-font-lock-doc-button ((,class
,@(modus-operandi-theme-syntax-foreground
+ cyan-alt cyan-alt-faint)
+ :underline t)))
`(geiser-font-lock-doc-link ((,class :inherit link)))
- `(geiser-font-lock-error-link ((,class :foreground ,red-alt :underline t)))
- `(geiser-font-lock-image-button ((,class :foreground ,green-alt :underline
t)))
+ `(geiser-font-lock-error-link ((,class
,@(modus-operandi-theme-syntax-foreground
+ red-alt red-alt-faint)
+ :underline t)))
+ `(geiser-font-lock-image-button ((,class
,@(modus-operandi-theme-syntax-foreground
+ green-alt green-alt-faint)
+ :underline t)))
`(geiser-font-lock-repl-input ((,class :weight bold)))
- `(geiser-font-lock-repl-output ((,class :foreground ,magenta-alt-other)))
- `(geiser-font-lock-repl-prompt ((,class :foreground ,cyan-alt-other)))
+ `(geiser-font-lock-repl-output ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta-alt-other
magenta-alt-other-faint))))
+ `(geiser-font-lock-repl-prompt ((,class
,@(modus-operandi-theme-syntax-foreground
+ cyan-alt-other
cyan-alt-other-faint))))
`(geiser-font-lock-xref-header ((,class :weight bold)))
`(geiser-font-lock-xref-link ((,class :inherit link)))
;;;; git-commit
@@ -2617,29 +2671,56 @@ Also bind `class' to ((class color) (min-colors 89))."
`(num3-face-even ((,class :background ,bg-alt :weight bold)))
;;;; nxml-mode
`(nxml-attribute-colon ((,class :foreground ,fg-main)))
- `(nxml-attribute-local-name ((,class :foreground ,cyan-alt)))
- `(nxml-attribute-prefix ((,class :foreground ,cyan-alt-other :weight
,modus-theme-bold)))
- `(nxml-attribute-value ((,class :foreground ,blue)))
- `(nxml-cdata-section-CDATA ((,class :foreground ,red-alt :weight
,modus-theme-bold)))
- `(nxml-cdata-section-delimiter ((,class :foreground ,red-alt)))
- `(nxml-char-ref-delimiter ((,class :foreground ,green-alt-other)))
- `(nxml-char-ref-number ((,class :foreground ,green-alt-other :weight
,modus-theme-bold)))
+ `(nxml-attribute-local-name ((,class
,@(modus-operandi-theme-syntax-foreground
+ cyan-alt cyan-alt-faint))))
+ `(nxml-attribute-prefix ((,class ,@(modus-operandi-theme-syntax-foreground
+ cyan-alt-other cyan-alt-other-faint)
+ :weight ,modus-theme-bold)))
+ `(nxml-attribute-value ((,class ,@(modus-operandi-theme-syntax-foreground
+ blue blue-faint))))
+ `(nxml-cdata-section-CDATA ((,class
,@(modus-operandi-theme-syntax-foreground
+ red-alt red-alt-faint)
+ :weight ,modus-theme-bold)))
+ `(nxml-cdata-section-delimiter ((,class
,@(modus-operandi-theme-syntax-foreground
+ red-alt red-alt-faint))))
+ `(nxml-char-ref-delimiter ((,class ,@(modus-operandi-theme-syntax-foreground
+ green-alt-other
green-alt-other-faint))))
+ `(nxml-char-ref-number ((,class ,@(modus-operandi-theme-syntax-foreground
+ green-alt-other green-alt-other-faint)
+ :weight ,modus-theme-bold)))
`(nxml-delimited-data ((,class :foreground ,fg-special-cold :slant
,modus-theme-slant)))
`(nxml-delimiter ((,class :foreground ,fg-dim)))
`(nxml-element-colon ((,class :foreground ,fg-main)))
- `(nxml-element-local-name ((,class :foreground ,magenta)))
- `(nxml-element-prefix ((,class :foreground ,magenta-alt :weight
,modus-theme-bold)))
- `(nxml-entity-ref-delimiter ((,class :foreground ,green-alt-other)))
- `(nxml-entity-ref-name ((,class :foreground ,green-alt-other :weight
,modus-theme-bold)))
+ `(nxml-element-local-name ((,class ,@(modus-operandi-theme-syntax-foreground
+ magenta magenta-faint))))
+ `(nxml-element-prefix ((,class ,@(modus-operandi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint)
+ :weight ,modus-theme-bold)))
+ `(nxml-entity-ref-delimiter ((,class
,@(modus-operandi-theme-syntax-foreground
+ green-alt-other
green-alt-other-faint))))
+ `(nxml-entity-ref-name ((,class ,@(modus-operandi-theme-syntax-foreground
+ green-alt-other green-alt-other-faint)
+ :weight ,modus-theme-bold)))
`(nxml-glyph ((,class :inherit modus-theme-intense-neutral)))
- `(nxml-hash ((,class :foreground ,blue-alt :weight ,modus-theme-bold)))
+ `(nxml-hash ((,class ,@(modus-operandi-theme-syntax-foreground
+ blue-alt blue-alt-faint)
+ :weight ,modus-theme-bold)))
`(nxml-heading ((,class :weight bold)))
- `(nxml-name ((,class :foreground ,magenta-alt :weight ,modus-theme-bold)))
+ `(nxml-name ((,class ,@(modus-operandi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint)
+ :weight ,modus-theme-bold)))
`(nxml-namespace-attribute-colon ((,class :foreground ,fg-main)))
- `(nxml-namespace-attribute-prefix ((,class :foreground ,cyan)))
- `(nxml-processing-instruction-target ((,class :foreground
,magenta-alt-other :weight ,modus-theme-bold)))
- `(nxml-prolog-keyword ((,class :foreground ,magenta-alt-other :weight
,modus-theme-bold)))
- `(nxml-ref ((,class :foreground ,green-alt-other :weight
,modus-theme-bold)))
+ `(nxml-namespace-attribute-prefix ((,class
,@(modus-operandi-theme-syntax-foreground
+ cyan cyan-faint))))
+ `(nxml-processing-instruction-target ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta-alt-other
magenta-alt-other-faint)
+ :weight ,modus-theme-bold)))
+ `(nxml-prolog-keyword ((,class ,@(modus-operandi-theme-syntax-foreground
+ magenta-alt-other magenta-alt-other-faint)
+ :weight ,modus-theme-bold)))
+ `(nxml-ref ((,class ,@(modus-operandi-theme-syntax-foreground
+ green-alt-other green-alt-other-faint)
+ :weight ,modus-theme-bold)))
;;;; orderless
`(orderless-match-face-0 ((,class ,@(modus-operandi-theme-completions
blue-alt blue-refine-bg blue-refine-fg)
@@ -3271,23 +3352,37 @@ Also bind `class' to ((class color) (min-colors 89))."
`(caml-types-occ-face ((,class :inherit modus-theme-subtle-green)))
`(caml-types-scope-face ((,class :inherit modus-theme-subtle-blue)))
`(caml-types-typed-face ((,class :inherit modus-theme-subtle-magenta)))
- `(tuareg-font-double-semicolon-face ((,class :foreground ,red-alt)))
- `(tuareg-font-lock-attribute-face ((,class :foreground ,magenta)))
+ `(tuareg-font-double-semicolon-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ red-alt red-alt-faint))))
+ `(tuareg-font-lock-attribute-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta magenta-faint))))
`(tuareg-font-lock-constructor-face ((,class :foreground ,fg-main)))
`(tuareg-font-lock-error-face ((,class :inherit modus-theme-intense-red
:weight bold)))
`(tuareg-font-lock-extension-node-face ((,class :background ,bg-alt
:foreground ,magenta)))
`(tuareg-font-lock-governing-face ((,class :foreground ,fg-main :weight
bold)))
- `(tuareg-font-lock-infix-extension-node-face ((,class :foreground
,magenta)))
+ `(tuareg-font-lock-infix-extension-node-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta
magenta-faint))))
`(tuareg-font-lock-interactive-directive-face ((,class :foreground
,fg-special-cold)))
- `(tuareg-font-lock-interactive-error-face ((,class :foreground ,red :weight
bold)))
- `(tuareg-font-lock-interactive-output-face ((,class :foreground
,blue-alt-other)))
- `(tuareg-font-lock-label-face ((,class :foreground ,cyan-alt-other)))
+ `(tuareg-font-lock-interactive-error-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ red red-faint)
+ :weight bold)))
+ `(tuareg-font-lock-interactive-output-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ blue-alt-other
blue-alt-other-faint))))
+ `(tuareg-font-lock-label-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ cyan-alt-other
cyan-alt-other-faint))))
`(tuareg-font-lock-line-number-face ((,class :foreground ,fg-special-warm)))
- `(tuareg-font-lock-module-face ((,class :foreground ,magenta-alt)))
- `(tuareg-font-lock-multistage-face ((,class :background ,bg-alt :foreground
,blue :weight bold)))
- `(tuareg-font-lock-operator-face ((,class :foreground ,red-alt)))
- `(tuareg-opam-error-face ((,class :foreground ,red :weight bold)))
- `(tuareg-opam-pkg-variable-name-face ((,class :foreground ,cyan :slant
,modus-theme-slant)))
+ `(tuareg-font-lock-module-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint))))
+ `(tuareg-font-lock-multistage-face ((,class :background ,bg-alt
,@(modus-operandi-theme-syntax-foreground
+ blue
blue-faint)
+ :weight bold)))
+ `(tuareg-font-lock-operator-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ red-alt red-alt-faint))))
+ `(tuareg-opam-error-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ red red-faint) :weight bold)))
+ `(tuareg-opam-pkg-variable-name-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ cyan cyan-faint)
+ :slant ,modus-theme-slant)))
;;;; undo-tree
`(undo-tree-visualizer-active-branch-face ((,class :foreground ,fg-main
:weight bold)))
`(undo-tree-visualizer-current-face ((,class :foreground ,blue-intense)))
@@ -3360,53 +3455,89 @@ Also bind `class' to ((class color) (min-colors 89))."
`(web-mode-annotation-face ((,class :inherit web-mode-comment-face)))
`(web-mode-annotation-html-face ((,class :inherit web-mode-comment-face)))
`(web-mode-annotation-tag-face ((,class :inherit web-mode-comment-face
:underline t)))
- `(web-mode-block-attr-name-face ((,class :foreground ,blue)))
- `(web-mode-block-attr-value-face ((,class :foreground ,cyan-alt-other)))
+ `(web-mode-block-attr-name-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ blue blue-faint))))
+ `(web-mode-block-attr-value-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ cyan-alt-other
cyan-alt-other-faint))))
`(web-mode-block-comment-face ((,class :inherit web-mode-comment-face)))
- `(web-mode-block-control-face ((,class :foreground ,magenta-alt :weight
,modus-theme-bold)))
+ `(web-mode-block-control-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint)
+ :weight ,modus-theme-bold)))
`(web-mode-block-delimiter-face ((,class :foreground ,fg-main)))
`(web-mode-block-face ((,class :background ,bg-dim)))
`(web-mode-block-string-face ((,class :inherit web-mode-string-face)))
`(web-mode-bold-face ((,class :weight bold)))
- `(web-mode-builtin-face ((,class :foreground ,magenta-alt :weight
,modus-theme-bold)))
+ `(web-mode-builtin-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint)
+ :weight ,modus-theme-bold)))
`(web-mode-comment-face ((,class :foreground ,fg-alt :slant
,modus-theme-slant)))
- `(web-mode-comment-keyword-face ((,class :background ,bg-dim :foreground
,yellow :weight bold)))
- `(web-mode-constant-face ((,class :foreground ,blue-alt-other)))
- `(web-mode-css-at-rule-face ((,class :foreground ,blue-alt-other)))
- `(web-mode-css-color-face ((,class :foreground ,magenta-alt :weight
,modus-theme-bold)))
+ `(web-mode-comment-keyword-face ((,class :background ,bg-dim
+
,@(modus-operandi-theme-syntax-foreground
+ yellow yellow-faint)
+ :weight bold)))
+ `(web-mode-constant-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ blue-alt-other blue-alt-other-faint))))
+ `(web-mode-css-at-rule-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ blue-alt-other
blue-alt-other-faint))))
+ `(web-mode-css-color-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint)
+ :weight ,modus-theme-bold)))
`(web-mode-css-comment-face ((,class :inherit web-mode-comment-face)))
- `(web-mode-css-function-face ((,class :foreground ,magenta-alt :weight
,modus-theme-bold)))
- `(web-mode-css-priority-face ((,class :foreground ,yellow-alt :weight
,modus-theme-bold)))
- `(web-mode-css-property-name-face ((,class :foreground ,cyan)))
- `(web-mode-css-pseudo-class-face ((,class :foreground ,cyan-alt-other)))
- `(web-mode-css-selector-face ((,class :foreground ,magenta-alt-other
:weight ,modus-theme-bold)))
+ `(web-mode-css-function-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint)
+ :weight ,modus-theme-bold)))
+ `(web-mode-css-priority-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ yellow-alt yellow-alt-faint)
+ :weight ,modus-theme-bold)))
+ `(web-mode-css-property-name-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ cyan cyan-faint))))
+ `(web-mode-css-pseudo-class-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ cyan-alt-other
cyan-alt-other-faint))))
+ `(web-mode-css-selector-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta-alt-other
magenta-alt-other-faint)
+ :weight ,modus-theme-bold)))
`(web-mode-css-string-face ((,class :inherit web-mode-string-face)))
`(web-mode-css-variable-face ((,class :foreground ,fg-special-warm)))
`(web-mode-current-column-highlight-face ((,class :background ,bg-alt)))
`(web-mode-current-element-highlight-face ((,class :inherit
modus-theme-special-mild)))
`(web-mode-doctype-face ((,class :foreground ,fg-special-cold :slant
,modus-theme-slant)))
`(web-mode-error-face ((,class :inherit modus-theme-intense-red)))
- `(web-mode-filter-face ((,class :foreground ,magenta)))
+ `(web-mode-filter-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ magenta magenta-faint))))
`(web-mode-folded-face ((,class :underline t)))
- `(web-mode-function-call-face ((,class :foreground ,magenta)))
- `(web-mode-function-name-face ((,class :foreground ,magenta)))
- `(web-mode-html-attr-custom-face ((,class :foreground ,cyan)))
+ `(web-mode-function-call-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta magenta-faint))))
+ `(web-mode-function-name-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta magenta-faint))))
+ `(web-mode-html-attr-custom-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ cyan cyan-faint))))
`(web-mode-html-attr-engine-face ((,class :foreground ,fg-main)))
`(web-mode-html-attr-equal-face ((,class :foreground ,fg-main)))
- `(web-mode-html-attr-name-face ((,class :foreground ,cyan)))
- `(web-mode-html-attr-value-face ((,class :foreground ,blue-alt-other)))
- `(web-mode-html-entity-face ((,class :foreground ,yellow-alt-other :slant
,modus-theme-slant)))
+ `(web-mode-html-attr-name-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ cyan cyan-faint))))
+ `(web-mode-html-attr-value-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ blue-alt-other
blue-alt-other-faint))))
+ `(web-mode-html-entity-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ yellow-alt-other
yellow-alt-other-faint)
+ :slant ,modus-theme-slant)))
`(web-mode-html-tag-bracket-face ((,class :foreground ,fg-dim)))
- `(web-mode-html-tag-custom-face ((,class :foreground ,magenta)))
- `(web-mode-html-tag-face ((,class :foreground ,magenta)))
- `(web-mode-html-tag-namespaced-face ((,class :foreground ,magenta-alt
:weight ,modus-theme-bold)))
- `(web-mode-html-tag-unclosed-face ((,class :foreground ,red :underline t)))
+ `(web-mode-html-tag-custom-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta magenta-faint))))
+ `(web-mode-html-tag-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ magenta magenta-faint))))
+ `(web-mode-html-tag-namespaced-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta-alt
magenta-alt-faint)
+ :weight ,modus-theme-bold)))
+ `(web-mode-html-tag-unclosed-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ red red-faint)
+ :underline t)))
`(web-mode-inlay-face ((,class :background ,bg-alt)))
`(web-mode-italic-face ((,class :slant italic)))
`(web-mode-javascript-comment-face ((,class :inherit
web-mode-comment-face)))
`(web-mode-javascript-string-face ((,class :inherit web-mode-string-face)))
`(web-mode-json-comment-face ((,class :inherit web-mode-comment-face)))
- `(web-mode-json-context-face ((,class :foreground ,magenta-alt)))
+ `(web-mode-json-context-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint))))
`(web-mode-json-key-face ((,class :foreground ,blue-nuanced)))
`(web-mode-json-string-face ((,class :inherit web-mode-string-face)))
`(web-mode-jsx-depth-1-face ((,class :background ,blue-intense-bg
:foreground ,fg-main)))
@@ -3414,21 +3545,33 @@ Also bind `class' to ((class color) (min-colors 89))."
`(web-mode-jsx-depth-3-face ((,class :background ,bg-special-cold
:foreground ,fg-special-cold)))
`(web-mode-jsx-depth-4-face ((,class :background ,bg-alt :foreground
,blue-refine-fg)))
`(web-mode-jsx-depth-5-face ((,class :background ,bg-alt :foreground
,blue-nuanced)))
- `(web-mode-keyword-face ((,class :foreground ,magenta-alt-other :weight
,modus-theme-bold)))
- `(web-mode-param-name-face ((,class :foreground ,magenta)))
+ `(web-mode-keyword-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ magenta-alt-other
magenta-alt-other-faint)
+ :weight ,modus-theme-bold)))
+ `(web-mode-param-name-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta magenta-faint))))
`(web-mode-part-comment-face ((,class :inherit web-mode-comment-face)))
`(web-mode-part-face ((,class :inherit web-mode-block-face)))
`(web-mode-part-string-face ((,class :inherit web-mode-string-face)))
- `(web-mode-preprocessor-face ((,class :foreground ,magenta)))
+ `(web-mode-preprocessor-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ magenta magenta-faint))))
`(web-mode-script-face ((,class :inherit web-mode-part-face)))
- `(web-mode-sql-keyword-face ((,class :foreground ,yellow :weight bold)))
- `(web-mode-string-face ((,class :foreground ,blue-alt)))
+ `(web-mode-sql-keyword-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ yellow yellow-faint)
+ :weight bold)))
+ `(web-mode-string-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ blue-alt blue-alt-faint))))
`(web-mode-style-face ((,class :inherit web-mode-part-face)))
- `(web-mode-symbol-face ((,class :foreground ,blue-alt-other)))
- `(web-mode-type-face ((,class :foreground ,magenta-alt)))
+ `(web-mode-symbol-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ blue-alt-other blue-alt-other-faint))))
+ `(web-mode-type-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint))))
`(web-mode-underline-face ((,class :underline t)))
- `(web-mode-variable-name-face ((,class :foreground ,cyan)))
- `(web-mode-warning-face ((,class :background ,bg-alt :foreground
,yellow-alt-other :weight bold)))
+ `(web-mode-variable-name-face ((,class
,@(modus-operandi-theme-syntax-foreground
+ cyan cyan-faint))))
+ `(web-mode-warning-face ((,class :background ,bg-alt
,@(modus-operandi-theme-syntax-foreground
+ yellow-alt-other
yellow-alt-other-faint)
+ :weight bold)))
`(web-mode-whitespace-face ((,class :background ,bg-whitespace :foreground
,fg-whitespace)))
;;;; wgrep
`(wgrep-delete-face ((,class :inherit modus-theme-refine-yellow)))
@@ -3475,10 +3618,15 @@ Also bind `class' to ((class color) (min-colors 89))."
`(woman-italic ((,class :foreground ,cyan :slant italic)))
`(woman-unknown ((,class :foreground ,yellow :slant italic)))
;;;; xah-elisp-mode
- `(xah-elisp-at-symbol ((,class :foreground ,red-alt :weight bold)))
- `(xah-elisp-cap-variable ((,class :foreground ,red-alt-other)))
- `(xah-elisp-command-face ((,class :foreground ,cyan-alt-other)))
- `(xah-elisp-dollar-symbol ((,class :foreground ,green)))
+ `(xah-elisp-at-symbol ((,class ,@(modus-operandi-theme-syntax-foreground
+ red-alt red-alt-faint)
+ :weight bold)))
+ `(xah-elisp-cap-variable ((,class ,@(modus-operandi-theme-syntax-foreground
+ red-alt-other red-alt-other-faint))))
+ `(xah-elisp-command-face ((,class ,@(modus-operandi-theme-syntax-foreground
+ cyan-alt-other cyan-alt-other-faint))))
+ `(xah-elisp-dollar-symbol ((,class ,@(modus-operandi-theme-syntax-foreground
+ green green-faint))))
;;;; xref
`(xref-file-header ((,class :foreground ,fg-special-cold :weight bold)))
`(xref-line-number ((,class :foreground ,fg-alt)))
diff --git a/modus-vivendi-theme.el b/modus-vivendi-theme.el
index 6754770..adbc2db 100644
--- a/modus-vivendi-theme.el
+++ b/modus-vivendi-theme.el
@@ -49,6 +49,7 @@
;; modus-vivendi-theme-distinct-org-blocks
;; modus-vivendi-theme-3d-modeline
;; modus-vivendi-theme-subtle-diffs
+;; modus-vivendi-theme-faint-syntax
;; modus-vivendi-theme-intense-standard-completions
;; modus-vivendi-theme-override-colors-alist
;;
@@ -491,8 +492,20 @@ For more on the matter, read the documentation of
"Use prominent backgrounds for Icomplete, Ido, or similar."
:type 'boolean)
+(defcustom modus-vivendi-theme-faint-syntax nil
+ "Use less saturated colours for code syntax highlighting."
+ :type 'boolean)
+
;; Helper functions that are meant to ease the implementation of the
;; above customisation options.
+(defun modus-vivendi-theme-syntax-foreground (normal faint)
+ "Apply foreground value to headings.
+NORMAL is the more saturated colour, which should be the default.
+FAINT is the less saturated colour."
+ (if modus-vivendi-theme-faint-syntax
+ (list :foreground faint)
+ (list :foreground normal)))
+
(defun modus-vivendi-theme-heading-foreground (subtle rainbow)
"Apply foreground value to headings.
SUBTLE is the default aesthetic. RAINBOW is the saturated one."
@@ -618,6 +631,21 @@ AMOUNT is a customisation option."
("red-alt-other" . "#ff9977") ("green-alt-other" . "#00cd68")
("yellow-alt-other" . "#f0ce43") ("blue-alt-other" . "#00bdfa")
("magenta-alt-other" . "#b6a0ff") ("cyan-alt-other" . "#6ae4b9")
+ ;; styles for desaturated foreground text, intended for use with
+ ;; the `modus-vivendi-theme-faint-syntax' option
+ ;;
+ ;; must be combined with: `bg-main', `bg-alt', `bg-dim'
+ ("red-faint" . "#ffa0a0") ("green-faint" . "#88cf88")
+ ("yellow-faint" . "#d2b580") ("blue-faint" . "#92baff")
+ ("magenta-faint" . "#e0b2d6") ("cyan-faint" . "#a0bfdf")
+
+ ("red-alt-faint" . "#f5aa80") ("green-alt-faint" . "#a8cf88")
+ ("yellow-alt-faint" . "#cabf77") ("blue-alt-faint" . "#a4b0ff")
+ ("magenta-alt-faint" . "#ef9fe4") ("cyan-alt-faint" . "#90c4ed")
+
+ ("red-alt-other-faint" . "#ff9fbf") ("green-alt-other-faint" . "#88cfaf")
+ ("yellow-alt-other-faint" . "#d0ba95") ("blue-alt-other-faint" .
"#8fc5ff")
+ ("magenta-alt-other-faint" . "#d0b4ff") ("cyan-alt-other-faint" .
"#a4d0bb")
;; styles for elements that should be very subtle
;;
;; must be combined with: `bg-main', `bg-alt', `bg-dim'
@@ -1722,21 +1750,37 @@ Also bind `class' to ((class color) (min-colors 89))."
;;;; fold-this
`(fold-this-overlay ((,class :inherit modus-theme-special-mild)))
;;;; font-lock
- `(font-lock-builtin-face ((,class :foreground ,magenta-alt :weight
,modus-theme-bold)))
+ `(font-lock-builtin-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint)
+ :weight ,modus-theme-bold)))
`(font-lock-comment-delimiter-face ((,class :foreground ,fg-alt :slant
,modus-theme-slant)))
`(font-lock-comment-face ((,class :foreground ,fg-alt :slant
,modus-theme-slant)))
- `(font-lock-constant-face ((,class :foreground ,blue-alt-other)))
- `(font-lock-doc-face ((,class :foreground ,fg-special-cold :slant
,modus-theme-slant)))
- `(font-lock-function-name-face ((,class :foreground ,magenta)))
- `(font-lock-keyword-face ((,class :foreground ,magenta-alt-other :weight
,modus-theme-bold)))
- `(font-lock-negation-char-face ((,class :foreground ,yellow :weight
,modus-theme-bold)))
- `(font-lock-preprocessor-face ((,class :foreground ,red-alt-other)))
+ `(font-lock-constant-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ blue-alt-other
blue-alt-other-faint))))
+ `(font-lock-doc-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ fg-special-cold cyan-alt-other-faint)
+ :slant ,modus-theme-slant)))
+ `(font-lock-function-name-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta magenta-faint))))
+ `(font-lock-keyword-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt-other
magenta-alt-other-faint)
+ :weight ,modus-theme-bold)))
+ `(font-lock-negation-char-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ yellow yellow-faint)
+ :weight ,modus-theme-bold)))
+ `(font-lock-preprocessor-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ red-alt-other
red-alt-other-faint))))
`(font-lock-regexp-grouping-backslash ((,class :foreground
,fg-escape-char-backslash :weight bold)))
`(font-lock-regexp-grouping-construct ((,class :foreground
,fg-escape-char-construct :weight bold)))
- `(font-lock-string-face ((,class :foreground ,blue-alt)))
- `(font-lock-type-face ((,class :foreground ,magenta-alt)))
- `(font-lock-variable-name-face ((,class :foreground ,cyan)))
- `(font-lock-warning-face ((,class :foreground ,yellow-active :weight
,modus-theme-bold)))
+ `(font-lock-string-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ blue-alt blue-alt-faint))))
+ `(font-lock-type-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint))))
+ `(font-lock-variable-name-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ cyan cyan-faint))))
+ `(font-lock-warning-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ yellow-active yellow-alt-faint)
+ :weight ,modus-theme-bold)))
;;;; forge
`(forge-post-author ((,class :foreground ,fg-main :weight bold)))
`(forge-post-date ((,class :foreground ,fg-special-cold)))
@@ -1778,15 +1822,25 @@ Also bind `class' to ((class color) (min-colors 89))."
`(fountain-template ((,class :foreground ,magenta-alt)))
`(fountain-trans ((,class :foreground ,magenta :weight bold)))
;;;; geiser
- `(geiser-font-lock-autodoc-current-arg ((,class :foreground ,magenta)))
- `(geiser-font-lock-autodoc-identifier ((,class :foreground ,blue)))
- `(geiser-font-lock-doc-button ((,class :foreground ,cyan-alt :underline t)))
+ `(geiser-font-lock-autodoc-current-arg ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta magenta-faint))))
+ `(geiser-font-lock-autodoc-identifier ((,class
,@(modus-vivendi-theme-syntax-foreground
+ blue blue-faint))))
+ `(geiser-font-lock-doc-button ((,class
,@(modus-vivendi-theme-syntax-foreground
+ cyan-alt cyan-alt-faint)
+ :underline t)))
`(geiser-font-lock-doc-link ((,class :inherit link)))
- `(geiser-font-lock-error-link ((,class :foreground ,red-alt :underline t)))
- `(geiser-font-lock-image-button ((,class :foreground ,green-alt :underline
t)))
+ `(geiser-font-lock-error-link ((,class
,@(modus-vivendi-theme-syntax-foreground
+ red-alt red-alt-faint)
+ :underline t)))
+ `(geiser-font-lock-image-button ((,class
,@(modus-vivendi-theme-syntax-foreground
+ green-alt green-alt-faint)
+ :underline t)))
`(geiser-font-lock-repl-input ((,class :weight bold)))
- `(geiser-font-lock-repl-output ((,class :foreground ,magenta-alt-other)))
- `(geiser-font-lock-repl-prompt ((,class :foreground ,cyan-alt-other)))
+ `(geiser-font-lock-repl-output ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt-other
magenta-alt-other-faint))))
+ `(geiser-font-lock-repl-prompt ((,class
,@(modus-vivendi-theme-syntax-foreground
+ cyan-alt-other
cyan-alt-other-faint))))
`(geiser-font-lock-xref-header ((,class :weight bold)))
`(geiser-font-lock-xref-link ((,class :inherit link)))
;;;; git-commit
@@ -2617,29 +2671,56 @@ Also bind `class' to ((class color) (min-colors 89))."
`(num3-face-even ((,class :background ,bg-alt :weight bold)))
;;;; nxml-mode
`(nxml-attribute-colon ((,class :foreground ,fg-main)))
- `(nxml-attribute-local-name ((,class :foreground ,cyan-alt)))
- `(nxml-attribute-prefix ((,class :foreground ,cyan-alt-other :weight
,modus-theme-bold)))
- `(nxml-attribute-value ((,class :foreground ,blue)))
- `(nxml-cdata-section-CDATA ((,class :foreground ,red-alt :weight
,modus-theme-bold)))
- `(nxml-cdata-section-delimiter ((,class :foreground ,red-alt)))
- `(nxml-char-ref-delimiter ((,class :foreground ,green-alt-other)))
- `(nxml-char-ref-number ((,class :foreground ,green-alt-other :weight
,modus-theme-bold)))
+ `(nxml-attribute-local-name ((,class
,@(modus-vivendi-theme-syntax-foreground
+ cyan-alt cyan-alt-faint))))
+ `(nxml-attribute-prefix ((,class ,@(modus-vivendi-theme-syntax-foreground
+ cyan-alt-other cyan-alt-other-faint)
+ :weight ,modus-theme-bold)))
+ `(nxml-attribute-value ((,class ,@(modus-vivendi-theme-syntax-foreground
+ blue blue-faint))))
+ `(nxml-cdata-section-CDATA ((,class ,@(modus-vivendi-theme-syntax-foreground
+ red-alt red-alt-faint)
+ :weight ,modus-theme-bold)))
+ `(nxml-cdata-section-delimiter ((,class
,@(modus-vivendi-theme-syntax-foreground
+ red-alt red-alt-faint))))
+ `(nxml-char-ref-delimiter ((,class ,@(modus-vivendi-theme-syntax-foreground
+ green-alt-other
green-alt-other-faint))))
+ `(nxml-char-ref-number ((,class ,@(modus-vivendi-theme-syntax-foreground
+ green-alt-other green-alt-other-faint)
+ :weight ,modus-theme-bold)))
`(nxml-delimited-data ((,class :foreground ,fg-special-cold :slant
,modus-theme-slant)))
`(nxml-delimiter ((,class :foreground ,fg-dim)))
`(nxml-element-colon ((,class :foreground ,fg-main)))
- `(nxml-element-local-name ((,class :foreground ,magenta)))
- `(nxml-element-prefix ((,class :foreground ,magenta-alt :weight
,modus-theme-bold)))
- `(nxml-entity-ref-delimiter ((,class :foreground ,green-alt-other)))
- `(nxml-entity-ref-name ((,class :foreground ,green-alt-other :weight
,modus-theme-bold)))
+ `(nxml-element-local-name ((,class ,@(modus-vivendi-theme-syntax-foreground
+ magenta magenta-faint))))
+ `(nxml-element-prefix ((,class ,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint)
+ :weight ,modus-theme-bold)))
+ `(nxml-entity-ref-delimiter ((,class
,@(modus-vivendi-theme-syntax-foreground
+ green-alt-other
green-alt-other-faint))))
+ `(nxml-entity-ref-name ((,class ,@(modus-vivendi-theme-syntax-foreground
+ green-alt-other green-alt-other-faint)
+ :weight ,modus-theme-bold)))
`(nxml-glyph ((,class :inherit modus-theme-intense-neutral)))
- `(nxml-hash ((,class :foreground ,blue-alt :weight ,modus-theme-bold)))
+ `(nxml-hash ((,class ,@(modus-vivendi-theme-syntax-foreground
+ blue-alt blue-alt-faint)
+ :weight ,modus-theme-bold)))
`(nxml-heading ((,class :weight bold)))
- `(nxml-name ((,class :foreground ,magenta-alt :weight ,modus-theme-bold)))
+ `(nxml-name ((,class ,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint)
+ :weight ,modus-theme-bold)))
`(nxml-namespace-attribute-colon ((,class :foreground ,fg-main)))
- `(nxml-namespace-attribute-prefix ((,class :foreground ,cyan)))
- `(nxml-processing-instruction-target ((,class :foreground
,magenta-alt-other :weight ,modus-theme-bold)))
- `(nxml-prolog-keyword ((,class :foreground ,magenta-alt-other :weight
,modus-theme-bold)))
- `(nxml-ref ((,class :foreground ,green-alt-other :weight
,modus-theme-bold)))
+ `(nxml-namespace-attribute-prefix ((,class
,@(modus-vivendi-theme-syntax-foreground
+ cyan cyan-faint))))
+ `(nxml-processing-instruction-target ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt-other
magenta-alt-other-faint)
+ :weight ,modus-theme-bold)))
+ `(nxml-prolog-keyword ((,class ,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt-other magenta-alt-other-faint)
+ :weight ,modus-theme-bold)))
+ `(nxml-ref ((,class ,@(modus-vivendi-theme-syntax-foreground
+ green-alt-other green-alt-other-faint)
+ :weight ,modus-theme-bold)))
;;;; orderless
`(orderless-match-face-0 ((,class ,@(modus-vivendi-theme-completions
blue-alt blue-refine-bg blue-refine-fg)
@@ -3271,23 +3352,37 @@ Also bind `class' to ((class color) (min-colors 89))."
`(caml-types-occ-face ((,class :inherit modus-theme-subtle-green)))
`(caml-types-scope-face ((,class :inherit modus-theme-subtle-blue)))
`(caml-types-typed-face ((,class :inherit modus-theme-subtle-magenta)))
- `(tuareg-font-double-semicolon-face ((,class :foreground ,red-alt)))
- `(tuareg-font-lock-attribute-face ((,class :foreground ,magenta)))
+ `(tuareg-font-double-semicolon-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ red-alt red-alt-faint))))
+ `(tuareg-font-lock-attribute-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta magenta-faint))))
`(tuareg-font-lock-constructor-face ((,class :foreground ,fg-main)))
`(tuareg-font-lock-error-face ((,class :inherit modus-theme-intense-red
:weight bold)))
`(tuareg-font-lock-extension-node-face ((,class :background ,bg-alt
:foreground ,magenta)))
`(tuareg-font-lock-governing-face ((,class :foreground ,fg-main :weight
bold)))
- `(tuareg-font-lock-infix-extension-node-face ((,class :foreground
,magenta)))
+ `(tuareg-font-lock-infix-extension-node-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta
magenta-faint))))
`(tuareg-font-lock-interactive-directive-face ((,class :foreground
,fg-special-cold)))
- `(tuareg-font-lock-interactive-error-face ((,class :foreground ,red :weight
bold)))
- `(tuareg-font-lock-interactive-output-face ((,class :foreground
,blue-alt-other)))
- `(tuareg-font-lock-label-face ((,class :foreground ,cyan-alt-other)))
+ `(tuareg-font-lock-interactive-error-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ red red-faint)
+ :weight bold)))
+ `(tuareg-font-lock-interactive-output-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ blue-alt-other
blue-alt-other-faint))))
+ `(tuareg-font-lock-label-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ cyan-alt-other
cyan-alt-other-faint))))
`(tuareg-font-lock-line-number-face ((,class :foreground ,fg-special-warm)))
- `(tuareg-font-lock-module-face ((,class :foreground ,magenta-alt)))
- `(tuareg-font-lock-multistage-face ((,class :background ,bg-alt :foreground
,blue :weight bold)))
- `(tuareg-font-lock-operator-face ((,class :foreground ,red-alt)))
- `(tuareg-opam-error-face ((,class :foreground ,red :weight bold)))
- `(tuareg-opam-pkg-variable-name-face ((,class :foreground ,cyan :slant
,modus-theme-slant)))
+ `(tuareg-font-lock-module-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint))))
+ `(tuareg-font-lock-multistage-face ((,class :background ,bg-alt
,@(modus-vivendi-theme-syntax-foreground
+ blue
blue-faint)
+ :weight bold)))
+ `(tuareg-font-lock-operator-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ red-alt red-alt-faint))))
+ `(tuareg-opam-error-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ red red-faint) :weight bold)))
+ `(tuareg-opam-pkg-variable-name-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ cyan cyan-faint)
+ :slant ,modus-theme-slant)))
;;;; undo-tree
`(undo-tree-visualizer-active-branch-face ((,class :foreground ,fg-main
:weight bold)))
`(undo-tree-visualizer-current-face ((,class :foreground ,blue-intense)))
@@ -3360,53 +3455,89 @@ Also bind `class' to ((class color) (min-colors 89))."
`(web-mode-annotation-face ((,class :inherit web-mode-comment-face)))
`(web-mode-annotation-html-face ((,class :inherit web-mode-comment-face)))
`(web-mode-annotation-tag-face ((,class :inherit web-mode-comment-face
:underline t)))
- `(web-mode-block-attr-name-face ((,class :foreground ,blue)))
- `(web-mode-block-attr-value-face ((,class :foreground ,cyan-alt-other)))
+ `(web-mode-block-attr-name-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ blue blue-faint))))
+ `(web-mode-block-attr-value-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ cyan-alt-other
cyan-alt-other-faint))))
`(web-mode-block-comment-face ((,class :inherit web-mode-comment-face)))
- `(web-mode-block-control-face ((,class :foreground ,magenta-alt :weight
,modus-theme-bold)))
+ `(web-mode-block-control-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint)
+ :weight ,modus-theme-bold)))
`(web-mode-block-delimiter-face ((,class :foreground ,fg-main)))
`(web-mode-block-face ((,class :background ,bg-dim)))
`(web-mode-block-string-face ((,class :inherit web-mode-string-face)))
`(web-mode-bold-face ((,class :weight bold)))
- `(web-mode-builtin-face ((,class :foreground ,magenta-alt :weight
,modus-theme-bold)))
+ `(web-mode-builtin-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint)
+ :weight ,modus-theme-bold)))
`(web-mode-comment-face ((,class :foreground ,fg-alt :slant
,modus-theme-slant)))
- `(web-mode-comment-keyword-face ((,class :background ,bg-dim :foreground
,yellow :weight bold)))
- `(web-mode-constant-face ((,class :foreground ,blue-alt-other)))
- `(web-mode-css-at-rule-face ((,class :foreground ,blue-alt-other)))
- `(web-mode-css-color-face ((,class :foreground ,magenta-alt :weight
,modus-theme-bold)))
+ `(web-mode-comment-keyword-face ((,class :background ,bg-dim
+
,@(modus-vivendi-theme-syntax-foreground
+ yellow yellow-faint)
+ :weight bold)))
+ `(web-mode-constant-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ blue-alt-other blue-alt-other-faint))))
+ `(web-mode-css-at-rule-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ blue-alt-other
blue-alt-other-faint))))
+ `(web-mode-css-color-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint)
+ :weight ,modus-theme-bold)))
`(web-mode-css-comment-face ((,class :inherit web-mode-comment-face)))
- `(web-mode-css-function-face ((,class :foreground ,magenta-alt :weight
,modus-theme-bold)))
- `(web-mode-css-priority-face ((,class :foreground ,yellow-alt :weight
,modus-theme-bold)))
- `(web-mode-css-property-name-face ((,class :foreground ,cyan)))
- `(web-mode-css-pseudo-class-face ((,class :foreground ,cyan-alt-other)))
- `(web-mode-css-selector-face ((,class :foreground ,magenta-alt-other
:weight ,modus-theme-bold)))
+ `(web-mode-css-function-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint)
+ :weight ,modus-theme-bold)))
+ `(web-mode-css-priority-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ yellow-alt yellow-alt-faint)
+ :weight ,modus-theme-bold)))
+ `(web-mode-css-property-name-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ cyan cyan-faint))))
+ `(web-mode-css-pseudo-class-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ cyan-alt-other
cyan-alt-other-faint))))
+ `(web-mode-css-selector-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt-other
magenta-alt-other-faint)
+ :weight ,modus-theme-bold)))
`(web-mode-css-string-face ((,class :inherit web-mode-string-face)))
`(web-mode-css-variable-face ((,class :foreground ,fg-special-warm)))
`(web-mode-current-column-highlight-face ((,class :background ,bg-alt)))
`(web-mode-current-element-highlight-face ((,class :inherit
modus-theme-special-mild)))
`(web-mode-doctype-face ((,class :foreground ,fg-special-cold :slant
,modus-theme-slant)))
`(web-mode-error-face ((,class :inherit modus-theme-intense-red)))
- `(web-mode-filter-face ((,class :foreground ,magenta)))
+ `(web-mode-filter-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ magenta magenta-faint))))
`(web-mode-folded-face ((,class :underline t)))
- `(web-mode-function-call-face ((,class :foreground ,magenta)))
- `(web-mode-function-name-face ((,class :foreground ,magenta)))
- `(web-mode-html-attr-custom-face ((,class :foreground ,cyan)))
+ `(web-mode-function-call-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta magenta-faint))))
+ `(web-mode-function-name-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta magenta-faint))))
+ `(web-mode-html-attr-custom-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ cyan cyan-faint))))
`(web-mode-html-attr-engine-face ((,class :foreground ,fg-main)))
`(web-mode-html-attr-equal-face ((,class :foreground ,fg-main)))
- `(web-mode-html-attr-name-face ((,class :foreground ,cyan)))
- `(web-mode-html-attr-value-face ((,class :foreground ,blue-alt-other)))
- `(web-mode-html-entity-face ((,class :foreground ,yellow-alt-other :slant
,modus-theme-slant)))
+ `(web-mode-html-attr-name-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ cyan cyan-faint))))
+ `(web-mode-html-attr-value-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ blue-alt-other
blue-alt-other-faint))))
+ `(web-mode-html-entity-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ yellow-alt-other
yellow-alt-other-faint)
+ :slant ,modus-theme-slant)))
`(web-mode-html-tag-bracket-face ((,class :foreground ,fg-dim)))
- `(web-mode-html-tag-custom-face ((,class :foreground ,magenta)))
- `(web-mode-html-tag-face ((,class :foreground ,magenta)))
- `(web-mode-html-tag-namespaced-face ((,class :foreground ,magenta-alt
:weight ,modus-theme-bold)))
- `(web-mode-html-tag-unclosed-face ((,class :foreground ,red :underline t)))
+ `(web-mode-html-tag-custom-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta magenta-faint))))
+ `(web-mode-html-tag-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ magenta magenta-faint))))
+ `(web-mode-html-tag-namespaced-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt
magenta-alt-faint)
+ :weight ,modus-theme-bold)))
+ `(web-mode-html-tag-unclosed-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ red red-faint)
+ :underline t)))
`(web-mode-inlay-face ((,class :background ,bg-alt)))
`(web-mode-italic-face ((,class :slant italic)))
`(web-mode-javascript-comment-face ((,class :inherit
web-mode-comment-face)))
`(web-mode-javascript-string-face ((,class :inherit web-mode-string-face)))
`(web-mode-json-comment-face ((,class :inherit web-mode-comment-face)))
- `(web-mode-json-context-face ((,class :foreground ,magenta-alt)))
+ `(web-mode-json-context-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint))))
`(web-mode-json-key-face ((,class :foreground ,blue-nuanced)))
`(web-mode-json-string-face ((,class :inherit web-mode-string-face)))
`(web-mode-jsx-depth-1-face ((,class :background ,blue-intense-bg
:foreground ,fg-main)))
@@ -3414,21 +3545,33 @@ Also bind `class' to ((class color) (min-colors 89))."
`(web-mode-jsx-depth-3-face ((,class :background ,bg-special-cold
:foreground ,fg-special-cold)))
`(web-mode-jsx-depth-4-face ((,class :background ,bg-alt :foreground
,blue-refine-fg)))
`(web-mode-jsx-depth-5-face ((,class :background ,bg-alt :foreground
,blue-nuanced)))
- `(web-mode-keyword-face ((,class :foreground ,magenta-alt-other :weight
,modus-theme-bold)))
- `(web-mode-param-name-face ((,class :foreground ,magenta)))
+ `(web-mode-keyword-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt-other
magenta-alt-other-faint)
+ :weight ,modus-theme-bold)))
+ `(web-mode-param-name-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ magenta magenta-faint))))
`(web-mode-part-comment-face ((,class :inherit web-mode-comment-face)))
`(web-mode-part-face ((,class :inherit web-mode-block-face)))
`(web-mode-part-string-face ((,class :inherit web-mode-string-face)))
- `(web-mode-preprocessor-face ((,class :foreground ,magenta)))
+ `(web-mode-preprocessor-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ magenta magenta-faint))))
`(web-mode-script-face ((,class :inherit web-mode-part-face)))
- `(web-mode-sql-keyword-face ((,class :foreground ,yellow :weight bold)))
- `(web-mode-string-face ((,class :foreground ,blue-alt)))
+ `(web-mode-sql-keyword-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ yellow yellow-faint)
+ :weight bold)))
+ `(web-mode-string-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ blue-alt blue-alt-faint))))
`(web-mode-style-face ((,class :inherit web-mode-part-face)))
- `(web-mode-symbol-face ((,class :foreground ,blue-alt-other)))
- `(web-mode-type-face ((,class :foreground ,magenta-alt)))
+ `(web-mode-symbol-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ blue-alt-other blue-alt-other-faint))))
+ `(web-mode-type-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ magenta-alt magenta-alt-faint))))
`(web-mode-underline-face ((,class :underline t)))
- `(web-mode-variable-name-face ((,class :foreground ,cyan)))
- `(web-mode-warning-face ((,class :background ,bg-alt :foreground
,yellow-alt-other :weight bold)))
+ `(web-mode-variable-name-face ((,class
,@(modus-vivendi-theme-syntax-foreground
+ cyan cyan-faint))))
+ `(web-mode-warning-face ((,class :background ,bg-alt
,@(modus-vivendi-theme-syntax-foreground
+ yellow-alt-other
yellow-alt-other-faint)
+ :weight bold)))
`(web-mode-whitespace-face ((,class :background ,bg-whitespace :foreground
,fg-whitespace)))
;;;; wgrep
`(wgrep-delete-face ((,class :inherit modus-theme-refine-yellow)))
@@ -3475,10 +3618,15 @@ Also bind `class' to ((class color) (min-colors 89))."
`(woman-italic ((,class :foreground ,cyan :slant italic)))
`(woman-unknown ((,class :foreground ,yellow :slant italic)))
;;;; xah-elisp-mode
- `(xah-elisp-at-symbol ((,class :foreground ,red-alt :weight bold)))
- `(xah-elisp-cap-variable ((,class :foreground ,red-alt-other)))
- `(xah-elisp-command-face ((,class :foreground ,cyan-alt-other)))
- `(xah-elisp-dollar-symbol ((,class :foreground ,green)))
+ `(xah-elisp-at-symbol ((,class ,@(modus-vivendi-theme-syntax-foreground
+ red-alt red-alt-faint)
+ :weight bold)))
+ `(xah-elisp-cap-variable ((,class ,@(modus-vivendi-theme-syntax-foreground
+ red-alt-other red-alt-other-faint))))
+ `(xah-elisp-command-face ((,class ,@(modus-vivendi-theme-syntax-foreground
+ cyan-alt-other cyan-alt-other-faint))))
+ `(xah-elisp-dollar-symbol ((,class ,@(modus-vivendi-theme-syntax-foreground
+ green green-faint))))
;;;; xref
`(xref-file-header ((,class :foreground ,fg-special-cold :weight bold)))
`(xref-line-number ((,class :foreground ,fg-alt)))
- [elpa] externals/modus-operandi-theme eb854a7 02/99: Review colour sequence of MESSAGE cited text, (continued)
- [elpa] externals/modus-operandi-theme eb854a7 02/99: Review colour sequence of MESSAGE cited text, Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme 68a8f65 03/99: Major review of MU4E faces, Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme bf3c670 04/99: Review Gnus mail/news level faces, Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme 750e342 05/99: Special colour for default active modeline border, Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme 5a15e06 09/99: Refine CALENDAR+ORG date selection, Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme 6876c72 10/99: Use a more intense bg in 'org-agenda-date-today', Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme a978351 11/99: Define missing 'header-line-highlight' face, Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme a712240 21/99: Review ANNOTATE faces, Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme 3013cca 24/99: Review 'org-meta-line', amending commit 8f8bb3b39, Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme abafe51 13/99: Use more appropriate styles for 'org-warning', Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme 9ff949f 17/99: Initial implementation of "faint syntax" option,
Stefan Monnier <=
- [elpa] externals/modus-operandi-theme 306d2cd 19/99: Change order of links in README "meta" section, Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme f5018c0 23/99: Tweak ORG, OUTLINE foreground in "rainbow headings", Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme 3c38b04 26/99: Two minor documentation refinements, Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme 1ce0e98 35/99: Review TRANSIENT faces (magit pop-up), Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme d0c8af9 12/99: Review 'org-priority' styles for user options, Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme b633b6d 20/99: Refine 'diff-hl-reverted-hunk-highlight', Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme bf41544 18/99: Add tentative support for 'highlight-tail', Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme ae783cd 30/99: Add aliases for 'org-src-block-faces' languages, Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme bbcc399 31/99: Add support for clojure in 'org-src-block-faces', Stefan Monnier, 2020/07/31
- [elpa] externals/modus-operandi-theme e039129 38/99: Refine Org agenda modeline filter faces, Stefan Monnier, 2020/07/31