Define some vars so that our definitions look more like the VIM ones.

This commit is contained in:
Greg Pfeil 2012-02-16 09:33:29 -07:00
parent 230c0e4e20
commit 26bd3f777d
1 changed files with 282 additions and 261 deletions

View File

@ -127,268 +127,289 @@ the \"Gen RGB\" column in solarized-definitions.el to improve them further."
((eq 'low solarized-contrast) ((eq 'low solarized-contrast)
(setf back base02 (setf back base02
opt-under t))) opt-under t)))
`((;; basic (let ((bg-back `(:background ,back))
(default ((t (:foreground ,base0 ,:background ,back)))) ; Normal (bg-base03 `(:background ,base03))
(cursor ; Cursor (bg-base02 `(:background ,base02))
((t (:foreground ,base0 :background ,base03 :inverse-video t)))) (bg-base01 `(:background ,base01))
(escape-glyph-face ((t (:foreground ,red)))) (bg-base00 `(:background ,base00))
(fringe ((t (:foreground ,base01 :background ,base02)))) (bg-base0 `(:background ,base0))
(linum ((t (:foreground ,base01 :background ,base02)))) (bg-base1 `(:background ,base1))
(header-line ((t (:foreground ,base0 :background ,base2)))) (bg-base2 `(:background ,base2))
(highlight ((t (:background ,base02)))) (bg-base3 `(:background ,base3))
(bg-green `(:background ,green))
(bg-yellow `(:background ,yellow))
(bg-orange `(:background ,orange))
(bg-red `(:background ,red))
(bg-magenta `(:background ,magenta))
(bg-violet `(:background ,violet))
(bg-blue `(:background ,blue))
(bg-cyan `(:background ,cyan))
(fg-base03 `(:foreground ,base03))
(fg-base02 `(:foreground ,base02))
(fg-base01 `(:foreground ,base01))
(fg-base00 `(:foreground ,base00))
(fg-base0 `(:foreground ,base0))
(fg-base1 `(:foreground ,base1))
(fg-base2 `(:foreground ,base2))
(fg-base3 `(:foreground ,base3))
(fg-green `(:foreground ,green))
(fg-yellow `(:foreground ,yellow))
(fg-orange `(:foreground ,orange))
(fg-red `(:foreground ,red))
(fg-magenta `(:foreground ,magenta))
(fg-violet `(:foreground ,violet))
(fg-blue `(:foreground ,blue))
(fg-cyan `(:foreground ,cyan))
(hl-line ; CursorLine (fmt-bold `(:weight ,bold))
((t (:background ,base02 :underline ,opt-under)))) (fmt-bldi `(:weight ,bold))
(isearch ((t (:foreground ,yellow :inverse-video t)))) (fmt-undr `(:underline ,underline))
(lazy-highlight ((t (:background ,base2 :foreground ,base00)))) (fmt-undb `(:underline ,underline :weight ,bold))
(link ((t (:foreground ,violet :underline ,underline)))) (fmt-undi `(:underline ,underline))
(link-visited ((t (:foreground ,magenta :underline ,underline)))) (fmt-uopt `(:underline ,opt-under))
(menu ((t (:foreground ,base0 :background ,base02)))) (fmt-curl `(:underline t)) ; FIXME: not quite the same
(minibuffer-prompt ((t (:foreground ,blue)))) (fmt-ital `(:slant ,italic))
(mode-line (fmt-stnd `(:inverse-video t)) ; FIXME: not quite the same
((t (:foreground ,base1 :background ,base02 (fmt-revr `(:inverse-video t))
:box (:line-width 1 :color ,base1))))) (fmt-revb `(:inverse-video t :weight ,bold))
(mode-line-buffer-id ((t (:foreground ,base1)))) (fmt-revbb `(:inverse-video t :weight ,bright-bold))
(mode-line-inactive (fmt-revbbu `(:inverse-video t
((t (:foreground ,base0 :background ,base02 :weight ,bright-bold
:box (:line-width 1 :color ,base02))))) :underline ,underline)))
(region ; Visual `((;; basic
((t (:foreground ,base01 :background ,base03 (default ((t (,@fg-base0 ,@bg-back)))) ; Normal
:inverse-video t :weight ,bright-bold)))) (cursor ((t (,@fg-base03 ,@bg-base0)))) ; Cursor
(secondary-selection ((t (:background ,base02)))) (escape-glyph-face ((t (,@fg-red))))
(shadow ((t (:foreground, base01)))) (fringe ((t (,@fg-base01 ,@bg-base02))))
(trailing-whitespace ((t (:foreground ,red :inverse-video t)))) (linum ((t (,@fg-base01 ,@bg-base02))))
(vertical-border ((t (:foreground ,base0)))) (header-line ((t (,@fg-base0 ,@bg-base2))))
;; comint (highlight ((t (,@bg-base02))))
(comint-highlight-prompt ((t (:foreground ,blue))))
;; compilation (hl-line ((t (,@fmt-uopt ,@bg-base02)))) ; CursorLine
(compilation-info ((t (:foreground ,green :weight ,bold)))) (isearch ((t (,@fmt-stnd ,@fg-orange)))) ; IncSearch
(compilation-warning ((t (:foreground ,orange :weight ,bold)))) (lazy-highlight ((t (,@bg-base2 ,@fg-base00))))
;; custom (link ((t (,@fmt-undr ,@fg-violet))))
(custom-button (link-visited ((t (,@fmt-undr ,@fg-magenta))))
((t (:foreground ,base1 :background ,base02 (menu ((t (,@fg-base0 ,@bg-base02))))
:box (:line-width 2 :style released-button))))) (minibuffer-prompt ((t (,@fg-blue))))
(custom-button-mouse (mode-line
((t (:foreground ,base1 :background ,base02 :inverse-video t ((t (,@fg-base1 ,@bg-base02 :box (:line-width 1 :color ,base1)))))
:inherit custom-button)))) (mode-line-buffer-id ((t (,@fg-base1))))
(custom-button-pressed (mode-line-inactive
((t (:foreground ,base1 :background ,base02 :inverse-video t ((t (,@fg-base0 ,@bg-base02
:box (:line-width 2 :style pressed-button) :box (:line-width 1 :color ,base02)))))
:inherit custom-button-mouse)))) (region ((t (,@fg-base01 ,@bg-base03 ,@fmt-revbb)))) ; Visual
(custom-changed ((t (:foreground ,blue :background ,base3 (secondary-selection ((t (,@bg-base02))))
:inverse-video t)))) (shadow ((t (,@fg-base01))))
(custom-comment ((t (:foreground ,base1 :background ,base02)))) (trailing-whitespace ((t (,@fmt-revr ,@fg-red))))
(custom-comment-tag ((t (:foreground ,base1 :background ,base02)))) (vertical-border ((t (,@fg-base0))))
(custom-documentation ((t (:inherit default)))) ;; comint
(custom-group-tag ((t (:foreground ,base1)))) (comint-highlight-prompt ((t (,@fg-blue))))
(custom-group-tag-1 ((t (:foreground ,base1 :weight ,bold)))) ;; compilation
(custom-invalid (compilation-info ((t (,@fmt-bold ,@fg-green))))
((t (:foreground ,red :background ,back :inverse-video t)))) (compilation-warning ((t (,@fmt-bold ,@fg-orange))))
(custom-link ((t (:foreground ,violet)))) ;; custom
(custom-state ((t (:foreground ,green)))) (custom-button
(custom-variable-tag ((t (:foreground ,base1)))) ((t (,@fg-base1 ,@bg-base02
;; diff - DiffAdd, DiffChange, DiffDelete, and DiffText :box (:line-width 2 :style released-button)))))
,@(case solarized-diff-mode (custom-button-mouse
(high ((t (,@fmt-revr ,@fg-base1 ,@bg-base02 :inherit custom-button))))
`((diff-added ((t (:foreground ,green :inverse-video t)))) (custom-button-pressed
(diff-changed ((t (:foreground ,yellow :inverse-video t)))) ((t (,@fmt-revr ,@fg-base1 ,@bg-base02
(diff-removed ((t (:foreground ,red :inverse-video t)))) :box (:line-width 2 :style pressed-button)
(diff-header :inherit custom-button-mouse))))
((t (:foreground ,blue :background ,back :inverse-video t)))))) (custom-changed ((t (,@fmt-revr ,@fg-blue ,@bg-base3))))
(low (custom-comment ((t (,@fg-base1 ,@bg-base02))))
`((diff-added ((t (:foreground ,green :underline ,underline)))) (custom-comment-tag ((t (,@fg-base1 ,@bg-base02))))
(diff-changed (custom-documentation ((t (:inherit default))))
((t (:foreground ,yellow :underline ,underline)))) (custom-group-tag ((t (,@fg-base1))))
(diff-removed ((t (:foreground ,red :weight ,bold)))) (custom-group-tag-1 ((t (,fmt-bold ,@fg-base1))))
(diff-header (custom-invalid ((t (,@fmt-revr ,@fg-red ,@bg-back))))
((t (:foreground ,blue :background ,back :underline ,underline)))))) (custom-link ((t (,@fg-violet))))
(normal (custom-state ((t (,@fg-green))))
(if window-system (custom-variable-tag ((t (,@fg-base1))))
`((diff-added ((t (:foreground ,green :weight ,bold)))) ;; diff - DiffAdd, DiffChange, DiffDelete, and DiffText
(diff-changed ((t (:foreground ,yellow :weight ,bold)))) ,@(case solarized-diff-mode
(diff-removed ((t (:foreground ,red :weight ,bold)))) (high
(diff-header `((diff-added ((t (,@fmt-revr ,@fg-green))))
((t (:foreground ,blue :background ,back (diff-changed ((t (,@fmt-revr ,@fg-yellow))))
:weight ,bold))))) (diff-removed ((t (,@fmt-revr ,@fg-red))))
`((diff-added ((t (:foreground ,green)))) (diff-header ((t (,@fmt-revr ,@fg-blue ,@bg-back))))))
(diff-changed ((t (:foreground ,yellow)))) (low
(diff-removed ((t (:foreground ,red)))) `((diff-added ((t (,@fmt-undr ,@fg-green))))
(diff-header ((t (:foreground ,blue :background ,back)))))))) (diff-changed ((t (,@fmt-undr ,@fg-yellow))))
(diff-file-header ((t (:background ,back)))) (diff-removed ((t (,@fmt-bold ,@fg-red))))
(diff-refine-change ((t (:background ,base3)))) (diff-header ((t (,@fmt-undr ,@fg-blue ,@bg-back))))))
;; IDO (normal
(ido-only-match ((t (:foreground ,green)))) (if window-system
(ido-subdir ((t (:foreground ,blue)))) `((diff-added ((t (,@fmt-bold ,@fg-green))))
(ido-first-match ((t (:foreground ,green :weight ,bold)))) (diff-changed ((t (,@fmt-bold ,@fg-yellow))))
;; emacs-wiki (diff-removed ((t (,@fmt-bold ,@fg-red))))
(emacs-wiki-bad-link-face (diff-header ((t (,@fmt-bold ,@fg-blue ,@bg-back)))))
((t (:foreground ,red :underline ,underline)))) `((diff-added ((t (,@fg-green))))
(emacs-wiki-link-face (diff-changed ((t (,@fg-yellow))))
((t (:foreground ,blue :underline ,underline)))) (diff-removed ((t (,@fg-red))))
(emacs-wiki-verbatim-face (diff-header ((t (,@fg-blue ,@bg-back))))))))
((t (:foreground ,base00 :underline ,underline)))) (diff-file-header ((t (,@bg-back))))
;; eshell (diff-refine-change ((t (,@bg-base3))))
(eshell-ls-archive ((t (:foreground ,magenta)))) ;; IDO
(eshell-ls-backup ((t (:foreground ,yellow)))) (ido-only-match ((t (,@fg-green))))
(eshell-ls-clutter ((t (:foreground ,orange)))) (ido-subdir ((t (,@fg-blue))))
(eshell-ls-directory ((t (:foreground ,blue)))) (ido-first-match ((t (,@fmt-bold ,@fg-green))))
(eshell-ls-executable ((t (:foreground ,green)))) ;; emacs-wiki
(eshell-ls-missing ((t (:foreground ,red)))) (emacs-wiki-bad-link-face ((t (,@fmt-undr ,@fg-red))))
(eshell-ls-product ((t (:foreground ,yellow)))) (emacs-wiki-link-face ((t (,@fmt-undr ,@fg-blue))))
(eshell-ls-readonly ((t (:foreground ,base1)))) (emacs-wiki-verbatim-face ((t (,@fmt-undr ,@fg-base00))))
(eshell-ls-special ((t (:foreground ,violet)))) ;; eshell
(eshell-ls-symlink ((t (:foreground ,cyan)))) (eshell-ls-archive ((t (,@fg-magenta))))
(eshell-ls-unreadable ((t (:foreground ,base00)))) (eshell-ls-backup ((t (,@fg-yellow))))
(eshell-prompt ((t (:foreground ,green :weight ,bold)))) (eshell-ls-clutter ((t (,@fg-orange))))
;; font-lock (eshell-ls-directory ((t (,@fg-blue))))
(font-lock-builtin-face ((t (:foreground ,green)))) (eshell-ls-executable ((t (,@fg-green))))
(font-lock-comment-face ((t (:foreground ,base01 :slant ,italic)))) (eshell-ls-missing ((t (,@fg-red))))
(font-lock-constant-face ((t (:foreground ,cyan)))) (eshell-ls-product ((t (,@fg-yellow))))
(font-lock-function-name-face ((t (:foreground ,blue)))) (eshell-ls-readonly ((t (,@fg-base1))))
(font-lock-keyword-face ((t (:foreground ,green)))) (eshell-ls-special ((t (,@fg-violet))))
(font-lock-string-face ((t (:foreground ,cyan)))) (eshell-ls-symlink ((t (,@fg-cyan))))
(font-lock-type-face ((t (:foreground ,yellow)))) (eshell-ls-unreadable ((t (,@fg-base00))))
(font-lock-variable-name-face ((t (:foreground ,blue)))) (eshell-prompt ((t (,@fmt-bold ,@fg-green))))
(font-lock-warning-face ((t (:foreground ,red :weight ,bold)))) ;; font-lock
(font-lock-doc-face ((t (:foreground ,cyan :slant ,italic)))) (font-lock-builtin-face ((t (,@fg-green)))) ; Statement
(font-lock-color-constant-face ((t (:foreground ,green)))) (font-lock-comment-face ((t (,@fmt-ital ,@fg-base01)))) ; Comment
(font-lock-comment-delimiter-face (font-lock-constant-face ((t (,@fg-cyan)))) ; Constant
((t (:foreground ,base01 :weight ,bold)))) (font-lock-function-name-face ((t (,@fg-blue)))) ; Identifier
(font-lock-doc-string-face ((t (:foreground ,green)))) (font-lock-keyword-face ((t (,@fg-green)))) ; Statement
(font-lock-preprocessor-face ((t (:foreground ,orange)))) (font-lock-string-face ((t (,@fg-cyan)))) ; Constant
(font-lock-reference-face ((t (:foreground ,cyan)))) (font-lock-type-face ((t (,@fg-yellow)))) ; Type
(font-lock-negation-char-face ((t (:foreground ,red)))) (font-lock-variable-name-face ((t (,@fg-blue)))) ; Identifier
(font-lock-other-type-face ((t (:foreground ,blue :slant ,italic)))) (font-lock-warning-face ((t (,@fmt-bold ,@fg-red)))) ; Error
(font-lock-regexp-grouping-construct ((t (:foreground ,orange)))) (font-lock-doc-face ((t (,@fmt-ital ,@fg-cyan))))
(font-lock-special-keyword-face ((t (:foreground ,magenta)))) (font-lock-color-constant-face ((t (,@fg-green))))
(font-lock-exit-face ((t (:foreground ,red)))) (font-lock-comment-delimiter-face ; Comment
(font-lock-other-emphasized-face ((t (,@fmt-ital ,@fg-base01))))
((t (:foreground ,violet :weight ,bold :slant ,italic)))) (font-lock-doc-string-face ((t (,@fg-green))))
(font-lock-regexp-grouping-backslash ((t (:foreground ,yellow)))) (font-lock-preprocessor-face ((t (,@fg-orange)))) ; PreProc
;; info (font-lock-reference-face ((t (,@fg-cyan))))
(info-xref ((t (:foreground ,blue :underline ,underline)))) (font-lock-negation-char-face ((t (,@fg-red))))
(info-xref-visited ((t (:inherit info-xref :foreground ,magenta)))) (font-lock-other-type-face ((t (,@fmt-ital ,@fg-blue))))
;; org (font-lock-regexp-grouping-construct ((t (,@fg-orange))))
(org-hide ((t (:foreground ,base03)))) (font-lock-special-keyword-face ((t (,@fg-magenta))))
(org-todo ((t (:foreground ,base03 :background ,red :weight ,bold)))) (font-lock-exit-face ((t (,@fg-red))))
(org-done ((t (:foreground ,green :weight ,bold)))) (font-lock-other-emphasized-face ((t (,@fmt-bldi ,@fg-violet))))
(org-todo-kwd-face ((t (:foreground ,red :background ,base03)))) (font-lock-regexp-grouping-backslash ((t (,@fg-yellow))))
(org-done-kwd-face ((t (:foreground ,green :background ,base03)))) ;; info
(org-project-kwd-face (info-xref ((t (,@fmt-undr ,@fg-blue))))
((t (:foreground ,violet :background ,base03)))) (info-xref-visited ((t (,@fg-magenta :inherit info-xref))))
(org-waiting-kwd-face ;; org
((t (:foreground ,orange :background ,base03)))) (org-hide ((t (,@fg-base03))))
(org-someday-kwd-face ((t (:foreground ,blue :background ,base03)))) (org-todo ((t (,@fmt-bold ,@fg-base03 ,@bg-red))))
(org-started-kwd-face (org-done ((t (,@fmt-bold ,@fg-green))))
((t (:foreground ,yellow :background ,base03)))) (org-todo-kwd-face ((t (,@fg-red ,@bg-base03))))
(org-cancelled-kwd-face (org-done-kwd-face ((t (,@fg-green ,@bg-base03))))
((t (:foreground ,green :background ,base03)))) (org-project-kwd-face ((t (,@fg-violet ,@bg-base03))))
(org-delegated-kwd-face (org-waiting-kwd-face ((t (,@fg-orange ,@bg-base03))))
((t (:foreground ,cyan :background ,base03)))) (org-someday-kwd-face ((t (,@fg-blue ,@bg-base03))))
;; show-paren (org-started-kwd-face ((t (,@fg-yellow ,@bg-base03))))
(show-paren-match-face ((t (:background ,cyan :foreground ,base3)))) (org-cancelled-kwd-face ((t (,@fg-green ,@bg-base03))))
(show-paren-mismatch-face (org-delegated-kwd-face ((t (,@fg-cyan ,@bg-base03))))
((t (:background ,red :foreground ,base3)))) ;; show-paren - MatchParen
;; widgets (show-paren-match-face ((t (,@fg-cyan ,@fg-base01))))
(widget-field (show-paren-mismatch-face ((t (,@fg-red ,@fg-base01))))
((t (:box (:line-width 1 :color ,base2) :foreground ,base1 :background ,base02 :inherit default)))) ;; widgets
(widget-single-line-field ((t (:inherit widget-field)))) (widget-field
;; extra modules ((t (,@fg-base1 ,@bg-base02 :box (:line-width 1 :color ,base2)
;; ------------- :inherit default))))
;; gnus (widget-single-line-field ((t (:inherit widget-field))))
(gnus-cite-1 ((t (:foreground ,magenta)))) ;; extra modules
(gnus-cite-2 ((t (:foreground ,base2)))) ;; -------------
(gnus-cite-3 ((t (:foreground ,base3)))) ;; gnus
(gnus-cite-4 ((t (:foreground ,base1)))) (gnus-cite-1 ((t (,@fg-magenta))))
(gnus-cite-5 ((t (:foreground ,magenta)))) (gnus-cite-2 ((t (,@fg-base2))))
(gnus-cite-6 ((t (:foreground ,base2)))) (gnus-cite-3 ((t (,@fg-base3))))
(gnus-cite-7 ((t (:foreground ,base3)))) (gnus-cite-4 ((t (,@fg-base1))))
(gnus-cite-8 ((t (:foreground ,base1)))) (gnus-cite-5 ((t (,@fg-magenta))))
(gnus-cite-9 ((t (:foreground ,base2)))) (gnus-cite-6 ((t (,@fg-base2))))
(gnus-cite-10 ((t (:foreground ,base3)))) (gnus-cite-7 ((t (,@fg-base3))))
(gnus-cite-11 ((t (:foreground ,blue)))) (gnus-cite-8 ((t (,@fg-base1))))
(gnus-group-mail-1 ((t (:foreground ,base3 :weight ,bold)))) (gnus-cite-9 ((t (,@fg-base2))))
(gnus-group-mail-1-empty ((t (:foreground ,base3)))) (gnus-cite-10 ((t (,@fg-base3))))
(gnus-group-mail-2 ((t (:foreground ,base2 :weight ,bold)))) (gnus-cite-11 ((t (,@fg-blue))))
(gnus-group-mail-2-empty ((t (:foreground ,base2)))) (gnus-group-mail-1 ((t (,@fmt-bold ,@fg-base3))))
(gnus-group-mail-3 ((t (:foreground ,magenta :weight ,bold)))) (gnus-group-mail-1-empty ((t (,@fg-base3))))
(gnus-group-mail-3-empty ((t (:foreground ,magenta)))) (gnus-group-mail-2 ((t (,@fmt-bold ,@fg-base2))))
(gnus-group-mail-low ((t (:foreground ,base00 :weight ,bold)))) (gnus-group-mail-2-empty ((t (,@fg-base2))))
(gnus-group-mail-low-empty ((t (:foreground ,base00)))) (gnus-group-mail-3 ((t (,@fmt-bold ,@fg-magenta))))
(gnus-group-news-1 ((t (:foreground ,base1 :weight ,bold)))) (gnus-group-mail-3-empty ((t (,@fg-magenta))))
(gnus-group-news-1-empty ((t (:foreground ,base1)))) (gnus-group-mail-low ((t (,@fmt-bold ,@fg-base00))))
(gnus-group-news-2 ((t (:foreground ,blue :weight ,bold)))) (gnus-group-mail-low-empty ((t (,@fg-base00))))
(gnus-group-news-2-empty ((t (:foreground ,blue)))) (gnus-group-news-1 ((t (,@fmt-bold ,@fg-base1))))
(gnus-group-news-low ((t (:foreground ,violet :weight ,bold)))) (gnus-group-news-1-empty ((t (,@fg-base1))))
(gnus-group-news-low-empty ((t (:foreground ,violet)))) (gnus-group-news-2 ((t (,@fmt-bold ,@fg-blue))))
(gnus-header-content ((t (:foreground ,cyan :slant ,italic)))) (gnus-group-news-2-empty ((t (,@fg-blue))))
(gnus-header-from ((t (:foreground ,base2)))) (gnus-group-news-low ((t (,@fmt-bold ,@fg-violet))))
(gnus-header-name ((t (:foreground ,blue)))) (gnus-group-news-low-empty ((t (,@fg-violet))))
(gnus-header-newsgroups ((t (:foreground ,green :slant ,italic)))) (gnus-header-content ((t (,@fmt-ital ,@fg-cyan))))
(gnus-header-subject ((t (:foreground ,base1)))) (gnus-header-from ((t (,@fg-base2))))
(gnus-server-agent ((t (:foreground ,base3 :weight ,bold)))) (gnus-header-name ((t (,@fg-blue))))
(gnus-server-closed ((t (:foreground ,base1 :slant ,italic)))) (gnus-header-newsgroups ((t (,@fmt-ital ,@fg-green))))
(gnus-server-denied ((t (:foreground ,base2 :weight ,bold)))) (gnus-header-subject ((t (,@fg-base1))))
(gnus-server-offline ((t (:foreground ,green :weight ,bold)))) (gnus-server-agent ((t (,@fmt-bold ,@fg-base3))))
(gnus-server-opened ((t (:foreground ,cyan :weight ,bold)))) (gnus-server-closed ((t (,@fmt-ital ,@fg-base1))))
(gnus-splash ((t (:foreground ,base2)))) (gnus-server-denied ((t (,@fmt-bold ,@fg-base2))))
(gnus-summary-high-ancient (gnus-server-offline ((t (,@fmt-bold ,@fg-green))))
((t (:foreground ,magenta :weight ,bold)))) (gnus-server-opened ((t (,@fmt-bold ,@fg-cyan))))
(gnus-summary-high-read ((t (:foreground ,base1 :weight ,bold)))) (gnus-splash ((t (,@fg-base2))))
(gnus-summary-high-ticked ((t (:foreground ,base3 :weight ,bold)))) (gnus-summary-high-ancient ((t (,@fmt-bold ,@fg-magenta))))
(gnus-summary-high-undownloaded (gnus-summary-high-read ((t (,@fmt-bold ,@fg-base1))))
((t (:foreground ,base2 :weight ,bold)))) (gnus-summary-high-ticked ((t (,@fmt-bold ,@fg-base3))))
(gnus-summary-low-ancient (gnus-summary-high-undownloaded ((t (,@fmt-bold ,@fg-base2))))
((t (:foreground ,magenta :slant ,italic)))) (gnus-summary-low-ancient ((t (,@fmt-ital ,@fg-magenta))))
(gnus-summary-low-read ((t (:foreground ,base1 :slant ,italic)))) (gnus-summary-low-read ((t (,@fmt-ital ,@fg-base1))))
(gnus-summary-low-ticked ((t (:foreground ,base3 :slant ,italic)))) (gnus-summary-low-ticked ((t (,@fmt-ital ,@fg-base3))))
(gnus-summary-low-undownloaded (gnus-summary-low-undownloaded ((t (,@fmt-ital ,@fg-base2))))
((t (:foreground ,base2 :slant ,italic)))) (gnus-summary-normal-ancient ((t (,@fg-magenta))))
(gnus-summary-normal-ancient ((t (:foreground ,magenta)))) (gnus-summary-normal-read ((t (,@fg-base1))))
(gnus-summary-normal-read ((t (:foreground ,base1)))) (gnus-summary-normal-ticked ((t (,@fg-base3))))
(gnus-summary-normal-ticked ((t (:foreground ,base3)))) (gnus-summary-normal-undownloaded ((t (,@fg-base2))))
(gnus-summary-normal-undownloaded ((t (:foreground ,base2)))) ;; Flymake
;; Flymake (flymake-errline ((t (,@bg-base3))))
(flymake-errline ((t (:background ,base3)))) (flymake-warnline ((t (,@bg-base02))))
(flymake-warnline ((t (:background ,base02)))) ;; whitespace
;; whitespace (whitespace-empty ((t (,@fg-red))))
(whitespace-empty ((t (:foreground ,red)))) (whitespace-hspace ((t (,@fg-orange))))
(whitespace-hspace ((t (:foreground ,orange)))) (whitespace-indentation ((t (,@fg-base02))))
(whitespace-indentation ((t (:foreground ,base02)))) (whitespace-space ((t (,@fg-base02))))
(whitespace-space ((t (:foreground ,base02)))) (whitespace-space-after-tab ((t (,@fg-cyan))))
(whitespace-space-after-tab ((t (:foreground ,cyan)))) (whitespace-space-before-tab ((t (,@fmt-bold ,@fg-red))))
(whitespace-space-before-tab ((t (:foreground ,red :weight ,bold)))) (whitespace-tab ((t (,@fg-base02))))
(whitespace-tab ((t (:foreground ,base02)))) (whitespace-trailing ((t (,@fmt-bold ,@fg-red ,@bg-base02))))
(whitespace-trailing (whitespace-highlight-face ((t (,@fg-red ,@bg-blue))))
((t (:background ,base02 :foreground ,red :weight ,bold)))) ;; Message
(whitespace-highlight-face (message-mml ((t (,@fg-blue))))
((t (:background ,blue :foreground ,red)))) (message-cited-text ((t (,@fg-base2))))
;; Message (message-separator ((t (,@fg-base3))))
(message-mml ((t (:foreground ,blue)))) (message-header-xheader ((t (,@fg-violet))))
(message-cited-text ((t (:foreground ,base2)))) (message-header-name ((t (,@fg-cyan))))
(message-separator ((t (:foreground ,base3)))) (message-header-other ((t (,@fg-red))))
(message-header-xheader ((t (:foreground ,violet)))) (message-header-newsgroups ((t (,@fmt-bldi ,@fg-yellow))))
(message-header-name ((t (:foreground ,cyan)))) (message-header-subject ((t (,@fg-base00))))
(message-header-other ((t (:foreground ,red)))) (message-header-cc ((t (,@fmt-bold ,@fg-green))))
(message-header-newsgroups (message-header-to ((t (,@fmt-bold ,@fg-base1))))
((t (:foreground ,yellow :weight ,bold :slant ,italic)))) ;; rainbow-delimiters
(message-header-subject ((t (:foreground ,base00)))) (rainbow-delimiters-depth-1-face ((t (,@fg-cyan))))
(message-header-cc ((t (:foreground ,green :weight ,bold)))) (rainbow-delimiters-depth-2-face ((t (,@fg-yellow))))
(message-header-to ((t (:foreground ,base1 :weight ,bold)))) (rainbow-delimiters-depth-3-face ((t (,@fg-blue))))
;; rainbow-delimiters (rainbow-delimiters-depth-4-face ((t (,@fg-red))))
(rainbow-delimiters-depth-1-face ((t (:foreground ,cyan)))) (rainbow-delimiters-depth-5-face ((t (,@fg-green))))
(rainbow-delimiters-depth-2-face ((t (:foreground ,yellow)))) (rainbow-delimiters-depth-6-face ((t (,@fg-blue))))
(rainbow-delimiters-depth-3-face ((t (:foreground ,blue)))) (rainbow-delimiters-depth-7-face ((t (,@fg-orange))))
(rainbow-delimiters-depth-4-face ((t (:foreground ,red)))) (rainbow-delimiters-depth-8-face ((t (,@fg-magenta))))
(rainbow-delimiters-depth-5-face ((t (:foreground ,green)))) (rainbow-delimiters-depth-9-face ((t (,@fg-base0)))))
(rainbow-delimiters-depth-6-face ((t (:foreground ,blue)))) ((foreground-color . ,base0)
(rainbow-delimiters-depth-7-face ((t (:foreground ,orange)))) (background-color . ,base03)
(rainbow-delimiters-depth-8-face ((t (:foreground ,magenta)))) (background-mode . ,mode)
(rainbow-delimiters-depth-9-face ((t (:foreground ,base0))))) (cursor-color . ,base0))))))))
((foreground-color . ,base0)
(background-color . ,base03)
(background-mode . ,mode)
(cursor-color . ,base0)))))))
(defmacro create-solarized-theme (mode) (defmacro create-solarized-theme (mode)
(let* ((theme-name (intern (concat "solarized-" (symbol-name mode)))) (let* ((theme-name (intern (concat "solarized-" (symbol-name mode))))