Skip to content

Instantly share code, notes, and snippets.

@prozacchiwawa
Created March 10, 2021 02:38
Show Gist options
  • Save prozacchiwawa/1bc2b19be7255348f0bc1ce7aed82013 to your computer and use it in GitHub Desktop.
Save prozacchiwawa/1bc2b19be7255348f0bc1ce7aed82013 to your computer and use it in GitHub Desktop.
Very hacky adaptation of an emacs dark theme for brighter, funner colors.
;;; mood-dark-theme.el - Coding palette based on atari 2600 colors. based on the following
;; emacs theme:
;; spacemax-common.el --- Color theme with a dark and light versions.
;; Copyright (C) 2019 Michael Camilleri
;; Author: Michael Camilleri
;; URL: <https://github.com/pyrmont/spacemax-theme>
;;
;; Version: 0.1
;; Keywords: color, theme
;; Package-Requires: ((emacs "24"))
;; This theme is a fork of spacemacs-theme by Nasser Alshammari. The original
;; version was initially created with the help of emacs-theme-generator,
;; <https://github.com/mswift42/theme-creator>.
;; This program is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;; This file is not part of Emacs.
;;; Commentary:
;; This is a color theme for spacemacs <https://github.com/syl20bnr/spacemacs>.
;; It comes with two versions, dark and light and should work well in
;; a 256 color terminal.
;;; Code:
(defmacro dyn-let (varlist fn setfaces)
(list 'let (append varlist (funcall fn)) setfaces))
(defgroup mood-theme nil
"Mood-theme options."
:group 'faces)
(defcustom mood-theme-comment-bg nil
"Use a background for comment lines."
:type 'boolean
:group 'mood-theme)
(defcustom mood-theme-comment-italic nil
"Enable italics for comments and also disable background."
:type 'boolean
:group 'mood-theme)
(defcustom mood-theme-keyword-italic nil
"Enable italics for keywords."
:type 'boolean
:group 'mood-theme)
(defcustom mood-theme-org-agenda-height nil
"If non-nil, use varying text heights for agenda items.
Note that if you change this to a non-nil value, you may want to
also adjust the value of `org-agenda-tags-column'. If that is set
to 'auto, tags may not be properly aligned. "
:type 'boolean
:group 'mood-theme)
(defcustom mood-theme-org-height t
"Use varying text heights for org headings."
:type 'boolean
:group 'mood-theme)
(defcustom mood-theme-org-bold t
"Inherit text bold for org headings"
:type 'boolean
:group 'mood-theme)
(defcustom mood-theme-org-priority-bold t
"Inherit text bold for priority items in agenda view"
:type 'boolean
:group 'mood-theme)
(defcustom mood-theme-org-highlight nil
"Highlight org headings."
:type 'boolean
:group 'mood-theme)
(defcustom mood-theme-custom-colors nil
"Specify a list of custom colors."
:type 'alist
:group 'mood-theme)
(defcustom mood-theme-underline-parens t
"If non-nil, underline matching parens when using `show-paren-mode' or similar."
:type 'boolean
:group 'mood-theme)
(defun true-color-p ()
(or
(display-graphic-p)
(= (tty-display-color-cells) 16777216)))
(defun custom-colors-override ()
(mapcar (lambda (x) (list (car x) (cdr x)))
mood-theme-custom-colors))
(setq colors '(
"#000000"
"#404040"
"#6c6c6c"
"#909090"
"#b0b0b0"
"#c8c8c8"
"#dcdcdc"
"#ececec"
"#444400"
"#646410"
"#848424"
"#a0a034"
"#b8b840"
"#d0d050"
"#e8e85c"
"#fcfc68"
"#702800"
"#844414"
"#985c28"
"#ac783c"
"#bc8c4c"
"#cca05c"
"#dcb468"
"#ecc878"
"#880000"
"#9c2020"
"#b03c3c"
"#c05858"
"#d07070"
"#e08888"
"#eca0a0"
"#fcb4b4"
"#78005c"
"#8c2074"
"#a03c88"
"#b0589c"
"#c070b0"
"#d084c0"
"#dc8cd0"
"#ecb0e0"
"#480078"
"#602090"
"#783ca4"
"#8c58b8"
"#a070cc"
"#b484dc"
"#c49cec"
"#d4b0fc"
"#140084"
"#302098"
"#4c3cac"
"#6858c0"
"#7c70d0"
"#9488e0"
"#a8a0ec"
"#bcb4fc"
"#000088"
"#1c209c"
"#3840b0"
"#505cc0"
"#6874d0"
"#7c8ce0"
"#90a4ec"
"#a4b8fc"
"#00187c"
"#1c3890"
"#3854a8"
"#5070bc"
"#6888cc"
"#7c9cdc"
"#90b4ec"
"#a4c8fc"
"#002c5c"
"#1c4c78"
"#386890"
"#5084ac"
"#689cc0"
"#7cb4d4"
"#90cce8"
"#a4e0fc"
"#003c2c"
"#1c5c48"
"#387c64"
"#509c80"
"#68b494"
"#7cd0ac"
"#90e4c0"
"#a4fcd4"
"#003c00"
"#205c20"
"#407c40"
"#5c9c5c"
"#74b474"
"#8cd08c"
"#a4e4a4"
"#b8fcb8"
"#143800"
"#345c1c"
"#507c38"
"#6c9850"
"#84b468"
"#9ccc7c"
"#b4e490"
"#c8fca4"
"#2c3000"
"#4c501c"
"#687034"
"#848c4c"
"#9ca864"
"#b4c078"
"#ccd488"
"#e0ec9c"
"#442800"
"#644818"
"#846830"
"#a08444"
"#b89c58"
"#d0b46c"
"#e8cc7c"
"#fce08c"
"#eeeeee"
"#ffffff"
))
(defun nth-of (n l)
(if (< n 1) (car l)
(nth-of (- n 1) (cdr l))))
(defun color (r n) (nth-of (+ (* r 8) n) colors))
(setq grey 0)
(setq yellow 1)
(setq orange 2)
(setq red 3)
(setq crimson 4)
(setq violet 5)
(setq indigo 6)
(setq royal 7)
(setq cobalt 8)
(setq blue 9)
(setq aqua 10)
(setq sea 11)
(setq green 12)
(setq pine 13)
(setq sage 14)
(setq dust 15)
(setq status-bar-bg-gui (color blue 0))
(setq status-bar-bg-cui (color blue 0))
(setq status-bar-fg-gui (color blue 4))
(setq status-bar-fg-cui (color blue 4))
(setq status-bar-dim-fg-gui (color grey 4))
(setq status-bar-dim-fg-cui (color grey 4))
(setq status-bar-dim-bg-gui (color grey 1))
(setq status-bar-dim-bg-cui (color grey 1))
(setq side-border-bg-gui (color aqua 0))
(setq side-border-bg-cui (color aqua 0))
(setq text-bg-gui (color blue 0))
(setq text-bg-cui (color blue 0))
(defun create-mood-theme (theme-name)
(dyn-let ((class '((class color) (min-colors 89))) ;; ~~ Dark ~~
;; GUI TER
;; generic
(fringe (if (true-color-p) status-bar-bg-gui status-bar-bg-cui))
(act1 (if (true-color-p) status-bar-bg-gui status-bar-bg-cui))
(act2 (if (true-color-p) status-bar-dim-bg-gui status-bar-dim-bg-cui))
(normal-text (if (true-color-p) (color 15 0) (color 15 0)))
(bright-text (if (true-color-p) (color 15 1) (color 15 1)))
(base (if (true-color-p) status-bar-fg-gui status-bar-fg-cui))
(base-dim (if (true-color-p) status-bar-dim-fg-gui status-bar-dim-fg-cui))
(bg1 (if (true-color-p) status-bar-dim-bg-gui status-bar-dim-bg-cui))
(bg2 (if (true-color-p) text-bg-gui text-bg-cui))
(bg3 (if (true-color-p) "#100a14" "#121212"))
(bg4 (if (true-color-p) "#0a0814" "#080808"))
(border (if (true-color-p) "#5d4d7a" "#111111"))
(cblk (if (true-color-p) "#cbc1d5" "#b2b2b2"))
(cblk-bg (if (true-color-p) "#2f2b33" "#262626"))
(cblk-ln (if (true-color-p) "#827591" "#af5faf"))
(cblk-ln-bg (if (true-color-p) "#373040" "#333333"))
(cursor (if (true-color-p) (color green 4) (color green 4)))
(comp (if (true-color-p) (color indigo 4) (color indigo 4)))
(war (if (true-color-p) (color yellow 5) (color yellow 5)))
(err (if (true-color-p) (color orange 4) (color orange 4)))
(head1 (if (true-color-p) "#4f97d7" "#268bd2"))
(head1-bg (if (true-color-p) "#293239" "#262626"))
(head2 (if (true-color-p) "#2d9574" "#2aa198"))
(head2-bg (if (true-color-p) "#293235" "#262626"))
(head3 (if (true-color-p) "#67b11d" "#67b11d"))
(head3-bg (if (true-color-p) "#293235" "#262626"))
(head4 (if (true-color-p) "#b1951d" "#875f00"))
(head4-bg (if (true-color-p) "#32322c" "#262626"))
(highlight (if (true-color-p) "#444155" "#444444"))
(highlight-dim (if (true-color-p) "#3b314d" "#444444"))
(lnum (if (true-color-p) "#44505c" "#444444"))
(mat (if (true-color-p) "#86dc2f" "#86dc2f"))
(meta (if (true-color-p) "#9f8766" "#af875f"))
(suc (if (true-color-p) (color green 5) (color green 5)))
(ttip (if (true-color-p) "#9a9aba" "#888888"))
(ttip-sl (if (true-color-p) "#5e5079" "#333333"))
(ttip-bg (if (true-color-p) "#34323e" "#444444"))
(comment-bg (if (true-color-p) (color crimson 0) (color crimson 0)))
(comment-light (if (true-color-p) (color crimson 4) (color crimson 4)))
(const (if (true-color-p) (color sea 5) (color red 5)))
(keyword (if (true-color-p) (color orange 5) (color orange 5)))
(type (if (true-color-p) (color yellow 5) (color yellow 5)))
(func (if (true-color-p) (color pine 5) (color pine 5)))
(comment (if (true-color-p) (color red 5) (color sea 5)))
(var (if (true-color-p) (color aqua 5) (color aqua 5)))
(str (if (true-color-p) (color royal 6) (color royal 6)))
;; colors
(aqua (if (true-color-p) (color sea 5) (color sea 5)))
(aqua-bg (if (true-color-p) (color sea 1) (color sea 1)))
(green (if (true-color-p) (color green 5) (color green 5)))
(green-bg (if (true-color-p) (color green 1) (color green 1)))
(green-bg-s (if (true-color-p) (color green 0) (color green 0)))
(cyan (if (true-color-p) (color aqua 5) (color aqua 5)))
(red (if (true-color-p) (color red 5) (color red 5)))
(red-bg (if (true-color-p) (color red 1) (color red 1)))
(red-bg-s (if (true-color-p) (color red 0) (color red 0)))
(blue (if (true-color-p) (color blue 5) (color blue 5)))
(blue-bg (if (true-color-p) (color blue 1) (color blue 1)))
(blue-bg-s (if (true-color-p) (color blue 0) (color blue 0)))
(magenta (if (true-color-p) (color violet 5) (color violet 5)))
(yellow (if (true-color-p) (color yellow 6) (color yellow 6)))
(yellow-bg (if (true-color-p) (color yellow 2) (color yellow 2)))
(black (if (true-color-p) (color grey 0) (color grey 0)))
)
custom-colors-override
(custom-theme-set-faces
theme-name
;;;;; basics
`(cursor ((,class (:background ,cursor))))
`(custom-button ((,class :background ,bg2 :foreground ,base :box (:line-width 2 :style released-button))))
`(default ((,class (:background ,bg1 :foreground ,normal-text))))
`(default-italic ((,class (:italic t))))
`(error ((,class (:foreground ,err))))
`(eval-sexp-fu-flash ((,class (:background ,suc :foreground ,bg1))))
`(eval-sexp-fu-flash-error ((,class (:background ,err :foreground ,bg1))))
`(font-lock-builtin-face ((,class (:foreground ,keyword))))
`(font-lock-comment-face ((,class (:foreground ,(if mood-theme-comment-italic comment-light comment) :background ,(when mood-theme-comment-bg comment-bg) :slant ,(if mood-theme-comment-italic 'italic 'normal)))))
`(font-lock-constant-face ((,class (:foreground ,const))))
`(font-lock-doc-face ((,class (:foreground ,meta))))
`(font-lock-function-name-face ((,class (:foreground ,func :inherit bold))))
`(font-lock-keyword-face ((,class (:inherit bold :foreground ,keyword :slant ,(if mood-theme-keyword-italic 'italic 'normal)))))
`(font-lock-negation-char-face ((,class (:foreground ,const))))
`(font-lock-preprocessor-face ((,class (:foreground ,func))))
`(font-lock-reference-face ((,class (:foreground ,const))))
`(font-lock-string-face ((,class (:foreground ,str))))
`(font-lock-type-face ((,class (:foreground ,type :inherit bold))))
`(font-lock-variable-name-face ((,class (:foreground ,var))))
`(font-lock-warning-face ((,class (:foreground ,war :background ,bg1))))
`(fringe ((,class (:background ,fringe :foreground ,base))))
`(header-line ((,class :background ,bg4)))
`(highlight ((,class (:foreground ,base :background ,highlight))))
`(hl-line ((,class (:background ,bg2))))
`(isearch ((,class (:foreground ,bg1 :background ,mat))))
`(lazy-highlight ((,class (:background ,green-bg-s :weight normal))))
`(link ((,class (:foreground ,comment :underline t))))
`(link-visited ((,class (:foreground ,comp :underline t))))
`(match ((,class (:background ,highlight :foreground ,mat))))
`(minibuffer-prompt ((,class (:inherit bold :foreground ,keyword))))
`(page-break-lines ((,class (:foreground ,act2))))
`(region ((,class (:background ,highlight))))
`(secondary-selection ((,class (:background ,bg3))))
`(shadow ((,class (:foreground ,base-dim))))
`(success ((,class (:foreground ,suc))))
`(tooltip ((,class (:background ,ttip-sl :foreground ,base :bold nil :italic nil :underline nil))))
`(vertical-border ((,class (:foreground ,border))))
`(warning ((,class (:foreground ,war))))
;;;;; ansi-color-names
`(ansi-color-names-vector [,bg4 ,red ,green ,yellow ,blue ,magenta ,cyan ,base])
;;;;; auto-complete
`(ac-completion-face ((,class (:background ,ttip-bg :foreground ,ttip))))
;;;;; diff
`(diff-added ((,class :background nil :foreground ,green)))
`(diff-changed ((,class :background nil :foreground ,blue)))
`(diff-header ((,class :background ,cblk-ln-bg :foreground ,func)))
`(diff-file-header ((,class :background ,cblk-ln-bg :foreground ,cblk)))
`(diff-indicator-added ((,class :background nil :foreground ,green)))
`(diff-indicator-changed ((,class :background nil :foreground ,blue)))
`(diff-indicator-removed ((,class :background nil :foreground ,red)))
`(diff-refine-added ((,class :background ,green :foreground ,bg1)))
`(diff-refine-changed ((,class :background ,blue :foreground ,bg1)))
`(diff-refine-removed ((,class :background ,red :foreground ,bg1)))
`(diff-removed ((,class :background nil :foreground ,red)))
;;;;; diff-hl
`(diff-hl-change ((,class :background ,blue-bg-s :foreground ,blue)))
`(diff-hl-delete ((,class :background ,red-bg-s :foreground ,red)))
`(diff-hl-insert ((,class :background ,green-bg-s :foreground ,green)))
;;;;; dired
`(dired-directory ((,class (:foreground ,keyword :background ,bg1 :inherit bold))))
`(dired-flagged ((,class (:foreground ,red))))
`(dired-header ((,class (:foreground ,comp :inherit bold))))
`(dired-ignored ((,class (:inherit shadow))))
`(dired-mark ((,class (:foreground ,comp :inherit bold))))
`(dired-marked ((,class (:foreground ,magenta :inherit bold))))
`(dired-perm-write ((,class (:foreground ,base :underline t))))
`(dired-symlink ((,class (:foreground ,cyan :background ,bg1 :inherit bold))))
`(dired-warning ((,class (:foreground ,war))))
;;;;; ediff
`(ediff-current-diff-A ((,class(:background ,red-bg :foreground ,red))))
`(ediff-current-diff-Ancestor ((,class(:background ,aqua-bg :foreground ,aqua))))
`(ediff-current-diff-B ((,class(:background ,green-bg :foreground ,green))))
`(ediff-current-diff-C ((,class(:background ,blue-bg :foreground ,blue))))
`(ediff-even-diff-A ((,class(:background ,bg3))))
`(ediff-even-diff-Ancestor ((,class(:background ,bg3))))
`(ediff-even-diff-B ((,class(:background ,bg3))))
`(ediff-even-diff-C ((,class(:background ,bg3))))
`(ediff-fine-diff-A ((,class(:background ,red :foreground ,bg1))))
`(ediff-fine-diff-Ancestor ((,class(:background nil :inherit bold))))
`(ediff-fine-diff-B ((,class(:background ,green :foreground ,bg1))))
`(ediff-fine-diff-C ((,class(:background ,blue :foreground ,bg1))))
`(ediff-odd-diff-A ((,class(:background ,bg4))))
`(ediff-odd-diff-Ancestor ((,class(:background ,bg4))))
`(ediff-odd-diff-B ((,class(:background ,bg4))))
`(ediff-odd-diff-C ((,class(:background ,bg4))))
;;;;; eldoc
`(eldoc-highlight-function-argument ((,class (:foreground ,mat :inherit bold))))
;;;;; man
`(Man-overstrike ((,class (:foreground ,head1 :inherit bold))))
`(Man-reverse ((,class (:foreground ,highlight))))
`(Man-underline ((,class (:foreground ,comp :underline t))))
;;;;; markdown
`(markdown-header-face-1 ((,class (:inherit bold :foreground ,head1 :height ,(if mood-theme-org-height 1.3 1.0) :background ,(when mood-theme-org-highlight head1-bg)))))
`(markdown-header-face-2 ((,class (:inherit bold :foreground ,head2 :height ,(if mood-theme-org-height 1.2 1.0) :background ,(when mood-theme-org-highlight head2-bg)))))
`(markdown-header-face-3 ((,class (:bold nil :foreground ,head3 :height ,(if mood-theme-org-height 1.1 1.0) :background ,(when mood-theme-org-highlight head3-bg)))))
`(markdown-header-face-4 ((,class (:bold nil :foreground ,head4 :background ,(when mood-theme-org-highlight head4-bg)))))
`(markdown-header-face-5 ((,class (:bold nil :foreground ,head1))))
`(markdown-header-face-6 ((,class (:bold nil :foreground ,head2))))
`(markdown-table-face ((,class (:foreground ,base :background ,head1-bg))))
;;;;; mode-line
`(mode-line ((,class (:foreground ,base :background ,act1 :box (:color ,border :line-width 1)))))
`(mode-line-buffer-id ((,class (:inherit bold :foreground ,func))))
`(mode-line-inactive ((,class (:foreground ,base :background ,bg1 :box (:color ,border :line-width 1)))))
;;;;; eshell
`(eshell-ls-archive ((,class (:foreground ,red :inherit bold))))
`(eshell-ls-backup ((,class (:inherit font-lock-comment-face))))
`(eshell-ls-clutter ((,class (:inherit font-lock-comment-face))))
`(eshell-ls-directory ((,class (:foreground ,keyword :inherit bold))))
`(eshell-ls-executable ((,class (:foreground ,suc :inherit bold))))
`(eshell-ls-missing ((,class (:inherit font-lock-warning-face))))
`(eshell-ls-product ((,class (:inherit font-lock-doc-face))))
`(eshell-ls-special ((,class (:foreground ,yellow :inherit bold))))
`(eshell-ls-symlink ((,class (:foreground ,cyan :inherit bold))))
`(eshell-ls-unreadable ((,class (:foreground ,base))))
`(eshell-prompt ((,class (:foreground ,keyword :inherit bold))))
;;;;; flycheck
`(flycheck-error
((,(append '((supports :underline (:style line))) class)
(:underline (:style line :color ,err)))
(,class (:foreground ,base :background ,err :inherit bold :underline t))))
`(flycheck-error-list-checker-name ((,class (:foreground ,keyword))))
`(flycheck-fringe-error ((,class (:foreground ,err :inherit bold))))
`(flycheck-fringe-info ((,class (:foreground ,keyword :inherit bold))))
`(flycheck-fringe-warning ((,class (:foreground ,war :inherit bold))))
`(flycheck-info
((,(append '((supports :underline (:style line))) class)
(:underline (:style line :color ,keyword)))
(,class (:foreground ,base :background ,keyword :inherit bold :underline t))))
`(flycheck-warning
((,(append '((supports :underline (:style line))) class)
(:underline (:style line :color ,war)))
(,class (:foreground ,base :background ,war :inherit bold :underline t))))
;;;;; flymake
`(flymake-error ((,(append '((supports :underline (:style line))) class)
(:underline (:style line :color ,err)))
(,class (:foreground ,base :background ,err :inherit bold :underline t))))
`(flymake-note ((,(append '((supports :underline (:style line))) class)
(:underline (:style wave :color ,keyword)))
(,class (:foreground ,base :background ,keyword :inherit bold :underline t))))
`(flymake-warning ((,(append '((supports :underline (:style line))) class)
(:underline (:style line :color ,war)))
(,class (:foreground ,base :background ,war :inherit bold :underline t))))
;;;;; flyspell
`(flyspell-incorrect ((,(append '((supports :underline (:style line))) class)
(:underline (:style wave :color ,war)))
(,class (:foreground ,base :background ,war :inherit bold :underline t))))
`(flyspell-duplicate ((,(append '((supports :underline (:style line))) class)
(:underline (:style wave :color ,keyword)))
(,class (:foreground ,base :background ,keyword :inherit bold :underline t))))
;;;;; info
`(info-header-xref ((,class (:foreground ,func :underline t))))
`(info-menu ((,class (:foreground ,suc))))
`(info-node ((,class (:foreground ,func :inherit bold))))
`(info-quoted-name ((,class (:foreground ,keyword))))
`(info-reference-item ((,class (:background nil :underline t :inherit bold))))
`(info-string ((,class (:foreground ,str))))
`(info-title-1 ((,class (:height 1.4 :inherit bold))))
`(info-title-2 ((,class (:height 1.3 :inherit bold))))
`(info-title-3 ((,class (:height 1.3))))
`(info-title-4 ((,class (:height 1.2))))
;;;;; linum-mode
`(linum ((,class (:foreground ,lnum :background ,bg2 :inherit default))))
;;;;; line-numbers
`(line-number ((,class (:foreground ,lnum :background ,bg2 :inherit default))))
`(line-number-current-line ((,class (:foreground ,base :background ,bg2 :inherit line-number))))
;;;;; linum-relative
`(linum-relative-current-face ((,class (:foreground ,comp))))
;;;;; ace-window
`(aw-leading-char-face ((,class (:foreground ,func :weight bold :height 2.0 :box (:line-width 1 :color ,keyword :style released-button)))))
;;;;; whitespace-mode
`(whitespace-empty ((,class (:background nil :foreground ,yellow))))
`(whitespace-indentation ((,class (:background nil :foreground ,war))))
`(whitespace-line ((,class (:background nil :foreground ,comp))))
`(whitespace-newline ((,class (:background nil :foreground ,comp))))
`(whitespace-space ((,class (:background nil :foreground ,act2))))
`(whitespace-space-after-tab ((,class (:background nil :foreground ,yellow))))
`(whitespace-space-before-tab ((,class (:background nil :foreground ,yellow))))
`(whitespace-tab ((,class (:background nil :foreground ,act2))))
`(whitespace-trailing ((,class (:background ,err :foreground ,war))))
;;;;; spaceline
`(spaceline-flycheck-error ((,class (:foreground ,err))))
`(spaceline-flycheck-info ((,class (:foreground ,keyword))))
`(spaceline-flycheck-warning((,class (:foreground ,war))))
`(spaceline-python-venv ((,class (:foreground ,comp))))
;;;;; spacemacs-specific
`(spacemacs-transient-state-title-face ((,class (:background nil :foreground ,comp :box nil :inherit bold))))
;;;;; ahs
`(ahs-face ((,class (:background ,highlight))))
`(ahs-plugin-whole-buffer-face ((,class (:background ,mat :foreground ,bg1))))
;;;;; anzu-mode
`(anzu-mode-line ((,class (:foreground ,yellow :inherit bold))))
;;;;; avy
`(avy-lead-face ((,class (:background ,green-bg :foreground ,green))))
`(avy-lead-face-0 ((,class (:background ,green-bg :foreground ,yellow))))
`(avy-lead-face-1 ((,class (:background ,green-bg :foreground ,magenta))))
`(avy-lead-face-2 ((,class (:background ,green-bg :foreground ,blue))))
;;;;; calfw
`(cfw:face-title ((,class (:foreground ,head1 :height 2.0 :weight bold :inherit variable-pitch))))
`(cfw:face-header ((,class (:foreground ,base :weight bold))))
`(cfw:face-saturday ((,class (:foreground ,base :weight bold))))
`(cfw:face-sunday ((,class (:foreground ,base :weight bold))))
`(cfw:face-holiday ((,class (:foreground ,head1 :weight bold))))
`(cfw:face-grid ((,class (:foreground ,border))))
`(cfw:face-default-content ((,class (:foreground ,green))))
`(cfw:face-periods ((,class (:foreground ,cyan))))
`(cfw:face-day-title ((,class (:background ,head1-bg))))
`(cfw:face-default-day ((,class (:foreground ,base :weight bold))))
`(cfw:face-annotation ((,class (:foreground ,aqua))))
`(cfw:face-disable ((,class (:foreground ,base-dim))))
`(cfw:face-today-title ((,class (:background ,blue :weight bold))))
`(cfw:face-today ((,class (:background ,head1-bg :weight bold))))
`(cfw:face-select ((,class (:background ,magenta :weight bold))))
`(cfw:face-toolbar ((,class (:foreground ,base :background ,bg1))))
`(cfw:face-toolbar-button-off ((,class (:foreground ,base :weight bold))))
`(cfw:face-toolbar-button-on ((,class (:foreground ,base :weight bold))))
;;;;; cider
`(cider-enlightened ((,class (:background nil :box (:color ,yellow :line-width -1 :style nil) :foreground ,yellow))))
`(cider-enlightened-local ((,class (:foreground ,yellow))))
`(cider-instrumented-face ((,class (:background nil :box (:color ,red :line-width -1 :style nil) :foreground ,red))))
`(cider-result-overlay-face ((,class (:background nil :box (:color ,blue :line-width -1 :style nil) :foreground ,blue))))
`(cider-test-error-face ((,class (:background ,war :foreground ,bg1))))
`(cider-test-failure-face ((,class (:background ,err :foreground ,bg1))))
`(cider-test-success-face ((,class (:background ,suc :foreground ,bg1))))
`(cider-traced-face ((,class :box (:color ,cyan :line-width -1 :style nil))))
;;;;; company
`(company-echo-common ((,class (:background ,base :foreground ,bg1))))
`(company-preview ((,class (:background ,ttip-bg :foreground ,ttip))))
`(company-preview-common ((,class (:background ,ttip-bg :foreground ,base))))
`(company-preview-search ((,class (:inherit match))))
`(company-scrollbar-bg ((,class (:background ,bg2))))
`(company-scrollbar-fg ((,class (:background ,act2))))
`(company-template-field ((,class (:inherit region))))
`(company-tooltip ((,class (:background ,ttip-bg :foreground ,ttip))))
`(company-tooltip-annotation ((,class (:foreground ,type))))
`(company-tooltip-common ((,class (:background ,ttip-bg :foreground ,keyword))))
`(company-tooltip-common-selection ((,class (:foreground ,base))))
`(company-tooltip-mouse ((,class (:inherit highlight))))
`(company-tooltip-search ((,class (:inherit match))))
`(company-tooltip-selection ((,class (:background ,ttip-sl :foreground ,base))))
;;;;; ein
`(ein:cell-input-area((,class (:background ,bg2))))
`(ein:cell-input-prompt ((,class (:foreground ,suc))))
`(ein:cell-output-prompt ((,class (:foreground ,err))))
`(ein:notification-tab-normal ((,class (:foreground ,keyword))))
`(ein:notification-tab-selected ((,class (:foreground ,suc :inherit bold))))
;;;;; elfeed
`(elfeed-search-date-face ((,class (:foreground ,head2))))
`(elfeed-search-feed-face ((,class (:foreground ,blue))))
`(elfeed-search-tag-face ((,class (:foreground ,func))))
`(elfeed-search-title-face ((,class (:foreground ,var))))
`(elfeed-search-unread-title-face ((,class (:foreground ,base))))
;;;;; enh-ruby
`(enh-ruby-op-face ((,class (:background ,bg1 :foreground ,base))))
`(enh-ruby-string-delimiter-face ((,class (:foreground ,str))))
;;;;; erc
`(erc-input-face ((,class (:foreground ,func))))
`(erc-my-nick-face ((,class (:foreground ,keyword))))
`(erc-nick-default-face ((,class (:foreground ,keyword))))
`(erc-nick-prefix-face ((,class (:foreground ,yellow))))
`(erc-notice-face ((,class (:foreground ,str))))
`(erc-prompt-face ((,class (:foreground ,mat :inherit bold))))
`(erc-timestamp-face ((,class (:foreground ,keyword))))
;;;;; ESS
`(ess-assignment-face ((,class (:foreground ,type :inherit bold))))
`(ess-backquoted-face ((,class (:foreground ,var))))
`(ess-constant-face ((,class (:inherit font-lock-constant-face))))
`(ess-f-t-face ((,class (:inherit font-lock-constant-face))))
`(ess-function-call-face ((,class (:foreground ,func))))
`(ess-keyword-face ((,class (:inherit font-lock-keyword-face))))
`(ess-matrix-face ((,class (:foreground ,base-dim))))
`(ess-modifiers-face ((,class (:foreground ,keyword))))
`(ess-numbers-face ((,class (:inherit font-lock-constant-face))))
`(ess-operator-face ((,class (:foreground ,var))))
`(ess-paren-face ((,class (:foreground ,blue))))
`(ess-r-control-flow-keyword-face ((,class (:foreground ,keyword))))
`(ess-r-signal-keyword-face ((,class (:foreground ,war))))
;;;;; evil
`(evil-ex-substitute-matches ((,class (:background ,red-bg :foreground ,red))))
`(evil-ex-substitute-replacement ((,class (:background ,green-bg :foreground ,green))))
;;;;; evil-goggles
`(evil-goggles--pulse-face ((,class (:background ,yellow-bg :foreground ,yellow))))
`(evil-goggles-change-face ((,class (:background ,blue-bg-s :foreground ,blue))))
`(evil-goggles-commentary-face ((,class (:background ,aqua-bg :foreground ,aqua))))
`(evil-goggles-delete-face ((,class (:background ,red-bg-s :foreground ,red))))
`(evil-goggles-fill-and-move-face ((,class (:background ,green-bg-s :foreground ,green))))
`(evil-goggles-indent-face ((,class (:background ,green-bg-s :foreground ,green))))
`(evil-goggles-join-face ((,class (:background ,green-bg-s :foreground ,green))))
`(evil-goggles-nerd-commenter-face ((,class (:background ,aqua-bg :foreground ,aqua))))
`(evil-goggles-paste-face ((,class (:background ,green-bg-s :foreground ,green))))
`(evil-goggles-record-macro-face ((,class (:background ,blue-bg-s :foreground ,blue))))
`(evil-goggles-replace-with-register-face ((,class (:background ,yellow-bg :foreground ,yellow))))
`(evil-goggles-set-marker-face ((,class (:background ,blue-bg-s :foreground ,blue))))
`(evil-goggles-shift-face ((,class (:background ,blue-bg-s :foreground ,blue))))
`(evil-goggles-surround-face ((,class (:background ,blue-bg-s :foreground ,blue))))
`(evil-goggles-yank-face ((,class (:background ,blue-bg-s :foreground ,blue))))
`(evil-goggles-undo-redo-add-face ((,class (:background ,green-bg-s :foreground ,green))))
`(evil-goggles-undo-redo-change-face ((,class (:background ,blue-bg-s :foreground ,blue))))
`(evil-goggles-undo-redo-remove-face ((,class (:background ,red-bg-s :foreground ,red))))
;;;;; jabber
`(jabber-activity-face ((,class (:inherit bold :foreground ,red))))
`(jabber-activity-personal-face ((,class (:inherit bold :foreground ,blue))))
`(jabber-chat-error ((,class (:inherit bold :foreground ,red))))
`(jabber-chat-prompt-foreign ((,class (:inherit bold :foreground ,red))))
`(jabber-chat-prompt-local ((,class (:inherit bold :foreground ,blue))))
`(jabber-chat-prompt-system ((,class (:inherit bold :foreground ,green))))
`(jabber-chat-text-foreign ((,class (:foreground ,base))))
`(jabber-chat-text-local ((,class (:foreground ,base))))
`(jabber-rare-time-face ((,class (:foreground ,green))))
`(jabber-roster-user-away ((,class (:foreground ,yellow))))
`(jabber-roster-user-chatty ((,class (:inherit bold :foreground ,green))))
`(jabber-roster-user-dnd ((,class (:foreground ,red))))
`(jabber-roster-user-error ((,class (:foreground ,err))))
`(jabber-roster-user-offline ((,class (:foreground ,base))))
`(jabber-roster-user-online ((,class (:inherit bold :foreground ,green))))
`(jabber-roster-user-xa ((,class (:foreground ,aqua))))
;;;;; git-gutter-fr
`(git-gutter-fr:added ((,class (:foreground ,green :inherit bold))))
`(git-gutter-fr:deleted ((,class (:foreground ,war :inherit bold))))
`(git-gutter-fr:modified ((,class (:foreground ,keyword :inherit bold))))
;;;;; git-timemachine
`(git-timemachine-minibuffer-detail-face ((,class (:foreground ,blue :inherit bold :background ,blue-bg))))
;;;;; gnus
`(gnus-emphasis-highlight-words ((,class (:background ,suc :foreground ,bg1))))
`(gnus-header-content ((,class (:foreground ,keyword))))
`(gnus-header-from ((,class (:foreground ,var))))
`(gnus-header-name ((,class (:foreground ,comp))))
`(gnus-header-subject ((,class (:foreground ,func :inherit bold))))
`(gnus-summary-cancelled ((,class (:background ,war :foreground ,bg1))))
;;;;; guide-key
`(guide-key/highlight-command-face ((,class (:foreground ,base))))
`(guide-key/key-face ((,class (:foreground ,keyword))))
`(guide-key/prefix-command-face ((,class (:foreground ,keyword :inherit bold))))
;;;;; helm
`(helm-bookmark-directory ((,class (:inherit helm-ff-directory))))
`(helm-bookmark-file ((,class (:foreground ,base))))
`(helm-bookmark-gnus ((,class (:foreground ,comp))))
`(helm-bookmark-info ((,class (:foreground ,comp))))
`(helm-bookmark-man ((,class (:foreground ,comp))))
`(helm-bookmark-w3m ((,class (:foreground ,comp))))
`(helm-buffer-directory ((,class (:foreground ,base :background ,bg1))))
`(helm-buffer-file ((,class (:foreground ,base :background ,bg1))))
`(helm-buffer-not-saved ((,class (:foreground ,comp :background ,bg1))))
`(helm-buffer-process ((,class (:foreground ,keyword :background ,bg1))))
`(helm-buffer-saved-out ((,class (:foreground ,base :background ,bg1))))
`(helm-buffer-size ((,class (:foreground ,base :background ,bg1))))
`(helm-candidate-number ((,class (:background ,bg1 :foreground ,keyword :inherit bold))))
`(helm-ff-directory ((,class (:foreground ,keyword :background ,bg1 :inherit bold))))
`(helm-ff-dotted-directory ((,class (:foreground ,keyword :background ,bg1 :inherit bold))))
`(helm-ff-dotted-symlink-directory ((,class (:foreground ,cyan :background ,bg1 :inherit bold))))
`(helm-ff-executable ((,class (:foreground ,suc :background ,bg1 :weight normal))))
`(helm-ff-file ((,class (:foreground ,base :background ,bg1 :weight normal))))
`(helm-ff-invalid-symlink ((,class (:foreground ,red :background ,bg1 :inherit bold))))
`(helm-ff-prefix ((,class (:foreground ,bg1 :background ,keyword :weight normal))))
`(helm-ff-symlink ((,class (:foreground ,cyan :background ,bg1 :inherit bold))))
`(helm-grep-cmd-line ((,class (:foreground ,base :background ,bg1))))
`(helm-grep-file ((,class (:foreground ,base :background ,bg1))))
`(helm-grep-finish ((,class (:foreground ,base :background ,bg1))))
`(helm-grep-lineno ((,class (:foreground ,type :background ,bg1 :inherit bold))))
`(helm-grep-match ((,class (:foreground nil :background nil :inherit helm-match))))
`(helm-header ((,class (:foreground ,base :background ,bg1 :underline nil :box nil))))
`(helm-header-line-left-margin ((,class (:foreground ,keyword :background ,nil))))
`(helm-match ((,class (:background ,head1-bg :foreground ,head1))))
`(helm-match-item ((,class (:background ,head1-bg :foreground ,head1))))
`(helm-moccur-buffer ((,class (:foreground ,var :background ,bg1))))
`(helm-selection ((,class (:background ,highlight))))
`(helm-selection-line ((,class (:background ,bg2))))
`(helm-separator ((,class (:foreground ,comp :background ,bg1))))
`(helm-source-header ((,class (:background ,comp :foreground ,bg1 :inherit bold))))
`(helm-time-zone-current ((,class (:foreground ,keyword :background ,bg1))))
`(helm-time-zone-home ((,class (:foreground ,comp :background ,bg1))))
`(helm-visible-mark ((,class (:foreground ,keyword :background ,bg3))))
;;;;; helm-swoop
`(helm-swoop-target-line-block-face ((,class (:foreground ,base :background ,highlight))))
`(helm-swoop-target-line-face ((,class (:background ,highlight))))
`(helm-swoop-target-word-face ((,class (:background ,highlight :foreground ,mat))))
;;;;; highlights
`(hi-green ((,class (:foreground ,green :background ,green-bg))))
`(hi-yellow ((,class (:foreground ,yellow :background ,yellow-bg))))
;;;;; highlight-indentation
`(highlight-indentation-face ((,class (:background ,comment-bg))))
;;;;; highlight-symbol
`(highlight-symbol-face ((,class (:background ,bg2))))
;;;;; hydra
`(hydra-face-blue ((,class (:foreground ,blue))))
`(hydra-face-red ((,class (:foreground ,red))))
;;;;; ido
`(ido-first-match ((,class (:foreground ,comp :inherit bold))))
`(ido-only-match ((,class (:foreground ,mat :inherit bold))))
`(ido-subdir ((,class (:foreground ,keyword))))
`(ido-vertical-match-face ((,class (:foreground ,comp :underline nil))))
;;;;; ivy
`(ivy-current-match ((,class (:background ,highlight :inherit bold))))
`(ivy-minibuffer-match-face-1 ((,class (:inherit bold))))
`(ivy-minibuffer-match-face-2 ((,class (:foreground ,head1 :underline t))))
`(ivy-minibuffer-match-face-3 ((,class (:foreground ,head4 :underline t))))
`(ivy-minibuffer-match-face-4 ((,class (:foreground ,head3 :underline t))))
`(ivy-remote ((,class (:foreground ,cyan))))
;;;;; latex
`(font-latex-bold-face ((,class (:foreground ,comp))))
`(font-latex-italic-face ((,class (:foreground ,keyword :italic t))))
`(font-latex-match-reference-keywords ((,class (:foreground ,const))))
`(font-latex-match-variable-keywords ((,class (:foreground ,var))))
`(font-latex-sectioning-0-face ((,class (:inherit bold :foreground ,head3 :height ,(if mood-theme-org-height 1.3 1.0) :background ,(when mood-theme-org-highlight head3-bg)))))
`(font-latex-sectioning-1-face ((,class (:inherit bold :foreground ,head4 :height ,(if mood-theme-org-height 1.3 1.0) :background ,(when mood-theme-org-highlight head4-bg)))))
`(font-latex-sectioning-2-face ((,class (:inherit bold :foreground ,head1 :height ,(if mood-theme-org-height 1.3 1.0) :background ,(when mood-theme-org-highlight head1-bg)))))
`(font-latex-sectioning-3-face ((,class (:inherit bold :foreground ,head2 :height ,(if mood-theme-org-height 1.2 1.0) :background ,(when mood-theme-org-highlight head2-bg)))))
`(font-latex-sectioning-4-face ((,class (:bold nil :foreground ,head3 :height ,(if mood-theme-org-height 1.1 1.0) :background ,(when mood-theme-org-highlight head3-bg)))))
`(font-latex-sectioning-5-face ((,class (:bold nil :foreground ,head4 :background ,(when mood-theme-org-highlight head4-bg)))))
`(font-latex-string-face ((,class (:foreground ,str))))
`(font-latex-warning-face ((,class (:foreground ,war))))
;;;;; ledger-mode
`(ledger-font-directive-face ((,class (:foreground ,meta))))
`(ledger-font-posting-amount-face ((,class (:foreground ,yellow))))
`(ledger-font-posting-date-face ((,class (:foreground ,head1))))
`(ledger-occur-xact-face ((,class (:background ,bg2))))
;;;;; magit
`(magit-blame-culprit ((,class :background ,yellow-bg :foreground ,yellow)))
`(magit-blame-date ((,class :background ,yellow-bg :foreground ,green)))
`(magit-blame-hash ((,class :background ,yellow-bg :foreground ,func)))
`(magit-blame-header ((,class :background ,yellow-bg :foreground ,green)))
`(magit-blame-heading ((,class :background ,yellow-bg :foreground ,green)))
`(magit-blame-name ((,class :background ,yellow-bg :foreground ,yellow)))
`(magit-blame-sha1 ((,class :background ,yellow-bg :foreground ,func)))
`(magit-blame-subject ((,class :background ,yellow-bg :foreground ,yellow)))
`(magit-blame-summary ((,class :background ,yellow-bg :foreground ,yellow)))
`(magit-blame-time ((,class :background ,yellow-bg :foreground ,green)))
`(magit-branch ((,class (:foreground ,const :inherit bold))))
`(magit-branch-current ((,class (:background ,blue-bg :foreground ,blue :inherit bold :box t))))
`(magit-branch-local ((,class (:background ,blue-bg :foreground ,blue :inherit bold))))
`(magit-branch-remote ((,class (:background ,aqua-bg :foreground ,aqua :inherit bold))))
`(magit-diff-context-highlight ((,class (:background ,bg2 :foreground ,base))))
`(magit-diff-hunk-heading ((,class (:background ,ttip-bg :foreground ,ttip))))
`(magit-diff-hunk-heading-highlight ((,class (:background ,ttip-sl :foreground ,base))))
`(magit-hash ((,class (:foreground ,var))))
`(magit-hunk-heading ((,class (:background ,bg3))))
`(magit-hunk-heading-highlight ((,class (:background ,bg3))))
`(magit-item-highlight ((,class :background ,bg2)))
`(magit-log-author ((,class (:foreground ,func))))
`(magit-log-head-label-head ((,class (:background ,yellow :foreground ,bg1 :inherit bold))))
`(magit-log-head-label-local ((,class (:background ,keyword :foreground ,bg1 :inherit bold))))
`(magit-log-head-label-remote ((,class (:background ,suc :foreground ,bg1 :inherit bold))))
`(magit-log-head-label-tags ((,class (:background ,magenta :foreground ,bg1 :inherit bold))))
`(magit-log-head-label-wip ((,class (:background ,cyan :foreground ,bg1 :inherit bold))))
`(magit-log-sha1 ((,class (:foreground ,str))))
`(magit-process-ng ((,class (:foreground ,war :inherit bold))))
`(magit-process-ok ((,class (:foreground ,func :inherit bold))))
`(magit-reflog-amend ((,class (:foreground ,magenta))))
`(magit-reflog-checkout ((,class (:foreground ,blue))))
`(magit-reflog-cherry-pick ((,class (:foreground ,green))))
`(magit-reflog-commit ((,class (:foreground ,green))))
`(magit-reflog-merge ((,class (:foreground ,green))))
`(magit-reflog-other ((,class (:foreground ,cyan))))
`(magit-reflog-rebase ((,class (:foreground ,magenta))))
`(magit-reflog-remote ((,class (:foreground ,cyan))))
`(magit-reflog-reset ((,class (:foreground ,red))))
`(magit-section-heading ((,class (:foreground ,keyword :inherit bold))))
`(magit-section-highlight ((,class (:background ,bg2))))
`(magit-section-title ((,class (:background ,bg1 :foreground ,keyword :inherit bold))))
;;;;; which-key
`(which-key-command-description-face ((,class (:foreground ,base))))
`(which-key-group-description-face ((,class (:foreground ,keyword))))
`(which-key-key-face ((,class (:foreground ,func :inherit bold))))
`(which-key-separator-face ((,class (:background nil :foreground ,str))))
`(which-key-special-key-face ((,class (:background ,func :foreground ,bg1))))
;;;;; which-function-mode
`(which-func ((,class (:foreground ,func))))
;;;;; mu4e
`(mu4e-attach-number-face ((,class (:foreground ,var))))
`(mu4e-cited-1-face ((,class (:foreground ,head1))))
`(mu4e-cited-2-face ((,class (:foreground ,head2))))
`(mu4e-cited-3-face ((,class (:foreground ,head3))))
`(mu4e-cited-4-face ((,class (:foreground ,head4))))
`(mu4e-cited-5-face ((,class (:foreground ,head1))))
`(mu4e-cited-6-face ((,class (:foreground ,head2))))
`(mu4e-cited-7-face ((,class (:foreground ,head3))))
`(mu4e-contact-face ((,class (:foreground ,func))))
`(mu4e-draft-face ((,class (:foreground ,var))))
`(mu4e-flagged-face ((,class (:foreground ,yellow :inherit bold))))
`(mu4e-header-key-face ((,class (:foreground ,meta :inherit bold))))
`(mu4e-header-title-face ((,class (:foreground ,keyword :inherit bold))))
`(mu4e-header-marks-face ((,class (:foreground ,comp))))
`(mu4e-header-value-face ((,class (:foreground ,keyword :inherit bold))))
`(mu4e-header-highlight-face ((,class (:background ,highlight))))
`(mu4e-highlight-face ((,class (:foreground ,comp))))
`(mu4e-title-face ((,class (:foreground ,head2 :inherit bold))))
`(mu4e-replied-face ((,class (:foreground ,green))))
`(mu4e-modeline-face ((,class (:foreground ,yellow))))
`(mu4e-special-header-value-face ((,class (:foreground ,green))))
`(mu4e-unread-face ((,class (:foreground ,head1 :inherit bold))))
`(mu4e-view-url-number-face ((,class (:foreground ,comp))))
;;;;; mu4e-maildirs
`(mu4e-maildirs-extension-maildir-hl-face ((,class (:foreground ,head1 :inherit bold))))
;;;;; notmuch
`(notmuch-search-date ((,class (:foreground ,func))))
`(notmuch-search-flagged-face ((,class (:weight extra-bold))))
`(notmuch-search-non-matching-authors ((,class (:foreground ,base-dim))))
`(notmuch-search-unread-face ((,class (:background ,highlight-dim :box ,border))))
`(notmuch-tag-face ((,class (:foreground ,keyword))))
`(notmuch-tag-flagged ((,class (:foreground ,war))))
;;;;; neotree
`(neo-dir-link-face ((,class (:foreground ,keyword :inherit bold))))
`(neo-expand-btn-face ((,class (:foreground ,base))))
`(neo-file-link-face ((,class (:foreground ,base))))
`(neo-root-dir-face ((,class (:foreground ,func :inherit bold))))
;;;;; org
`(org-agenda-clocking ((,class (:background ,highlight :foreground ,comp))))
`(org-agenda-date ((,class (:foreground ,var :height ,(if mood-theme-org-agenda-height 1.1 1.0)))))
`(org-agenda-date-today ((,class (:foreground ,keyword :inherit bold :height ,(if mood-theme-org-agenda-height 1.3 1.0)))))
`(org-agenda-date-weekend ((,class (:inherit bold :foreground ,var))))
`(org-agenda-done ((,class (:foreground ,suc :height ,(if mood-theme-org-agenda-height 1.2 1.0)))))
`(org-agenda-structure ((,class (:inherit bold :foreground ,comp))))
`(org-block ((,class (:background ,cblk-bg :foreground ,cblk))))
`(org-block-begin-line ((,class (:background ,cblk-ln-bg :foreground ,cblk-ln))))
`(org-block-end-line ((,class (:background ,cblk-ln-bg :foreground ,cblk-ln))))
`(org-clock-overlay ((,class (:foreground ,comp))))
`(org-code ((,class (:foreground ,cyan))))
`(org-column ((,class (:background ,highlight))))
`(org-column-title ((,class (:background ,highlight))))
`(org-date ((,class (:underline t :foreground ,var))))
`(org-date-selected ((,class (:background ,func :foreground ,bg1))))
`(org-document-info-keyword ((,class (:foreground ,meta))))
`(org-document-title ((,class (:foreground ,func :inherit bold :height ,(if mood-theme-org-height 1.4 1.0) :underline t))))
`(org-done ((,class (:foreground ,suc :inherit bold :background ,green-bg))))
`(org-ellipsis ((,class (:foreground ,keyword))))
`(org-footnote ((,class (:underline t :foreground ,base))))
`(org-hide ((,class (:foreground ,base))))
`(org-kbd ((,class (:inherit region :foreground ,base :box (:line-width 1 :style released-button)))))
`(org-level-1 ((,class (:inherit bold :bold ,(if mood-theme-org-bold 'unspecified nil) :foreground ,head1 :height ,(if mood-theme-org-height 1.3 1.0) :background ,(when mood-theme-org-highlight head1-bg)))))
`(org-level-2 ((,class (:inherit bold :bold ,(if mood-theme-org-bold 'unspecified nil) :foreground ,head2 :height ,(if mood-theme-org-height 1.2 1.0) :background ,(when mood-theme-org-highlight head2-bg)))))
`(org-level-3 ((,class (:bold nil :foreground ,head3 :height ,(if mood-theme-org-height 1.1 1.0) :background ,(when mood-theme-org-highlight head3-bg)))))
`(org-level-4 ((,class (:bold nil :foreground ,head4 :background ,(when mood-theme-org-highlight head4-bg)))))
`(org-level-5 ((,class (:bold nil :foreground ,head1))))
`(org-level-6 ((,class (:bold nil :foreground ,head2))))
`(org-level-7 ((,class (:bold nil :foreground ,head3))))
`(org-level-8 ((,class (:bold nil :foreground ,head4))))
`(org-link ((,class (:underline t :foreground ,comment))))
`(org-meta-line ((,class (:foreground ,meta))))
`(org-mode-line-clock-overrun ((,class (:foreground ,err))))
`(org-priority ((,class (:foreground ,war :inherit bold :bold ,(if mood-theme-org-priority-bold 'unspecified nil)))))
`(org-quote ((,class (:inherit org-block :slant italic))))
`(org-scheduled ((,class (:foreground ,comp))))
`(org-scheduled-today ((,class (:foreground ,func :height ,(if mood-theme-org-agenda-height 1.2 1.0)))))
`(org-scheduled-previously ((,class (:foreground ,base :slant italic))))
`(org-sexp-date ((,class (:foreground ,base))))
`(org-special-keyword ((,class (:foreground ,func))))
`(org-table ((,class (:foreground ,base :background ,head1-bg))))
`(org-tag ((,class (:foreground ,meta))))
`(org-time-grid ((,class (:foreground ,str))))
`(org-todo ((,class (:foreground ,war :inherit bold :background ,yellow-bg))))
`(org-upcoming-deadline ((,class (:foreground ,war :inherit org-priority))))
`(org-upcoming-distant-deadline ((,class (:foreground ,suc :inherit org-priority))))
`(org-verbatim ((,class (:foreground ,keyword))))
`(org-verse ((,class (:inherit org-block :slant italic))))
`(org-warning ((,class (:foreground ,err :inherit org-priority))))
;;;;; outline
`(outline-1 ((,class (:inherit org-level-1))))
`(outline-2 ((,class (:inherit org-level-2))))
`(outline-3 ((,class (:inherit org-level-3))))
`(outline-4 ((,class (:inherit org-level-4))))
`(outline-5 ((,class (:inherit org-level-5))))
`(outline-6 ((,class (:inherit org-level-6))))
`(outline-7 ((,class (:inherit org-level-7))))
`(outline-8 ((,class (:inherit org-level-8))))
;;;;; perspective
`(persp-selected-face ((,class (:inherit bold :foreground ,func))))
;;;;; popup
`(popup-enu-selection-face ((,class (:background ,ttip-sl :foreground ,base))))
`(popup-face ((,class (:background ,ttip-bg :foreground ,ttip))))
`(popup-isearch-match ((,class (:inherit match))))
`(popup-menu-face ((,class (:background ,ttip-bg :foreground ,base))))
`(popup-menu-mouse-face ((,class (:inherit highlight))))
`(popup-scroll-bar-background-face ((,class (:background ,bg2))))
`(popup-scroll-bar-foreground-face ((,class (:background ,act2))))
`(popup-tip-face ((,class (:background ,ttip-sl :foreground ,base :bold nil :italic nil :underline nil))))
;;;;; powerline
`(powerline-active1 ((,class (:background ,act2 :foreground ,base))))
`(powerline-active2 ((,class (:background ,act2 :foreground ,base))))
`(powerline-inactive1 ((,class (:background ,bg2 :foreground ,base))))
`(powerline-inactive2 ((,class (:background ,bg2 :foreground ,base))))
;;;;; rainbow-delimiters
`(rainbow-delimiters-depth-1-face ((,class :foreground ,keyword)))
`(rainbow-delimiters-depth-2-face ((,class :foreground ,func)))
`(rainbow-delimiters-depth-3-face ((,class :foreground ,str)))
`(rainbow-delimiters-depth-4-face ((,class :foreground ,green)))
`(rainbow-delimiters-depth-5-face ((,class :foreground ,yellow)))
`(rainbow-delimiters-depth-6-face ((,class :foreground ,keyword)))
`(rainbow-delimiters-depth-7-face ((,class :foreground ,func)))
`(rainbow-delimiters-depth-8-face ((,class :foreground ,str)))
`(rainbow-delimiters-mismatched-face ((,class :foreground ,err :overline t)))
`(rainbow-delimiters-unmatched-face ((,class :foreground ,err :overline t)))
;;;;; rcirc
`(rcirc-bright-nick ((,class (:background ,aqua-bg :foreground ,cyan))))
`(rcirc-dim-nick ((,class (:foreground ,base-dim))))
`(rcirc-keyword ((,class (:background ,green-bg-s :foreground ,green))))
`(rcirc-timestamp ((,class (:foreground ,keyword))))
`(rcirc-track-keyword ((,class (:background ,green :foreground ,bg1))))
`(rcirc-url ((,class (:inherit link))))
;;;;; shm
`(shm-current-face ((,class (:background ,green-bg-s))))
`(shm-quarantine-face ((,class (:background ,red-bg-s))))
;;;;; show-paren
`(show-paren-match ((,class (:foreground ,mat :inherit bold :underline ,(when mood-theme-underline-parens t)))))
`(show-paren-match-expression ((,class (:background ,green-bg-s))))
`(show-paren-mismatch ((,class (:foreground ,err :inherit bold :underline ,(when mood-theme-underline-parens t)))))
;;;;; smartparens
`(sp-pair-overlay-face ((,class (:background ,highlight :foreground nil))))
`(sp-show-pair-match-face ((,class (:foreground ,mat :inherit bold :underline ,(when mood-theme-underline-parens t)))))
;;;;; smerge
`(smerge-base ((,class (:background ,yellow-bg))))
`(smerge-markers ((,class (:background ,ttip-bg :foreground ,ttip))))
`(smerge-mine ((,class (:background ,red-bg))))
`(smerge-other ((,class (:background ,green-bg))))
`(smerge-refined-added ((,class (:background ,green-bg-s :foreground ,green))))
`(smerge-refined-changed ((,class (:background ,blue-bg-s :foreground ,blue))))
`(smerge-refined-removed ((,class (:background ,red-bg-s :foreground ,red))))
)))
;;;###autoload
(when load-file-name
(add-to-list 'custom-theme-load-path
(file-name-as-directory (file-name-directory load-file-name))))
(deftheme mood-dark "Mood theme, the dark version")
(create-mood-theme 'mood-dark)
(provide-theme 'mood-dark)
;; Local Variables:
;; no-byte-compile: t
;; End:
;;; mood-common.el ends here
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment