branch: externals/modus-themes
commit 3c98eadc356d89702bb642b0300f8a3bdefd8075
Author: Protesilaos <[email protected]>
Commit: Protesilaos <[email protected]>
Bring back the Modus mark faces
Read the commit message of bf69c6c for the explanation.
---
modus-themes.el | 81 ++++++++++++++++++++++++++++++++-------------------------
1 file changed, 46 insertions(+), 35 deletions(-)
diff --git a/modus-themes.el b/modus-themes.el
index 2af8ee90a16..f9bcb14301f 100644
--- a/modus-themes.el
+++ b/modus-themes.el
@@ -112,9 +112,6 @@ deficiency (deuteranopia or tritanopia, respectively)."
(define-obsolete-face-alias 'modus-themes-lang-error nil "5.0.0")
(define-obsolete-face-alias 'modus-themes-lang-note nil "5.0.0")
(define-obsolete-face-alias 'modus-themes-lang-warning nil "5.0.0")
-(define-obsolete-face-alias 'modus-themes-mark-alt nil "5.0.0")
-(define-obsolete-face-alias 'modus-themes-mark-del nil "5.0.0")
-(define-obsolete-face-alias 'modus-themes-mark-sel nil "5.0.0")
(define-obsolete-face-alias 'modus-themes-nuanced-blue nil "5.0.0")
(define-obsolete-face-alias 'modus-themes-nuanced-cyan nil "5.0.0")
(define-obsolete-face-alias 'modus-themes-nuanced-green nil "5.0.0")
@@ -215,6 +212,17 @@ text should not be underlined as well) yet still blend in."
:package-version '(modus-themes . "5.4.0")
:group 'modus-themes-faces))
+(define-obsolete-face-alias 'modus-themes-mark-alt 'modus-themes-mark-other
"5.4.0")
+(define-obsolete-face-alias 'modus-themes-mark-del 'modus-themes-mark-delete
"5.4.0")
+(define-obsolete-face-alias 'modus-themes-mark-sel 'modus-themes-mark-select
"5.4.0")
+
+(dolist (suffix '(other delete select))
+ (custom-declare-face
+ (intern (format "modus-themes-mark-%s" suffix))
+ nil (format "Face for %s marks." suffix)
+ :package-version '(modus-themes . "5.4.0")
+ :group 'modus-themes-faces))
+
;;;; Customization variables
@@ -4540,6 +4548,9 @@ If COLOR is unspecified, then return :box unspecified."
`(modus-themes-search-rx-group-1 ((,c :background ,bg-search-rx-group-1
:foreground ,fg-search-rx-group-1)))
`(modus-themes-search-rx-group-2 ((,c :background ,bg-search-rx-group-2
:foreground ,fg-search-rx-group-2)))
`(modus-themes-search-rx-group-3 ((,c :background ,bg-search-rx-group-3
:foreground ,fg-search-rx-group-3)))
+ `(modus-themes-mark-other ((,c :inherit bold :background ,bg-mark-other
:foreground ,fg-mark-other)))
+ `(modus-themes-mark-delete ((,c :inherit bold :background ,bg-mark-delete
:foreground ,fg-mark-delete)))
+ `(modus-themes-mark-select ((,c :inherit bold :background ,bg-mark-select
:foreground ,fg-mark-select)))
;;;; standard faces
;;;;; absolute essentials
`(default ((,c :background ,bg-main :foreground ,fg-main)))
@@ -4735,8 +4746,8 @@ If COLOR is unspecified, then return :box unspecified."
`(aw-mode-line-face ((,c :inherit modus-themes-bold)))
;;;;; binder
`(binder-sidebar-highlight ((,c :inherit modus-themes-hl-line)))
- `(binder-sidebar-marked ((,c :inherit bold :background ,bg-mark-select
:foreground ,fg-mark-select)))
- `(binder-sidebar-missing ((,c :inherit bold :background ,bg-mark-delete
:foreground ,fg-mark-delete)))
+ `(binder-sidebar-marked ((,c :inherit modus-themes-mark-select)))
+ `(binder-sidebar-missing ((,c :inherit modus-themes-mark-delete)))
`(binder-sidebar-tags ((,c :foreground ,variable)))
;;;;; breadcrumb
`(breadcrumb-face ((,c :foreground ,fg-alt)))
@@ -4748,7 +4759,7 @@ If COLOR is unspecified, then return :box unspecified."
`(bongo-currently-playing-track ((,c :inherit modus-themes-bold)))
`(bongo-elapsed-track-part ((,c :background ,bg-inactive :underline t)))
`(bongo-filled-seek-bar ((,c :background ,bg-hover)))
- `(bongo-marked-track ((,c :inherit bold :background ,bg-mark-other
:foreground ,fg-mark-other)))
+ `(bongo-marked-track ((,c :inherit modus-themes-mark-other)))
`(bongo-marked-track-line ((,c :background ,bg-dim)))
`(bongo-played-track ((,c :foreground ,fg-dim :strike-through t)))
`(bongo-track-length ((,c :foreground ,fg-dim)))
@@ -4796,7 +4807,7 @@ If COLOR is unspecified, then return :box unspecified."
`(calibredb-search-header-sort-face ((,c :inherit modus-themes-bold
:foreground ,accent-1)))
`(calibredb-search-header-total-face ((,c :inherit modus-themes-bold
:foreground ,accent-0)))
`(calibredb-search-header-filter-face ((,c :inherit modus-themes-bold)))
- `(calibredb-mark-face ((,c :inherit bold :background ,bg-mark-select
:foreground ,fg-mark-select)))
+ `(calibredb-mark-face ((,c :inherit modus-themes-mark-select)))
`(calibredb-size-face (( )))
`(calibredb-tag-face ((,c :foreground ,fg-alt)))
;;;;; centaur-tabs
@@ -4979,8 +4990,8 @@ If COLOR is unspecified, then return :box unspecified."
`(debbugs-gnu-done ((,c :foreground ,info)))
`(debbugs-gnu-forwarded ((,c :inherit modus-themes-slant)))
`(debbugs-gnu-handled (( )))
- `(debbugs-gnu-marked ((,c :inherit bold :background ,bg-mark-select
:foreground ,fg-mark-select)))
- `(debbugs-gnu-marked-stale ((,c :inherit bold :background ,bg-mark-other
:foreground ,fg-mark-other)))
+ `(debbugs-gnu-marked ((,c :inherit modus-themes-mark-select)))
+ `(debbugs-gnu-marked-stale ((,c :inherit modus-themes-mark-other)))
`(debbugs-gnu-new ((,c :inherit modus-themes-bold :foreground ,err)))
`(debbugs-gnu-pending ((,c :inherit bold-italic :foreground ,warning)))
`(debbugs-gnu-stale-1 ((,c :foreground ,err)))
@@ -4988,7 +4999,7 @@ If COLOR is unspecified, then return :box unspecified."
`(debbugs-gnu-stale-3 ((,c :foreground ,info)))
`(debbugs-gnu-stale-4 ((,c :foreground ,fg-alt)))
`(debbugs-gnu-stale-5 ((,c :foreground ,fg-dim)))
- `(debbugs-gnu-tagged ((,c :inherit bold :background ,bg-mark-other
:foreground ,fg-mark-other)))
+ `(debbugs-gnu-tagged ((,c :inherit modus-themes-mark-other)))
`(debbugs-gnu-title ((,c :inherit modus-themes-heading-1)))
;;;;; deft
`(deft-filter-string-face ((,c :foreground ,info)))
@@ -5047,11 +5058,11 @@ If COLOR is unspecified, then return :box unspecified."
;;;;; dired
`(dired-broken-symlink ((,c :foreground ,err :underline t)))
`(dired-directory ((,c :foreground ,accent-0)))
- `(dired-flagged ((,c :inherit bold :background ,bg-mark-delete :foreground
,fg-mark-delete)))
+ `(dired-flagged ((,c :inherit modus-themes-mark-delete)))
`(dired-header ((,c :inherit modus-themes-bold)))
`(dired-ignored ((,c :foreground ,fg-dim)))
`(dired-mark ((,c :inherit modus-themes-bold)))
- `(dired-marked ((,c :inherit bold :background ,bg-mark-select :foreground
,fg-mark-select)))
+ `(dired-marked ((,c :inherit modus-themes-mark-select)))
`(dired-perm-write ((,c :foreground ,fg-dim)))
`(dired-symlink ((,c :background ,bg-link-symbolic :foreground
,fg-link-symbolic :underline ,underline-link-symbolic)))
`(dired-warning ((,c :foreground ,warning)))
@@ -5082,8 +5093,8 @@ If COLOR is unspecified, then return :box unspecified."
`(diredfl-compressed-file-name ((,c :foreground ,warning)))
`(diredfl-compressed-file-suffix ((,c :foreground ,err)))
`(diredfl-date-time ((,c :foreground ,date-common)))
- `(diredfl-deletion ((,c :inherit bold :background ,bg-mark-delete
:foreground ,fg-mark-delete)))
- `(diredfl-deletion-file-name ((,c :inherit bold :background
,bg-mark-delete :foreground ,fg-mark-delete)))
+ `(diredfl-deletion ((,c :inherit modus-themes-mark-delete)))
+ `(diredfl-deletion-file-name ((,c :inherit modus-themes-mark-delete)))
`(diredfl-dir-heading ((,c :inherit modus-themes-bold)))
`(diredfl-dir-name ((,c :foreground ,accent-0)))
`(diredfl-dir-priv ((,c :foreground ,accent-0)))
@@ -5091,8 +5102,8 @@ If COLOR is unspecified, then return :box unspecified."
`(diredfl-executable-tag ((,c :foreground ,accent-1)))
`(diredfl-file-name ((,c :foreground ,fg-main)))
`(diredfl-file-suffix ((,c :foreground ,variable)))
- `(diredfl-flag-mark ((,c :inherit bold :background ,bg-mark-select
:foreground ,fg-mark-select)))
- `(diredfl-flag-mark-line ((,c :inherit bold :background ,bg-mark-select
:foreground ,fg-mark-select)))
+ `(diredfl-flag-mark ((,c :inherit modus-themes-mark-select)))
+ `(diredfl-flag-mark-line ((,c :inherit modus-themes-mark-select)))
`(diredfl-ignored-file-name ((,c :foreground ,fg-dim)))
`(diredfl-link-priv ((,c :foreground ,fg-link)))
`(diredfl-no-priv ((,c :foreground ,fg-dim)))
@@ -5271,7 +5282,7 @@ If COLOR is unspecified, then return :box unspecified."
`(embark-collect-group-title ((,c :inherit modus-themes-bold :foreground
,name)))
`(embark-keybinding ((,c :inherit (bold modus-themes-fixed-pitch)
:foreground ,keybind)))
`(embark-keybinding-repeat ((,c :inherit modus-themes-bold)))
- `(embark-selected ((,c :inherit bold :background ,bg-mark-select
:foreground ,fg-mark-select)))
+ `(embark-selected ((,c :inherit modus-themes-mark-select)))
;;;;; ement (ement.el)
`(ement-room-fully-read-marker ((,c :foreground ,info)))
`(ement-room-membership ((,c :foreground ,fg-dim)))
@@ -5642,9 +5653,9 @@ If COLOR is unspecified, then return :box unspecified."
`(hbut-flash ((,c :inherit modus-themes-search-replace)))
`(ibut-face ((,c :background ,bg-link-symbolic :foreground
,fg-link-symbolic :underline ,underline-link-symbolic)))
;;;;; ibuffer
- `(ibuffer-deletion ((,c :inherit bold :background ,bg-mark-delete
:foreground ,fg-mark-delete)))
+ `(ibuffer-deletion ((,c :inherit modus-themes-mark-delete)))
`(ibuffer-filter-group-name ((,c :inherit bold)))
- `(ibuffer-marked ((,c :inherit bold :background ,bg-mark-select
:foreground ,fg-mark-select)))
+ `(ibuffer-marked ((,c :inherit modus-themes-mark-select)))
`(ibuffer-title ((,c :inherit bold)))
;;;;; icomplete
`(icomplete-first-match ((,c :inherit modus-themes-completion-match-0)))
@@ -5665,10 +5676,10 @@ If COLOR is unspecified, then return :box unspecified."
`(iflipb-current-buffer-face ((,c :inherit modus-themes-bold :foreground
,name)))
`(iflipb-other-buffer-face ((,c :foreground ,fg-dim)))
;;;;; image-dired
- `(image-dired-thumb-flagged ((,c :background ,bg-mark-delete :foreground
,fg-mark-delete :box (:line-width -3))))
+ `(image-dired-thumb-flagged ((,c :inherit modus-themes-mark-delete :box
(:line-width -3))))
`(image-dired-thumb-header-file-name ((,c :inherit modus-themes-bold)))
`(image-dired-thumb-header-file-size ((,c :foreground ,constant)))
- `(image-dired-thumb-mark ((,c :background ,bg-mark-select :foreground
,fg-mark-select :box (:line-width -3))))
+ `(image-dired-thumb-mark ((,c :inherit modus-themes-mark-select :box
(:line-width -3))))
;;;;; imenu-list
`(imenu-list-entry-face-0 ((,c :foreground ,fg-heading-1)))
`(imenu-list-entry-face-1 ((,c :foreground ,fg-heading-2)))
@@ -5828,8 +5839,8 @@ If COLOR is unspecified, then return :box unspecified."
;;;;; kmacro-menu
;; Use `list' here to avoid a spurious warning about `kmacro-menu-mark'.
(list 'kmacro-menu-mark `((,c :inherit modus-themes-bold)))
- `(kmacro-menu-marked ((,c :inherit bold :background ,bg-mark-select
:foreground ,fg-mark-select)))
- `(kmacro-menu-flagged ((,c :inherit bold :background ,bg-mark-delete
:foreground ,fg-mark-delete)))
+ `(kmacro-menu-marked ((,c :inherit modus-themes-mark-select)))
+ `(kmacro-menu-flagged ((,c :inherit modus-themes-mark-delete)))
;;;;; ledger-mode
`(ledger-font-auto-xact-face ((,c :inherit modus-themes-bold :foreground
,builtin)))
`(ledger-font-account-name-face ((,c :foreground ,name)))
@@ -6494,8 +6505,8 @@ If COLOR is unspecified, then return :box unspecified."
;;;;; package (M-x list-packages)
`(package-description ((,c :foreground ,docstring)))
`(package-help-section-name ((,c :inherit modus-themes-bold)))
- `(package-mark-delete-line ((,c :inherit bold :background ,bg-mark-delete
:foreground ,fg-mark-delete)))
- `(package-mark-install-line ((,c :inherit bold :background ,bg-mark-select
:foreground ,fg-mark-select)))
+ `(package-mark-delete-line ((,c :inherit modus-themes-mark-delete)))
+ `(package-mark-install-line ((,c :inherit modus-themes-mark-select)))
`(package-name ((,c :background ,bg-link :foreground ,fg-link :underline
,underline-link)))
`(package-status-available ((,c :foreground ,date-common)))
`(package-status-avail-obso ((,c :foreground ,err)))
@@ -6598,7 +6609,7 @@ If COLOR is unspecified, then return :box unspecified."
`(prescient-secondary-highlight ((,c :inherit
modus-themes-completion-match-1)))
;;;;; proced
`(proced-mark ((,c :inherit modus-themes-bold)))
- `(proced-marked ((,c :inherit bold :background ,bg-mark-other :foreground
,fg-mark-other)))
+ `(proced-marked ((,c :inherit modus-themes-mark-other)))
`(proced-sort-header ((,c :inherit modus-themes-bold :underline t)))
;;;;; prodigy
`(prodigy-green-face ((,c :foreground ,info)))
@@ -6729,7 +6740,7 @@ If COLOR is unspecified, then return :box unspecified."
`(shr-h5 ((,c :inherit modus-themes-heading-5)))
`(shr-h6 ((,c :inherit modus-themes-heading-6)))
`(shr-mark ((,c :inherit modus-themes-search-static)))
- `(shr-selected-link ((,c :inherit bold :background ,bg-mark-select
:foreground ,fg-mark-select)))
+ `(shr-selected-link ((,c :inherit modus-themes-mark-select)))
;;;;; side-notes
`(side-notes ((,c :background ,bg-dim :foreground ,fg-dim)))
;;;;; sieve-mode
@@ -6809,7 +6820,7 @@ If COLOR is unspecified, then return :box unspecified."
`(speedbar-directory-face ((,c :inherit modus-themes-bold :foreground
,accent-0)))
`(speedbar-file-face ((,c :foreground ,fg-main)))
`(speedbar-highlight-face ((,c :background ,bg-hover :foreground
,fg-main)))
- `(speedbar-selected-face ((,c :inherit bold :background ,bg-mark-select
:foreground ,fg-mark-select)))
+ `(speedbar-selected-face ((,c :inherit modus-themes-mark-select)))
`(speedbar-separator-face ((,c :background ,bg-active :foreground
,fg-main)))
`(speedbar-tag-face ((,c :foreground ,accent-1)))
;;;;; spell-fu
@@ -6844,7 +6855,7 @@ If COLOR is unspecified, then return :box unspecified."
;;;;; synaxis
`(synaxis-search-date-face ((,c :foreground ,date-common)))
`(synaxis-search-feed-face ((,c :foreground ,name))) ; TODO 2026-07-14:
maybe make this the same as `elfeed-search-feed-face'
- `(synaxis-search-marked-face ((,c :inherit bold :background
,bg-mark-select :foreground ,fg-mark-select)))
+ `(synaxis-search-marked-face ((,c :inherit modus-themes-mark-select)))
`(synaxis-search-read-face (( )))
`(synaxis-search-tag-face ((,c :foreground ,identifier))) ; TODO
2026-07-14: maybe make this the same as `elfeed-search-tag-face'
`(synaxis-search-unread-face ((,c :inherit bold :foreground ,fg-main))) ;
same as `elfeed-search-unread-title-face'
@@ -6942,8 +6953,8 @@ If COLOR is unspecified, then return :box unspecified."
;; Placate the compiler for what is a spurious warning. We also
;; have to do this with `eldoc-highlight-function-argument'.
(list 'transient-argument `((,c :inherit modus-themes-bold :background
,bg-active-argument :foreground ,fg-active-argument)))
- `(transient-disabled-suffix ((,c :inherit bold :background ,bg-mark-delete
:foreground ,fg-mark-delete)))
- `(transient-enabled-suffix ((,c :inherit bold :background ,bg-mark-select
:foreground ,fg-mark-select)))
+ `(transient-disabled-suffix ((,c :inherit modus-themes-mark-delete)))
+ `(transient-enabled-suffix ((,c :inherit modus-themes-mark-select)))
`(transient-heading ((,c :inherit bold :foreground ,fg-main)))
`(transient-inactive-argument ((,c :foreground ,fg-dim)))
`(transient-inactive-value ((,c :foreground ,fg-dim)))
@@ -6964,11 +6975,11 @@ If COLOR is unspecified, then return :box unspecified."
`(transient-unreachable-key ((,c :inherit modus-themes-fixed-pitch
:foreground ,fg-dim)))
`(transient-value ((,c :inherit modus-themes-bold :background
,bg-active-value :foreground ,fg-active-value)))
;;;;; trashed
- `(trashed-deleted ((,c :inherit bold :background ,bg-mark-delete
:foreground ,fg-mark-delete)))
+ `(trashed-deleted ((,c :inherit modus-themes-mark-delete)))
`(trashed-directory ((,c :foreground ,accent-0)))
`(trashed-mark ((,c :inherit modus-themes-bold)))
- `(trashed-marked ((,c :inherit bold :background ,bg-mark-other :foreground
,fg-mark-other)))
- `(trashed-restored ((,c :inherit bold :background ,bg-mark-select
:foreground ,fg-mark-select)))
+ `(trashed-marked ((,c :inherit modus-themes-mark-other)))
+ `(trashed-restored ((,c :inherit modus-themes-mark-select)))
;;;;; treemacs
`(treemacs-async-loading-face ((,c :foreground ,fg-main)))
`(treemacs-directory-face ((,c :foreground ,accent-0)))
@@ -6987,7 +6998,7 @@ If COLOR is unspecified, then return :box unspecified."
`(treemacs-help-column-face ((,c :inherit modus-themes-bold :foreground
,keyword)))
`(treemacs-help-title-face ((,c :foreground ,fg-main)))
`(treemacs-hl-line-face ((,c :background ,bg-hl-line :extend t)))
- `(treemacs-marked-file-face ((,c :inherit bold :background ,bg-mark-other
:foreground ,fg-mark-other)))
+ `(treemacs-marked-file-face ((,c :inherit modus-themes-mark-other)))
`(treemacs-nerd-icons-face ((,c :foreground ,accent-0)))
`(treemacs-on-failure-pulse-face ((,c :foreground ,fg-main)))
`(treemacs-on-success-pulse-face ((,c :foreground ,fg-main)))