commit f782c9641a7f246fa426b9d0f8c4b8f1418a1237
parent 8d99d64ff6fb3526a9ddb4b737a92e4ff20cc29c
Author: andsy10 <andsy1016@gmail.com>
Date: Wed, 26 Aug 2026 15:02:59 +0800
Merge remote-tracking branch 'origin/master'
Diffstat:
17 files changed, 314 insertions(+), 10 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
@@ -0,0 +1,58 @@
+# Changelog
+
+## 2.2.0 (2026-07-28)
+
+- [#462](https://github.com/bbatsov/solarized-emacs/pull/462): Expand face coverage to jinx, completion-preview, copilot, keycast, dictionary, mistty, easy-kill, vundo, asciidoc-mode, clojure-mode, haskell-mode, erlang, inf-ruby, gptel and breadcrumb, complete the anzu and git-timemachine faces, and deepen the cider coverage (REPL, stacktrace and nREPL log).
+
+## 2.1.0 (2026-03-29)
+
+### New features
+
+- Add the `solarized-select-theme` command for picking a variant interactively via `completing-read`.
+- Track the current theme through `enable-theme-functions` hooks (Emacs 29+), so `solarized-reload` reuses it automatically.
+
+### New face definitions
+
+- Full vertico coverage (current, group-title, group-separator, multiline).
+- Comprehensive marginalia coverage (35 faces for annotations, file permissions, types and more).
+- Full embark coverage (keybindings, targets, collect buffers, verbose indicator).
+- Expand consult from 2 to 16 faces (files, bookmarks, async status, line numbers and so on).
+- Expand corfu from 4 to 11 faces (annotations, deprecated, echo, popupinfo, quick keys, indexed).
+- Full eglot coverage (highlighted symbol, diagnostics, mode-line, inlay hints).
+- Expand which-key from 3 to 9 faces (separator, note, special-key, docstring and others).
+
+### Bug fixes
+
+- Fix the selenized-zenburn theme docstring, which incorrectly said "gruvbox".
+- Fix a duplicate "The the" in the wombat-dark docstring.
+
+## 2.0.5 (2025-02-22)
+
+- [#452](https://github.com/bbatsov/solarized-emacs/pull/452): Add support for the built-in `tab-line` and `window-tool-bar` packages.
+- [#453](https://github.com/bbatsov/solarized-emacs/pull/453): Match the flymake `error`, `warning` and `note` faces to their flycheck counterparts.
+- [#451](https://github.com/bbatsov/solarized-emacs/pull/451): Highlight `font-lock-number-face` like `highlight-numbers-number`.
+
+## 2.0.4 (2023-12-04)
+
+- [#445](https://github.com/bbatsov/solarized-emacs/pull/445): Remove the `all-the-icons-dired-dir-face` definition.
+- [#448](https://github.com/bbatsov/solarized-emacs/pull/448): Fix invalid `:style unspecified` box properties.
+
+## 2.0.3 (2023-08-20)
+
+- [#442](https://github.com/bbatsov/solarized-emacs/pull/442): Add a `corfu` face.
+
+## 2.0.2 (2023-08-05)
+
+- [#441](https://github.com/bbatsov/solarized-emacs/pull/441): Fix a byte-compiler warning.
+
+## 2.0.1 (2023-05-07)
+
+- [#433](https://github.com/bbatsov/solarized-emacs/pull/433): Add `ansi-color-*` faces (Emacs 28.1).
+- [#435](https://github.com/bbatsov/solarized-emacs/pull/435): Use extra-light instead of thin for line numbers.
+- [#439](https://github.com/bbatsov/solarized-emacs/pull/439): Update the terraform faces for the renamed faces in terraform-mode.
+
+## 2.0.0 (2022-06-18)
+
+- Major release with breaking API changes. The theme itself upgrades without issues; if you maintain a child theme, see the [upgrade guide](https://github.com/bbatsov/solarized-emacs/blob/master/UPGRADE-GUIDE.md).
+
+Older releases are documented in the [GitHub releases](https://github.com/bbatsov/solarized-emacs/releases).
diff --git a/README.md b/README.md
@@ -7,7 +7,16 @@
Solarized for Emacs is an Emacs 24bit theme making use of the
[Solarized palette](http://ethanschoonover.com/solarized), developed by Ethan Schoonover.
-You can find several screenshots of Solarized for Emacs
+Here are the two canonical variants:
+
+<table>
+ <tr>
+ <td align="center"><code>solarized-dark</code><br><img src="screenshots/solarized-dark.png" alt="solarized-dark" width="440"></td>
+ <td align="center"><code>solarized-light</code><br><img src="screenshots/solarized-light.png" alt="solarized-light" width="440"></td>
+ </tr>
+</table>
+
+You can find some more screenshots of Solarized for Emacs
[here](https://emacsthemes.com/themes/solarized-themes.html).
Solarized for Emacs supports officially Emacs 24+. The theme is implemented
@@ -52,6 +61,29 @@ following theme variants:
- `solarized-zenburn`
- `solarized-wombat-dark`
+<table>
+ <tr>
+ <td align="center"><code>solarized-dark-high-contrast</code><br><img src="screenshots/solarized-dark-high-contrast.png" alt="solarized-dark-high-contrast" width="380"></td>
+ <td align="center"><code>solarized-light-high-contrast</code><br><img src="screenshots/solarized-light-high-contrast.png" alt="solarized-light-high-contrast" width="380"></td>
+ </tr>
+ <tr>
+ <td align="center"><code>solarized-gruvbox-dark</code><br><img src="screenshots/solarized-gruvbox-dark.png" alt="solarized-gruvbox-dark" width="380"></td>
+ <td align="center"><code>solarized-gruvbox-light</code><br><img src="screenshots/solarized-gruvbox-light.png" alt="solarized-gruvbox-light" width="380"></td>
+ </tr>
+ <tr>
+ <td align="center"><code>solarized-selenized-dark</code><br><img src="screenshots/solarized-selenized-dark.png" alt="solarized-selenized-dark" width="380"></td>
+ <td align="center"><code>solarized-selenized-light</code><br><img src="screenshots/solarized-selenized-light.png" alt="solarized-selenized-light" width="380"></td>
+ </tr>
+ <tr>
+ <td align="center"><code>solarized-selenized-black</code><br><img src="screenshots/solarized-selenized-black.png" alt="solarized-selenized-black" width="380"></td>
+ <td align="center"><code>solarized-selenized-white</code><br><img src="screenshots/solarized-selenized-white.png" alt="solarized-selenized-white" width="380"></td>
+ </tr>
+ <tr>
+ <td align="center"><code>solarized-zenburn</code><br><img src="screenshots/solarized-zenburn.png" alt="solarized-zenburn" width="380"></td>
+ <td align="center"><code>solarized-wombat-dark</code><br><img src="screenshots/solarized-wombat-dark.png" alt="solarized-wombat-dark" width="380"></td>
+ </tr>
+</table>
+
The intent of this theme will always be that Solarized-dark/light will give you
the best possible experience. Palettes other than Solarized will never have
influence over theming decisions, they are complementary.
diff --git a/screenshots/solarized-dark-high-contrast.png b/screenshots/solarized-dark-high-contrast.png
Binary files differ.
diff --git a/screenshots/solarized-dark.png b/screenshots/solarized-dark.png
Binary files differ.
diff --git a/screenshots/solarized-gruvbox-dark.png b/screenshots/solarized-gruvbox-dark.png
Binary files differ.
diff --git a/screenshots/solarized-gruvbox-light.png b/screenshots/solarized-gruvbox-light.png
Binary files differ.
diff --git a/screenshots/solarized-light-high-contrast.png b/screenshots/solarized-light-high-contrast.png
Binary files differ.
diff --git a/screenshots/solarized-light.png b/screenshots/solarized-light.png
Binary files differ.
diff --git a/screenshots/solarized-selenized-black.png b/screenshots/solarized-selenized-black.png
Binary files differ.
diff --git a/screenshots/solarized-selenized-dark.png b/screenshots/solarized-selenized-dark.png
Binary files differ.
diff --git a/screenshots/solarized-selenized-light.png b/screenshots/solarized-selenized-light.png
Binary files differ.
diff --git a/screenshots/solarized-selenized-white.png b/screenshots/solarized-selenized-white.png
Binary files differ.
diff --git a/screenshots/solarized-wombat-dark.png b/screenshots/solarized-wombat-dark.png
Binary files differ.
diff --git a/screenshots/solarized-zenburn.png b/screenshots/solarized-zenburn.png
Binary files differ.
diff --git a/solarized-faces.el b/solarized-faces.el
@@ -169,6 +169,32 @@
:foreground ,base1
:underline ,s-line
:weight bold))))
+;;;;; diredfl
+ `(diredfl-autofile-name ((,class (:background ,base02))))
+ `(diredfl-compressed-file-name ((,class (:foreground ,violet))))
+ `(diredfl-compressed-file-suffix ((,class (:foreground ,violet))))
+ `(diredfl-date-time ((,class (:foreground ,base01))))
+ `(diredfl-deletion ((,class (:foreground ,red :weight bold))))
+ `(diredfl-deletion-file-name ((,class (:foreground ,red))))
+ `(diredfl-dir-heading ((,class (:foreground ,base03 :background ,blue :weight bold))))
+ `(diredfl-dir-name ((,class (:foreground ,blue))))
+ `(diredfl-dir-priv ((,class (:foreground ,blue))))
+ `(diredfl-exec-priv ((,class (:foreground ,green))))
+ `(diredfl-executable-tag ((,class (:foreground ,green))))
+ `(diredfl-file-name ((,class (:foreground ,base0))))
+ `(diredfl-file-suffix ((,class (:foreground ,base01))))
+ `(diredfl-flag-mark ((,class (:foreground ,yellow :weight bold))))
+ `(diredfl-flag-mark-line ((,class (:background ,base02))))
+ `(diredfl-ignored-file-name ((,class (:foreground ,base01))))
+ `(diredfl-link-priv ((,class (:foreground ,cyan))))
+ `(diredfl-no-priv ((,class (:foreground ,base01))))
+ `(diredfl-number ((,class (:foreground ,cyan))))
+ `(diredfl-other-priv ((,class (:foreground ,violet))))
+ `(diredfl-rare-priv ((,class (:foreground ,orange))))
+ `(diredfl-read-priv ((,class (:foreground ,green))))
+ `(diredfl-symlink ((,class (:foreground ,cyan :slant italic))))
+ `(diredfl-tagged-autofile-name ((,class (:background ,base02))))
+ `(diredfl-write-priv ((,class (:foreground ,yellow))))
;;;;; display-fill-column-indicator
`(fill-column-indicator ((,class :foreground ,base02 :weight semilight)))
;;;;; dropdown
@@ -302,6 +328,54 @@
`(android-mode-warning-face ((,class (:foreground ,yellow))))
;;;;; anzu-mode
`(anzu-mode-line ((,class (:foreground ,yellow :weight bold))))
+ `(anzu-mode-line-no-match ((,class (:foreground ,red :weight bold))))
+ `(anzu-match-1 ((,class (:foreground ,base03 :background ,green))))
+ `(anzu-match-2 ((,class (:foreground ,base03 :background ,orange))))
+ `(anzu-match-3 ((,class (:foreground ,base03 :background ,blue))))
+ `(anzu-replace-highlight ((,class (:foreground ,base03 :background ,red))))
+ `(anzu-replace-to ((,class (:foreground ,base03 :background ,green :weight bold))))
+;;;;; asciidoc-mode
+ `(asciidoc-document-title-face ((,class (:foreground ,blue :weight bold
+ ,@(when solarized-scale-markdown-headlines
+ (list :height solarized-height-plus-4))))))
+ `(asciidoc-title-1-face ((,class (:foreground ,blue :weight bold
+ ,@(when solarized-scale-markdown-headlines
+ (list :height solarized-height-plus-3))))))
+ `(asciidoc-title-2-face ((,class (:foreground ,blue :weight bold
+ ,@(when solarized-scale-markdown-headlines
+ (list :height solarized-height-plus-2))))))
+ `(asciidoc-title-3-face ((,class (:foreground ,blue :weight bold
+ ,@(when solarized-scale-markdown-headlines
+ (list :height solarized-height-plus-1))))))
+ `(asciidoc-title-4-face ((,class (:foreground ,blue :weight bold))))
+ `(asciidoc-title-5-face ((,class (:foreground ,blue :weight bold))))
+ `(asciidoc-markup-face ((,class (:foreground ,base01))))
+ `(asciidoc-code-face ((,class (:inherit fixed-pitch :foreground ,base01))))
+ `(asciidoc-link-face ((,class (:foreground ,yellow))))
+ `(asciidoc-link-mouse-face ((,class (:background ,base02))))
+ `(asciidoc-url-face ((,class (:foreground ,base01))))
+ `(asciidoc-cross-reference-face ((,class (:foreground ,yellow :underline t))))
+ `(asciidoc-anchor-face ((,class (:foreground ,cyan))))
+ `(asciidoc-superscript-face ((,class (:height 0.8))))
+ `(asciidoc-subscript-face ((,class (:height 0.8))))
+ `(asciidoc-metadata-key-face ((,class (:inherit font-lock-comment-face))))
+ `(asciidoc-metadata-value-face ((,class (:inherit default))))
+ `(asciidoc-footnote-marker-face ((,class (:foreground ,base01))))
+ `(asciidoc-footnote-text-face ((,class (:inherit default))))
+ `(asciidoc-highlight-face ((,class (:foreground ,base03 :background ,yellow))))
+ `(asciidoc-strike-through-face ((,class (:strike-through t))))
+ `(asciidoc-underline-face ((,class (:underline t))))
+ `(asciidoc-overline-face ((,class (:overline t))))
+ `(asciidoc-admonition-note-label-face ((,class (:foreground ,blue :weight bold))))
+ `(asciidoc-admonition-note-face ((,class (:background ,s-diff-C-bg :extend t))))
+ `(asciidoc-admonition-tip-label-face ((,class (:foreground ,green :weight bold))))
+ `(asciidoc-admonition-tip-face ((,class (:background ,s-diff-B-bg :extend t))))
+ `(asciidoc-admonition-important-label-face ((,class (:foreground ,violet :weight bold))))
+ `(asciidoc-admonition-important-face ((,class (:background ,base02 :extend t))))
+ `(asciidoc-admonition-caution-label-face ((,class (:foreground ,yellow :weight bold))))
+ `(asciidoc-admonition-caution-face ((,class (:background ,base02 :extend t))))
+ `(asciidoc-admonition-warning-label-face ((,class (:foreground ,red :weight bold))))
+ `(asciidoc-admonition-warning-face ((,class (:background ,s-diff-A-bg :extend t))))
;;;;; auctex
`(font-latex-bold-face ((,class (:inherit bold :foreground ,base1))))
`(font-latex-doctex-documentation-face ((,class (:background unspecified))))
@@ -367,6 +441,14 @@
`(bm-fringe-face ((,class (:overline ,base0))))
`(bm-fringe-persistent-face ((,class (:overline ,base0))))
`(bm-persistent-face ((,class (:overline ,base0))))
+;;;;; breadcrumb
+ `(breadcrumb-face ((,class (:foreground ,base01))))
+ `(breadcrumb-imenu-leaf-face ((,class (:foreground ,blue :weight bold))))
+ `(breadcrumb-imenu-crumbs-face ((,class (:foreground ,base01))))
+ `(breadcrumb-imenu-base-face ((,class (:foreground ,base01 :weight bold))))
+ `(breadcrumb-project-leaf-face ((,class (:foreground ,base1 :weight bold))))
+ `(breadcrumb-project-crumbs-face ((,class (:foreground ,base01))))
+ `(breadcrumb-project-base-face ((,class (:foreground ,base01 :weight bold))))
;;;;; calfw
`(cfw:face-day-title ((,class (:background ,base02))))
`(cfw:face-annotation ((,class (:inherit cfw:face-day-title :foreground ,yellow))))
@@ -399,12 +481,42 @@
`(cider-instrumented-face ((t (:box (:color ,red-l :line-width -1)))))
`(cider-traced-face ((t (:box (:color ,cyan :line-width -1)))))
`(cider-fringe-good-face ((t (:foreground ,green-l))))
+ `(cider-fringe-bad-face ((t (:foreground ,red))))
+ `(cider-fringe-stale-face ((t (:foreground ,yellow))))
+ `(cider-reader-conditional-face ((t (:foreground ,base01))))
+ `(cider-error-highlight-face ((t (:underline (:style wave :color ,red)))))
+ `(cider-warning-highlight-face ((t (:underline (:style wave :color ,yellow)))))
+ `(cider-debug-prompt-face ((t (:foreground ,magenta :weight bold))))
+ `(cider-stacktrace-error-class-face ((t (:foreground ,red :weight bold))))
+ `(cider-stacktrace-error-message-face ((t (:foreground ,base0 :slant italic))))
+ `(cider-stacktrace-face ((t (:foreground ,base0))))
+ `(cider-stacktrace-fn-face ((t (:foreground ,blue))))
+ `(cider-stacktrace-ns-face ((t (:foreground ,base01))))
+ `(cider-stacktrace-filter-active-face ((t (:foreground ,cyan :underline t))))
+ `(cider-stacktrace-filter-inactive-face ((t (:foreground ,base01))))
+ `(nrepl-message-1-face ((t (:foreground ,blue))))
+ `(nrepl-message-2-face ((t (:foreground ,violet))))
+ `(nrepl-message-3-face ((t (:foreground ,cyan))))
+ `(nrepl-message-4-face ((t (:foreground ,orange))))
+ `(nrepl-message-5-face ((t (:foreground ,green))))
+ `(nrepl-message-6-face ((t (:foreground ,yellow))))
+ `(nrepl-message-7-face ((t (:foreground ,red))))
+ `(nrepl-message-8-face ((t (:foreground ,magenta))))
;;;;; cider-repl-mode
`(cider-repl-err-output-face ((t (:inherit ,font-lock-warning-face :underline nil))))
+ `(cider-repl-prompt-face ((t (:foreground ,blue :weight bold))))
+ `(cider-repl-input-face ((t (:weight bold))))
+ `(cider-repl-result-face ((t (:foreground ,green))))
+ `(cider-repl-stdout-face ((t (:foreground ,base0))))
+ `(cider-repl-stderr-face ((t (:foreground ,red))))
;;;;; cider-test-mode
`(cider-test-failure-face ((t (:foreground ,orange :weight bold :underline t))))
`(cider-test-error-face ((t (:foreground ,red :weight bold :underline t))))
`(cider-test-success-face ((t (:foreground ,green :weight bold :underline t))))
+;;;;; clojure-mode
+ `(clojure-keyword-face ((,class (:foreground ,cyan))))
+ `(clojure-character-face ((,class (:inherit font-lock-string-face))))
+ `(clojure-discard-face ((,class (:inherit font-lock-comment-face))))
;;;;; coffee
`(coffee-mode-class-name ((,class (:foreground ,yellow :weight bold))))
`(coffee-mode-function-param ((,class (:foreground ,violet :slant italic))))
@@ -433,6 +545,12 @@
`(company-tooltip-search ((,class (:foreground ,magenta))))
`(company-tooltip-search-selection ((,class (:foreground ,magenta :weight bold))))
`(company-tooltip-selection ((,class (:weight bold))))
+;;;;; completion-preview
+ `(completion-preview ((,class (:foreground ,base01))))
+ `(completion-preview-common ((,class (:foreground ,base00))))
+ `(completion-preview-exact ((,class (:foreground ,base00 :underline t))))
+;;;;; copilot
+ `(copilot-overlay-face ((,class (:foreground ,base01 :slant italic))))
;;;;; corfu
`(corfu-default ((,class (:foreground ,base1 :background ,base02))))
`(corfu-current ((,class (:inherit corfu-default :weight bold :inverse-video t))))
@@ -503,6 +621,11 @@
`(deadgrep-meta-face ((,class (:inherit font-lock-comment-face))))
`(deadgrep-regexp-metachar-face ((,class (:inherit font-lock-constant-face))))
`(deadgrep-search-term-face ((,class (:inherit font-lock-variable-name-face))))
+;;;;; dictionary
+ `(dictionary-word-entry-face ((,class (:foreground ,blue :weight bold))))
+ `(dictionary-word-definition-face ((,class (:inherit default))))
+ `(dictionary-reference-face ((,class (:inherit link))))
+ `(dictionary-button-face ((,class (:inherit link))))
;;;;; diff
`(diff-added ((,class (:background ,s-diff-B-bg :foreground ,s-diff-B-fg))))
`(diff-changed ((t nil)))
@@ -579,11 +702,31 @@
`(eglot-inlay-hint-face ((,class (:foreground ,base01 :height 0.9))))
`(eglot-type-hint-face ((,class (:inherit eglot-inlay-hint-face :foreground ,cyan))))
`(eglot-parameter-hint-face ((,class (:inherit eglot-inlay-hint-face :foreground ,yellow))))
+;;;;; easy-kill
+ `(easy-kill-selection ((,class (:background ,base02 :extend t))))
+ `(easy-kill-origin ((,class (:foreground ,base03 :background ,red))))
;;;;; elfeed
`(elfeed-search-date-face ((,class (:foreground ,base01))))
`(elfeed-search-feed-face ((,class (:foreground ,base01))))
+ `(elfeed-search-filter-face ((,class (:foreground ,green))))
+ `(elfeed-search-last-update-face ((,class (:foreground ,cyan))))
+ `(elfeed-search-marked-face ((,class (:foreground ,magenta :weight bold))))
+ `(elfeed-search-separator-face ((,class (:foreground ,base01))))
`(elfeed-search-tag-face ((,class (:foreground ,base0))))
- `(elfeed-search-title-face ((,class (:foreground ,base0))))
+ `(elfeed-search-title-face ((,class (:foreground ,base01))))
+ `(elfeed-search-unread-count-face ((,class (:foreground ,base01))))
+ `(elfeed-search-unread-title-face ((,class (:foreground ,base1 :weight bold))))
+ `(elfeed-log-date-face ((,class (:foreground ,base01))))
+ `(elfeed-log-debug-level-face ((,class (:foreground ,green))))
+ `(elfeed-log-info-level-face ((,class (:foreground ,blue))))
+ `(elfeed-log-warn-level-face ((,class (:foreground ,yellow))))
+ `(elfeed-log-error-level-face ((,class (:foreground ,red))))
+ `(elfeed-show-author-face ((,class (:foreground ,green))))
+ `(elfeed-show-date-face ((,class (:foreground ,base01))))
+ `(elfeed-show-feed-face ((,class (:foreground ,cyan))))
+ `(elfeed-show-header-face ((,class (:foreground ,base01))))
+ `(elfeed-show-tags-face ((,class (:foreground ,violet))))
+ `(elfeed-show-title-face ((,class (:foreground ,base1 :weight bold))))
;;;;; elscreen
`(elscreen-tab-background-face ((,class (:background ,base03))))
@@ -737,6 +880,13 @@
;;;;; form-feed
`(form-feed-line
((,class (:strike-through ,s-line))))
+;;;;; erlang
+ `(erlang-font-lock-exported-function-name-face ((,class (:inherit font-lock-function-name-face :weight bold))))
+ `(erlang-edoc-heading ((,class (:foreground ,orange :weight bold))))
+ `(erlang-edoc-tag ((,class (:foreground ,base01))))
+ `(erlang-edoc-macro ((,class (:inherit font-lock-preprocessor-face))))
+ `(erlang-edoc-verbatim ((,class (:foreground ,green))))
+ `(erlang-edoc-todo ((,class (:inherit hl-todo))))
;;;;; git-commit
`(git-commit-comment-action ((,class (:foreground ,base0 :weight bold))))
`(git-commit-comment-branch ; obsolete
@@ -789,6 +939,7 @@
;;;;; git-timemachine
`(git-timemachine-minibuffer-author-face ((,class (:foreground ,orange))))
`(git-timemachine-minibuffer-detail-face ((,class (:foreground ,yellow))))
+ `(git-timemachine-commit ((,class (:foreground ,orange :weight bold))))
;;;;; gnus
`(gnus-group-mail-1 ((,class (:weight bold :inherit gnus-group-mail-1-empty))))
`(gnus-group-mail-1-empty ((,class (:inherit gnus-group-news-1-empty))))
@@ -864,10 +1015,34 @@
`(go-coverage-10 ((,class (:foreground ,cyan))))
`(go-coverage-covered ((,class (:foreground ,green))))
`(go-coverage-untracked ((,class (:foreground ,base01))))
+;;;;; gptel
+ `(gptel-context-highlight-face ((,class (:background ,base02 :extend t))))
+ `(gptel-context-deletion-face ((,class (:background ,s-diff-A-bg :extend t))))
+ `(gptel-rewrite-highlight-face ((,class (:background ,s-diff-C-bg :extend t))))
+ `(gptel-response-highlight ((,class (:background ,s-diff-heading-bg :extend t))))
+ `(gptel-response-fringe-highlight ((,class (:foreground ,orange))))
;;;;; guide-key
`(guide-key/highlight-command-face ((,class (:foreground ,blue))))
`(guide-key/key-face ((,class (:foreground ,base01))))
`(guide-key/prefix-command-face ((,class (:foreground ,green))))
+;;;;; haskell-mode
+ `(haskell-keyword-face ((,class (:inherit font-lock-keyword-face))))
+ `(haskell-type-face ((,class (:inherit font-lock-type-face))))
+ `(haskell-constructor-face ((,class (:inherit font-lock-type-face))))
+ `(haskell-definition-face ((,class (:inherit font-lock-function-name-face))))
+ `(haskell-operator-face ((,class (:inherit font-lock-variable-name-face))))
+ `(haskell-pragma-face ((,class (:inherit font-lock-preprocessor-face))))
+ `(haskell-quasi-quote-face ((,class (:inherit font-lock-string-face))))
+ `(haskell-literate-comment-face ((,class (:inherit font-lock-comment-face))))
+ `(haskell-hole-face ((,class (:foreground ,yellow :weight bold))))
+ `(haskell-error-face ((,class (:underline (:style wave :color ,red)))))
+ `(haskell-warning-face ((,class (:underline (:style wave :color ,yellow)))))
+ `(haskell-interactive-face-prompt ((,class (:foreground ,blue :weight bold))))
+ `(haskell-interactive-face-prompt-cont ((,class (:foreground ,cyan))))
+ `(haskell-interactive-face-compile-error ((,class (:foreground ,red :weight bold))))
+ `(haskell-interactive-face-compile-warning ((,class (:foreground ,yellow :weight bold))))
+ `(haskell-interactive-face-result ((,class (:foreground ,green))))
+ `(haskell-interactive-face-garbage ((,class (:foreground ,base01))))
;;;;; helm
;; These probably needs tweaking.
`(helm-apt-deinstalled ((,class (:foreground ,base01))))
@@ -974,6 +1149,9 @@
`(hl-line-face
((,class (,@(and (>= emacs-major-version 27) '(:extend t))
:background ,base02))))
+;;;;; hl-todo
+ `(hl-todo ((,class (:foreground ,orange :weight bold))))
+ `(hl-todo-flymake-type ((,class (:foreground ,orange :weight bold))))
;;;;; hydra
`(hydra-face-red ((,class (:foreground ,base1 :weight bold))))
`(hydra-face-blue ((,class (:foreground ,blue))))
@@ -994,6 +1172,8 @@
`(imenu-list-entry-face-1 ((,class (:inherit font-lock-function-name-face))))
`(imenu-list-entry-face-2 ((,class (:inherit font-lock-variable-name-face))))
`(imenu-list-entry-face-3 ((,class (:inherit font-lock-string-face))))
+;;;;; inf-ruby
+ `(inf-ruby-result-overlay-face ((t (:background unspecified))))
;;;;; info
`(info-title-1 ((,class (:foreground ,base1 :weight bold))))
`(info-title-2 ((,class (:foreground ,base1 :weight bold))))
@@ -1003,7 +1183,7 @@
`(info-header-node ((,class (:inherit info-node))))
`(info-header-xref ((,class (:inherit info-xref))))
`(info-index-match ((,class (:inherit match))))
- `(info-menu-header ((,class (:inherit variable-pitch :weight bold))))
+ `(info-menu-header ((,class (:inherit ,s-variable-pitch :weight bold))))
`(info-menu-star ((,class (:foreground ,orange))))
`(info-xref ((,class (:inherit link))))
`(info-xref-visited ((,class (:inherit (link-visited info-xref)))))
@@ -1062,6 +1242,12 @@
`(jabber-roster-user-xa ((,class (:slant italic :foreground ,magenta))))
;;;;; jedi
`(jedi:highlight-function-argument ((,class (:inherit bold))))
+;;;;; jinx
+ `(jinx-misspelled ((,class (:underline (:style wave :color ,red)))))
+ `(jinx-highlight ((,class (:inherit isearch))))
+ `(jinx-save ((,class (:foreground ,orange :weight bold))))
+ `(jinx-key ((,class (:foreground ,blue :weight bold))))
+ `(jinx-annotation ((,class (:foreground ,base01))))
;;;;; js2-mode
`(js2-error ((,class (:foreground ,red))))
`(js2-external-variable ((,class (:foreground ,orange))))
@@ -1090,6 +1276,9 @@
`(js3-private-function-call ((,class (:foreground ,yellow))))
`(js3-private-member ((,class (:foreground ,blue))))
`(js3-warning ((,class (:underline ,orange))))
+;;;;; keycast
+ `(keycast-key ((,class (:foreground ,base03 :background ,blue :weight bold))))
+ `(keycast-command ((,class (:weight bold))))
;;;;; langtool
`(langtool-errline ((,(append '((supports :underline (:style wave))) class)
(:underline (:style wave :color ,green) :inherit unspecified))
@@ -1386,6 +1575,8 @@
`(mingus-playlist-face ((,class (:foreground ,cyan ))))
`(mingus-song-file-face ((,class (:foreground ,yellow))))
`(mingus-stopped-face ((,class (:foreground ,red))))
+;;;;; mistty
+ `(mistty-fringe-face ((,class (:foreground ,base01))))
;;;;; moccur
`(moccur-current-line-face ((,class (:underline t))))
`(moccur-edit-done-face ((,class
@@ -1521,7 +1712,7 @@
`(org-agenda-date-weekend
((,class (:inherit org-agenda-date :inverse-video nil :background unspecified
:foreground ,base01 :weight unspecified
- :underline t :overline nil :box unspecified))))
+ :underline nil :overline nil :box unspecified))))
`(org-agenda-date-today
((,class (:inherit org-agenda-date :inverse-video t :weight bold
:underline unspecified :overline nil :box unspecified
@@ -1704,6 +1895,17 @@
`(rst-level-4 ((,class (:inherit org-level-4))))
`(rst-level-5 ((,class (:inherit org-level-5))))
`(rst-level-6 ((,class (:inherit org-level-6))))
+;;;;; ruler-mode
+ `(ruler-mode-default ((,class (:inherit default :foreground ,base01 :background ,base02))))
+ `(ruler-mode-pad ((,class (:inherit ruler-mode-default :background ,base03))))
+ `(ruler-mode-margins ((,class (:inherit ruler-mode-default :foreground ,base1))))
+ `(ruler-mode-fringes ((,class (:inherit ruler-mode-default :foreground ,green))))
+ `(ruler-mode-column-number ((,class (:inherit ruler-mode-default :foreground ,base0))))
+ `(ruler-mode-fill-column ((,class (:inherit ruler-mode-default :foreground ,red))))
+ `(ruler-mode-comment-column ((,class (:inherit ruler-mode-default :foreground ,green))))
+ `(ruler-mode-goal-column ((,class (:inherit ruler-mode-default :foreground ,cyan))))
+ `(ruler-mode-tab-stop ((,class (:inherit ruler-mode-default :foreground ,violet))))
+ `(ruler-mode-current-column ((,class (:inherit ruler-mode-default :foreground ,yellow :weight bold))))
;;;;; selectrum-mode
`(selectrum-current-candidate ((,class (:weight bold :background ,base02 :underline t))))
`(selectrum-primary-highlight ((,class (:foreground ,yellow))))
@@ -1983,6 +2185,14 @@
`(vertico-multiline ((,class (:foreground ,base01))))
;;;;; volatile highlights
`(vhl/default-face ((,class (:background ,green-lc :foreground ,green-hc))))
+;;;;; vundo
+ `(vundo-node ((,class (:foreground ,base01))))
+ `(vundo-stem ((,class (:foreground ,base01))))
+ `(vundo-branch-stem ((,class (:foreground ,base00))))
+ `(vundo-highlight ((,class (:foreground ,blue :weight bold))))
+ `(vundo-saved ((,class (:foreground ,green))))
+ `(vundo-last-saved ((,class (:foreground ,green :weight bold))))
+ `(vundo-diff-highlight ((,class (:foreground ,orange :weight bold))))
;;;;; w3m
`(w3m-anchor ((,class (:inherit link))))
`(w3m-arrived-anchor ((,class (:inherit link-visited))))
diff --git a/solarized-theme.el b/solarized-theme.el
@@ -5,7 +5,7 @@
;; Author: Bozhidar Batsov <bozhidar@batsov.dev>
;; Author: Thomas Frössman <thomasf@jossystem.se>
;; URL: http://github.com/bbatsov/solarized-emacs
-;; Version: 2.1.0
+;; Version: 2.2.0
;; Package-Requires: ((emacs "24.1"))
;; Keywords: convenience, themes, solarized
diff --git a/solarized.el b/solarized.el
@@ -403,11 +403,15 @@ customize the resulting theme."
s-diff-fine-C-bg s-diff-fine-C-fg s-diff-context-fg
s-diff-heading-bg s-diffstat-added-fg
s-diffstat-changed-fg s-diffstat-removed-fg)
- ;; NOTE: `custom--inhibit-theme-enable' turn-off needed
- ;; childtheme works well discussed in #352
- (let ((custom--inhibit-theme-enable nil))
- ,@solarized-definition
- ,@(eval childtheme-sexp)))))
+ ;; Emit the child theme's faces *before* the base definition.
+ ;; `custom-theme-set-faces' keeps the first spec it sees for a
+ ;; given face, so this is what lets a child theme override the
+ ;; base faces (#352). Doing it through ordering, rather than by
+ ;; binding `custom--inhibit-theme-enable' to nil, means we no
+ ;; longer force the faces to apply during loading and thus honor
+ ;; `load-theme's NO-ENABLE argument (#420, #325).
+ ,@(eval childtheme-sexp)
+ ,@solarized-definition)))
(defmacro solarized-with-color-variables-with-palette (variant theme-name core-palette &optional childtheme-sexp)
"Create a VARIANT of the theme named THEME-NAME with CORE-PALETTE.