branch: elpa/zenburn-theme
commit e5a2a9dcc96e6f16c34cfb931cb36fff19e58f09
Author: Bozhidar Batsov <[email protected]>
Commit: Bozhidar Batsov <[email protected]>
Replace z-variable-pitch shim with a real face
Introduce a defface zenburn-variable-pitch and have the 24 heading
faces (adoc-title-*, org-level-*, org-document-title, outline-1..8)
inherit from it directly. The theme rebinds zenburn-variable-pitch's
:inherit slot at load time based on zenburn-use-variable-pitch, so
the boolean toggle keeps working exactly as before.
Bonus: users can now M-x customize-face zenburn-variable-pitch for
finer-grained control than the boolean affords (e.g. inherit from a
specific font, set a different :height, etc.).
---
CHANGELOG.md | 1 +
zenburn-theme.el | 61 +++++++++++++++++++++++++++++++-------------------------
2 files changed, 35 insertions(+), 27 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 52797eb61e..b0a070305a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -35,6 +35,7 @@
### Changes
+* Replace the internal `z-variable-pitch` macro shim with a real
`zenburn-variable-pitch` face that headings inherit from.
`zenburn-use-variable-pitch` still toggles the default behavior (inherit
`variable-pitch` vs `default`), and users can now also customize
`zenburn-variable-pitch` directly via `M-x customize-face` for finer-grained
control.
* Promote `zenburn-use-variable-pitch`, `zenburn-scale-org-headlines`, and
`zenburn-scale-outline-headlines` from plain `defvar`s to boolean `defcustom`s
so they show up in `M-x customize-group RET zenburn-theme` and accept safe
file-local values.
* Drop the legacy `((class color) (min-colors 89))` display-class dance and
the obsolete low-color terminal fallbacks (`:inverse-video`, swapped fg/bg,
monochrome `:weight bold`) for `mode-line`, `region`, `diff-header`,
`diff-file-header`, `hl-line`, `hl-line-face`, and `hl-sexp-face`. Modern
terminals all qualify as full-color, so the branching no longer earns its keep.
* Drop `zenburn-height-minus-1`, which has been defined but never referenced
anywhere in the theme.
diff --git a/zenburn-theme.el b/zenburn-theme.el
index f79eb02521..08dccd0cdc 100644
--- a/zenburn-theme.el
+++ b/zenburn-theme.el
@@ -108,6 +108,14 @@ for the list of semantic names that ship with the theme."
:group 'zenburn-theme
:package-version '(zenburn . "2.6"))
+(defface zenburn-variable-pitch '((t :inherit default))
+ "Face used by Zenburn for headings and titles that should optionally
+render in a variable-pitch font. The theme rebinds this to inherit
+from `variable-pitch' when `zenburn-use-variable-pitch' is non-nil.
+Customize this face directly if you want finer-grained control than
+the boolean toggle provides."
+ :group 'zenburn-theme)
+
;;; Color Palette
(defvar zenburn-default-colors-alist
@@ -220,9 +228,7 @@ the just-introduced bindings."
,@(mapcar (lambda (cons)
(list (intern (car cons)) (cdr cons)))
(append zenburn-default-semantic-colors-alist
- zenburn-override-semantic-colors-alist))
- (z-variable-pitch (if zenburn-use-variable-pitch
- 'variable-pitch 'default)))
+ zenburn-override-semantic-colors-alist)))
,@body))
;;; Theme Faces
@@ -252,6 +258,7 @@ the just-introduced bindings."
`(warning ((t (:foreground ,zenburn-warning :weight bold))))
`(tooltip ((t (:foreground ,zenburn-fg :background ,zenburn-bg+1))))
`(read-multiple-choice-face ((t (:foreground ,zenburn-yellow :weight
bold))))
+ `(zenburn-variable-pitch ((t (:inherit ,(if zenburn-use-variable-pitch
'variable-pitch 'default)))))
;;;;; ansi-colors
`(ansi-color-black ((t (:foreground ,zenburn-bg
:background ,zenburn-bg-1))))
@@ -437,21 +444,21 @@ the just-introduced bindings."
`(adoc-subscript-face ((t (:foreground ,zenburn-fg :height 0.8))))
`(adoc-superscript-face ((t (:foreground ,zenburn-fg :height 0.8))))
`(adoc-table-face ((t (:foreground ,zenburn-green+2))))
- `(adoc-title-face ((t (:inherit ,z-variable-pitch :foreground
,zenburn-orange :weight bold))))
- `(adoc-title-0-face ((t (:inherit ,z-variable-pitch :foreground
,zenburn-blue :weight bold
+ `(adoc-title-face ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-orange :weight bold))))
+ `(adoc-title-0-face ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-blue :weight bold
,@(when zenburn-scale-outline-headlines
(list :height
zenburn-height-plus-4))))))
- `(adoc-title-1-face ((t (:inherit ,z-variable-pitch :foreground
,zenburn-orange :weight bold
+ `(adoc-title-1-face ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-orange :weight bold
,@(when zenburn-scale-outline-headlines
(list :height
zenburn-height-plus-3))))))
- `(adoc-title-2-face ((t (:inherit ,z-variable-pitch :foreground
,zenburn-green+4 :weight bold
+ `(adoc-title-2-face ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-green+4 :weight bold
,@(when zenburn-scale-outline-headlines
(list :height
zenburn-height-plus-2))))))
- `(adoc-title-3-face ((t (:inherit ,z-variable-pitch :foreground
,zenburn-blue-1 :weight bold
+ `(adoc-title-3-face ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-blue-1 :weight bold
,@(when zenburn-scale-outline-headlines
(list :height
zenburn-height-plus-1))))))
- `(adoc-title-4-face ((t (:inherit ,z-variable-pitch :foreground
,zenburn-yellow-2 :weight bold))))
- `(adoc-title-5-face ((t (:inherit ,z-variable-pitch :foreground
,zenburn-cyan :weight bold))))
+ `(adoc-title-4-face ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-yellow-2 :weight bold))))
+ `(adoc-title-5-face ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-cyan :weight bold))))
`(adoc-typewriter-face ((t (:foreground ,zenburn-green+1))))
`(adoc-value-face ((t (:foreground ,zenburn-green))))
`(adoc-verbatim-face ((t (:background ,zenburn-bg-05 :extend t))))
@@ -1630,22 +1637,22 @@ the just-introduced bindings."
`(org-formula ((t (:foreground ,zenburn-yellow-2))))
`(org-headline-done ((t (:foreground ,zenburn-green+3))))
`(org-hide ((t (:foreground ,zenburn-bg))))
- `(org-level-1 ((t (:inherit ,z-variable-pitch :foreground ,zenburn-orange
+ `(org-level-1 ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-orange
,@(when zenburn-scale-org-headlines
(list :height zenburn-height-plus-4))))))
- `(org-level-2 ((t (:inherit ,z-variable-pitch :foreground ,zenburn-green+4
+ `(org-level-2 ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-green+4
,@(when zenburn-scale-org-headlines
(list :height zenburn-height-plus-3))))))
- `(org-level-3 ((t (:inherit ,z-variable-pitch :foreground ,zenburn-blue-1
+ `(org-level-3 ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-blue-1
,@(when zenburn-scale-org-headlines
(list :height zenburn-height-plus-2))))))
- `(org-level-4 ((t (:inherit ,z-variable-pitch :foreground ,zenburn-yellow-2
+ `(org-level-4 ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-yellow-2
,@(when zenburn-scale-org-headlines
(list :height zenburn-height-plus-1))))))
- `(org-level-5 ((t (:inherit ,z-variable-pitch :foreground ,zenburn-cyan))))
- `(org-level-6 ((t (:inherit ,z-variable-pitch :foreground
,zenburn-green+2))))
- `(org-level-7 ((t (:inherit ,z-variable-pitch :foreground ,zenburn-red+2))))
- `(org-level-8 ((t (:inherit ,z-variable-pitch :foreground
,zenburn-magenta))))
+ `(org-level-5 ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-cyan))))
+ `(org-level-6 ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-green+2))))
+ `(org-level-7 ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-red+2))))
+ `(org-level-8 ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-magenta))))
`(org-link ((t (:foreground ,zenburn-yellow-2 :underline t))))
`(org-quote ((t (:background ,zenburn-bg+05 :extend t))))
`(org-scheduled ((t (:foreground ,zenburn-green+4))))
@@ -1665,7 +1672,7 @@ the just-introduced bindings."
`(org-mode-line-clock-overrun ((t (:foreground ,zenburn-bg :background
,zenburn-red-1))))
`(org-ellipsis ((t (:foreground ,zenburn-yellow-1 :underline t))))
`(org-footnote ((t (:foreground ,zenburn-cyan :underline t))))
- `(org-document-title ((t (:inherit ,z-variable-pitch :foreground
,zenburn-blue
+ `(org-document-title ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-blue
:weight bold
,@(when zenburn-scale-org-headlines
(list :height
zenburn-height-plus-4))))))
@@ -1685,22 +1692,22 @@ the just-introduced bindings."
`(org-ref-glossary-face ((t :underline t)))
`(org-ref-acronym-face ((t :underline t)))
;;;;; outline
- `(outline-1 ((t (:inherit ,z-variable-pitch :foreground ,zenburn-orange
+ `(outline-1 ((t (:inherit zenburn-variable-pitch :foreground ,zenburn-orange
,@(when zenburn-scale-outline-headlines
(list :height zenburn-height-plus-4))))))
- `(outline-2 ((t (:inherit ,z-variable-pitch :foreground ,zenburn-green+4
+ `(outline-2 ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-green+4
,@(when zenburn-scale-outline-headlines
(list :height zenburn-height-plus-3))))))
- `(outline-3 ((t (:inherit ,z-variable-pitch :foreground ,zenburn-blue-1
+ `(outline-3 ((t (:inherit zenburn-variable-pitch :foreground ,zenburn-blue-1
,@(when zenburn-scale-outline-headlines
(list :height zenburn-height-plus-2))))))
- `(outline-4 ((t (:inherit ,z-variable-pitch :foreground ,zenburn-yellow-2
+ `(outline-4 ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-yellow-2
,@(when zenburn-scale-outline-headlines
(list :height zenburn-height-plus-1))))))
- `(outline-5 ((t (:inherit ,z-variable-pitch :foreground ,zenburn-cyan))))
- `(outline-6 ((t (:inherit ,z-variable-pitch :foreground ,zenburn-green+2))))
- `(outline-7 ((t (:inherit ,z-variable-pitch :foreground ,zenburn-red-4))))
- `(outline-8 ((t (:inherit ,z-variable-pitch :foreground ,zenburn-blue-4))))
+ `(outline-5 ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-cyan))))
+ `(outline-6 ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-green+2))))
+ `(outline-7 ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-red-4))))
+ `(outline-8 ((t (:inherit zenburn-variable-pitch :foreground
,zenburn-blue-4))))
;;;;; p4
`(p4-depot-added-face ((t :inherit diff-added)))
`(p4-depot-branch-op-face ((t :inherit diff-changed)))