Significant changes to align with original theme

- more complete overriding for `fmt-*` directives
- generalized underline coloring
- `link` directive to parallel same in Vim
- correct `:inherit` usage
- use `fmt-none` more widely (now that it’s not just empty, but actually resets
  the formatting)
This commit is contained in:
Greg Pfeil 2023-02-02 17:21:26 -07:00
parent 702b15fcee
commit abd6d1de69
No known key found for this signature in database
GPG Key ID: 1193ACD196ED61F2
1 changed files with 649 additions and 618 deletions

View File

@ -215,14 +215,30 @@ contains Solarized symbols."
(dark-and-light '((type tty) (min-colors 256)) facespec 3))
,@(8-and-16 facespec))))
;; Stolen from https://emacs.stackexchange.com/a/19076
(defun plist-merge (&rest plists)
"Create a single property list from all PLISTS.
Inspired by `org-combine-plists'."
(let ((rtn (copy-sequence (pop plists))))
(dolist (plist plists rtn)
(setq rtn (plist-put rtn (pop plist) (pop plist))))))
(defun solarized-color-definitions ()
"Produces the set of face-specs for all faces defined by this theme."
(let ((bold (if solarized-bold 'bold 'unspecified))
(bright-bold (if solarized-bold 'unspecified 'bold))
(underline (if solarized-underline t 'unspecified))
(opt-under (if (eq solarized-contrast 'low) t 'unspecified))
(italic (if solarized-italic 'italic 'unspecified)))
(let ((bg-back '(:background back))
(let ((reverse '(:inverse-video t))
(standout '(:box t)) ; FIXME: not sure what standout means in Vim
(bold (if solarized-bold '(:weight bold) '()))
(bright-bold (if solarized-bold '() '(:weight bold)))
(italic (if solarized-italic '(:slant italic) '()))
(NONE '(:inverse-video nil :underline nil :weight normal :slant normal :box nil)))
(cl-flet ((undercurl (sp) (list :underline (append sp '(:style wave))))
(underline (sp) (when solarized-underline
(list :underline (append sp '(:style line)))))
(opt-under (sp) (when (eq solarized-contrast 'low)
(list :underline (append sp '(:style line)))))
(link (face) (list :inherit (list face))))
(let ((bg-none '())
(bg-back '(:background back))
(bg-base03 '(:background base03))
(bg-base02 '(:background base02))
(bg-base01 '(:background base01))
@ -240,6 +256,8 @@ contains Solarized symbols."
(bg-blue '(:background blue))
(bg-cyan '(:background cyan))
(fg-none '())
(fg-back '(:foreground back))
(fg-base03 '(:foreground base03))
(fg-base02 '(:foreground base02))
(fg-base01 '(:foreground base01))
@ -257,52 +275,68 @@ contains Solarized symbols."
(fg-blue '(:foreground blue))
(fg-cyan '(:foreground cyan))
(fmt-none `())
(fmt-bold `(:weight ,bold))
(fmt-bldi `(:weight ,bold :slant ,italic))
(fmt-undr `( :underline ,underline))
(fmt-undb `(:weight ,bold :underline ,underline))
(fmt-undi `( :slant ,italic :underline ,underline))
(fmt-uopt `( :underline ,opt-under))
(fmt-curl-red '( :underline (:color red :style wave)))
(fmt-curl-violet '( :underline (:color violet :style wave)))
(fmt-curl-cyan '( :underline (:color cyan :style wave)))
(fmt-curl-yellow '( :underline (:color yellow :style wave)))
(fmt-ital `( :slant ,italic))
;; FIXME: not quite the same
(fmt-stnd `( :inverse-video t))
(fmt-revr `( :inverse-video t))
(fmt-revb `(:weight ,bold :inverse-video t))
(fmt-revbb `(:weight ,bright-bold :inverse-video t))
(fmt-revbbu `(:weight ,bright-bold :underline ,underline :inverse-video t)))
(fmt-none (plist-merge NONE))
(fmt-bold (plist-merge NONE bold))
(fmt-bldi (plist-merge NONE bold))
(fmt-ital (plist-merge NONE italic))
(fmt-stnd (plist-merge NONE standout))
(fmt-revr (plist-merge NONE reverse))
(fmt-revb (plist-merge NONE reverse bold))
(fmt-revbb (plist-merge NONE reverse bright-bold))
;; TODO: instead of checking `window-system`, generate multiple
;; face-spec elements.
(sp-none '())
(sp-back (if window-system '(:color back) '()))
(sp-base03 (if window-system '(:color base03) '()))
(sp-base02 (if window-system '(:color base02) '()))
(sp-base01 (if window-system '(:color base01) '()))
(sp-base00 (if window-system '(:color base00) '()))
(sp-base0 (if window-system '(:color base0) '()))
(sp-base1 (if window-system '(:color base1) '()))
(sp-base2 (if window-system '(:color base2) '()))
(sp-base3 (if window-system '(:color base3) '()))
(sp-green (if window-system '(:color green) '()))
(sp-yellow (if window-system '(:color yellow) '()))
(sp-orange (if window-system '(:color orange) '()))
(sp-red (if window-system '(:color red) '()))
(sp-magenta (if window-system '(:color magenta) '()))
(sp-violet (if window-system '(:color violet) '()))
(sp-blue (if window-system '(:color blue) '()))
(sp-cyan (if window-system '(:color cyan) '())))
(cl-flet ((fmt-undr (sp) (plist-merge NONE (underline sp)))
(fmt-undb (sp) (plist-merge NONE (underline sp) bold))
(fmt-undi (sp) (plist-merge NONE (underline sp)))
(fmt-uopt (sp) (plist-merge NONE (opt-under sp)))
(fmt-curl (sp) (plist-merge NONE (undercurl sp)))
(fmt-revbbu (sp) (plist-merge NONE reverse (underline sp) bright-bold)))
(mapcar (lambda (face) (apply 'create-face-spec face))
`(;; basic
(default (,@fg-base0 ,@bg-back)) ; Normal
(cursor (,@fg-base03 ,@bg-base0)) ; Cursor
(default (,@fmt-none ,@fg-base0 ,@bg-back)) ; Normal
(cursor (,@fmt-none ,@fg-base03 ,@bg-base0)) ; Cursor
(shadow (,@fg-base01))
(link (,@fmt-undr ,@fg-violet)) ; Underlined
(link-visited (,@fmt-undr ,@fg-magenta))
(match (,@fmt-revr ,@fg-yellow)) ; Search
(error (,@fmt-revr ,@fg-red)) ; ErrorMsg
(warning (,@fmt-bold ,@fg-red)) ; WarningMsg
(success (,@fg-blue)) ; MoreMsg
(underline (,@fmt-none ,@fg-violet ,@bg-none)) ; Underlined
(link (,@fg-blue ,@bg-none ,@(fmt-undb ()))) ; pandocLinkText
(link-visited (,@fg-magenta ,@(fmt-undr ())))
(match (,@fmt-revr ,@fg-yellow ,@bg-none)) ; Search
(error (,@fmt-revr ,@fg-red ,@bg-none)) ; ErrorMsg
(warning (,@fmt-bold ,@fg-red ,@bg-none)) ; WarningMsg
(success (,@fmt-none ,@fg-blue ,@bg-none)) ; MoreMsg
(escape-glyph (,@fg-red))
(fringe (,@fg-base01 ,@bg-base02))
(linum (,@fg-base01 ,@bg-base02))
(header-line (,@fg-base0 ,@bg-base02 ,@fmt-revbb)) ; Pmenu
(highlight (,@bg-base02))
(hl-line (:underline ,opt-under ,@bg-base02)) ; CursorLine
(isearch (,@fmt-stnd ,@fg-orange ,@bg-back)) ; IncSearch
(isearch-fail (:inherit error)) ; ErrorMsg
(lazy-highlight (:inherit match)) ; Search
(hl-line (,@(fmt-uopt sp-base1) ,@fg-none ,@bg-base02)) ; CursorLine
(isearch (,@fmt-stnd ,@fg-orange ,@bg-none)) ; IncSearch
(isearch-fail (:inherit (error)))
(lazy-highlight (:inherit (match)))
(menu (,@fg-base0 ,@bg-base02))
(minibuffer-prompt (,@fmt-bold ,@fg-cyan)) ; Question
(mode-line ; StatusLine
(,@fg-base1 ,@bg-base02 ,@fmt-revbb :box nil))
(mode-line-inactive ; StatusLineNC
(,@fg-base00 ,@bg-base02 ,@fmt-revbb :box nil))
(mode-line-buffer-id (,@fmt-bold :inherit mode-line))
(mode-line-buffer-id-inactive (,@fmt-bold :inherit mode-line-inactive))
(minibuffer-prompt (,@fmt-bold ,@fg-cyan ,@bg-none)) ; Question
(mode-line (,@fg-base1 ,@bg-base02 ,@fmt-revbb)) ; StatusLine
(mode-line-inactive (,@fg-base00 ,@bg-base02 ,@fmt-revbb)) ; StatusLineNC
(mode-line-buffer-id (:weight bold :inherit (mode-line)))
(mode-line-buffer-id-inactive (:weight bold :inherit (mode-line-inactive)))
(region (,@fg-base01 ,@bg-base03 ,@fmt-revbb)) ; Visual
(secondary-selection (,@bg-base02))
(shadow (,@fg-base01))
@ -317,61 +351,63 @@ contains Solarized symbols."
(custom-button
(,@fg-base1 ,@bg-base02 :box (:line-width 2 :style released-button)))
(custom-button-mouse
(,@fmt-revr ,@fg-base1 ,@bg-base02 :inherit custom-button))
(,@fmt-revr ,@fg-base1 ,@bg-base02 :inherit (custom-button)))
(custom-button-pressed
(,@fmt-revr ,@fg-base1 ,@bg-base02
:box (:line-width 2 :style pressed-button)
:inherit custom-button-mouse))
:inherit (custom-button-mouse)))
(custom-changed (,@fmt-revr ,@fg-blue ,@bg-base3))
(custom-comment (,@fg-base1 ,@bg-base02))
(custom-comment-tag (,@fg-base1 ,@bg-base02))
(custom-documentation (:inherit default))
(custom-documentation (:inherit ()))
(custom-group-tag (,@fg-base1))
(custom-group-tag-1 (,@fmt-bold ,@fg-base1))
(custom-invalid (,@fmt-revr ,@fg-red ,@bg-back))
(custom-link (,@fg-violet))
(custom-link (:inherit (link)))
(custom-state (,@fg-green))
(custom-variable-tag (,@fg-base1))
;; diff - DiffAdd, DiffChange, DiffDelete, and DiffText
,@(cl-case solarized-diff-mode
(high
`((diff-added (,@fmt-revr ,@fg-green))
(diff-changed (,@fmt-revr ,@fg-yellow))
(diff-removed (,@fmt-revr ,@fg-red))
(diff-refine-changed (,@fmt-revr ,@fg-blue ,@bg-back))))
`((diff-added (,@fmt-revr ,@fg-green ,@bg-none))
(diff-changed (,@fmt-revr ,@fg-yellow ,@bg-none))
(diff-removed (,@fmt-revr ,@fg-red ,@bg-none))
(diff-refine-changed (,@fmt-revr ,@fg-blue ,@bg-none))))
(low
`((diff-added (,@fmt-undr ,@fg-green))
(diff-changed (,@fmt-undr ,@fg-yellow))
(diff-removed (,@fmt-bold ,@fg-red))
(diff-refine-changed (,@fmt-undr ,@fg-blue ,@bg-back))))
`((diff-added (,@(fmt-undr sp-green) ,@fg-green ,@bg-none))
(diff-changed (,@(fmt-undr sp-yellow) ,@fg-yellow ,@bg-none))
(diff-removed (,@fmt-bold ,@fg-red ,@bg-none))
(diff-refine-changed (,@(fmt-undr sp-blue) ,@fg-blue ,@bg-none))))
(normal
;; TODO: Handle this by creating separate face-specs for
;; graphic and tty displays.
(if window-system
`((diff-added (,@fmt-bold ,@fg-green ,@bg-base02))
(diff-changed (,@fmt-bold ,@fg-yellow ,@bg-base02))
`((diff-added (,@fmt-bold ,@fg-green ,@bg-base02)) ; sp-green
(diff-changed (,@fmt-bold ,@fg-yellow ,@bg-base02)) ; sp-yellow
(diff-removed (,@fmt-bold ,@fg-red ,@bg-base02))
(diff-refine-changed (,@fmt-bold ,@fg-blue ,@bg-base02)))
`((diff-added (,@fg-green ,@bg-base02))
(diff-changed (,@fg-yellow ,@bg-base02))
(diff-removed (,@fg-red ,@bg-base02))
(diff-refine-changed (,@fg-blue ,@bg-base02))))))
(diff-refine-added (:inherit diff-added ,@fmt-revr))
(diff-refine-removed (:inherit diff-removed ,@fmt-revr))
(diff-file-header (:inherit default ,@fg-blue))
(diff-hunk-header (:inherit default))
(diff-refine-changed (,@fmt-bold ,@fg-blue ,@bg-base02))) ; sp-blue
`((diff-added (,@fmt-none ,@fg-green ,@bg-base02)) ; sp-green
(diff-changed (,@fmt-none ,@fg-yellow ,@bg-base02)) ; sp-yellow
(diff-removed (,@fmt-none ,@fg-red ,@bg-base02))
(diff-refine-changed (,@fmt-none ,@fg-blue ,@bg-base02)))))) ; sp-blue
(diff-refine-added (:inherit (diff-added) ,@fmt-revr))
(diff-refine-removed (:inherit (diff-removed) ,@fmt-revr))
(diff-file-header (:inherit () ,@fg-blue))
(diff-hunk-header (:inherit ()))
(diff-header (,@fg-base1 ,@bg-back))
;; IDO
(ido-only-match (,@fg-green))
(ido-subdir (,@fg-blue))
(ido-first-match (,@fmt-bold ,@fg-green))
;; emacs-wiki
(emacs-wiki-bad-link-face (,@fmt-undr ,@fg-red))
(emacs-wiki-link-face (,@fmt-undr ,@fg-blue))
(emacs-wiki-verbatim-face (,@fmt-undr ,@fg-base00))
(emacs-wiki-bad-link-face (,@(fmt-undr ()) ,@fg-red))
(emacs-wiki-link-face (:inherit (org-link)))
(emacs-wiki-verbatim-face (:inherit (org-verbatim)))
;; eshell
(eshell-ls-archive (,@fg-magenta))
(eshell-ls-backup (,@fg-yellow))
(eshell-ls-clutter (,@fg-orange))
(eshell-ls-directory (,@fg-blue)) ; Directory
(eshell-ls-directory (,@fmt-none ,@fg-blue ,@bg-none)) ; Directory
(eshell-ls-executable (,@fg-green))
(eshell-ls-missing (,@fg-red))
(eshell-ls-product (,@fg-yellow))
@ -381,35 +417,31 @@ contains Solarized symbols."
(eshell-ls-unreadable (,@fg-base00))
(eshell-prompt (,@fmt-bold ,@fg-green))
;; font-lock
(font-lock-builtin-face (,@fmt-none ,@fg-green)) ; Statement
(font-lock-comment-face (,@fmt-ital ,@fg-base01)) ; Comment
(font-lock-constant-face (,@fmt-none ,@fg-cyan)) ; Constant
(font-lock-function-name-face ; Identifier
(,@fmt-none ,@fg-blue))
(font-lock-keyword-face (,@fmt-none ,@fg-green)) ; Statement
(font-lock-string-face (,@fmt-none ,@fg-cyan)) ; Constant
(font-lock-type-face (,@fmt-none ,@fg-yellow)) ; Type
(font-lock-variable-name-face ; Identifier
(,@fmt-none ,@fg-blue))
(font-lock-warning-face (,@fmt-bold ,@fg-red)) ; Error
(font-lock-doc-face (,@fmt-ital ,@fg-base01)) ; Comment
(font-lock-doc-string-face ; Comment (XEmacs-only)
(,@fmt-ital ,@fg-base01))
(font-lock-color-constant-face (,@fmt-none ,@fg-green))
(font-lock-comment-delimiter-face ; Comment
(,@fmt-ital ,@fg-base01))
(font-lock-preprocessor-face (,@fmt-none ,@fg-orange)) ; PreProc
(font-lock-builtin-face (,@fmt-none ,@fg-green ,@bg-none)) ; Statement
(font-lock-comment-face (,@fmt-ital ,@fg-base01 ,@bg-none)) ; Comment
(font-lock-constant-face (,@fmt-none ,@fg-cyan ,@bg-none)) ; Constant
(font-lock-function-name-face (,@(link font-lock-variable-name-face))) ; Function
(font-lock-keyword-face (,@(link font-lock-builtin-face))) ; Keyword
(font-lock-string-face (,@(link font-lock-constant-face))) ; String
(font-lock-type-face (,@fmt-none ,@fg-yellow ,@bg-none)) ; Type
(font-lock-variable-name-face (,@fmt-none ,@fg-blue ,@bg-none)) ; Identifier
(font-lock-warning-face (,@fmt-bold ,@fg-red ,@bg-none)) ; Error
(font-lock-doc-face (:inherit (font-lock-comment-face)))
(font-lock-doc-string-face (:inherit (font-lock-string-face))) ; (XEmacs-only)
(font-lock-color-constant-face (:inherit (font-lock-comment-face)))
(font-lock-comment-delimiter-face (:inherit (font-lock-comment-face)))
(font-lock-preprocessor-face (,@fmt-none ,@fg-orange ,@bg-none)) ; PreProc
(font-lock-reference-face (,@fmt-none ,@fg-cyan))
(font-lock-negation-char-face (,@fmt-none ,@fg-red))
(font-lock-other-type-face (,@fmt-ital ,@fg-blue))
(font-lock-regexp-grouping-construct (,@fmt-none ,@fg-orange))
(font-lock-special-keyword-face (,@fmt-none ,@fg-red)) ; Special
(font-lock-special-keyword-face (,@fmt-none ,@fg-red ,@bg-none)) ; Special
(font-lock-exit-face (,@fmt-none ,@fg-red))
(font-lock-other-emphasized-face (,@fmt-bldi ,@fg-violet))
(font-lock-regexp-grouping-backslash (,@fmt-none ,@fg-yellow))
;; info
(info-xref (:inherit link))
(info-xref-visited (:inherit link-visited))
(info-xref (:inherit (link)))
(info-xref-visited (:inherit (link-visited)))
;; org
(org-block-background (,@bg-base02))
(org-hide (,@fg-base03))
@ -423,28 +455,28 @@ contains Solarized symbols."
(org-started-kwd-face (,@fg-yellow ,@bg-base03))
(org-cancelled-kwd-face (,@fg-green ,@bg-base03))
(org-delegated-kwd-face (,@fg-cyan ,@bg-base03))
(org-default (:inherit default))
(org-level-1 (:inherit outline-1))
(org-level-2 (:inherit outline-2))
(org-level-3 (:inherit outline-3))
(org-level-4 (:inherit outline-4))
(org-level-5 (:inherit outline-5))
(org-level-6 (:inherit outline-6))
(org-level-7 (:inherit outline-7))
(org-level-8 (:inherit outline-8))
(org-default (:inherit ()))
(org-level-1 (:inherit (outline-1)))
(org-level-2 (:inherit (outline-2)))
(org-level-3 (:inherit (outline-3)))
(org-level-4 (:inherit (outline-4)))
(org-level-5 (:inherit (outline-5)))
(org-level-6 (:inherit (outline-6)))
(org-level-7 (:inherit (outline-7)))
(org-level-8 (:inherit (outline-8)))
(org-special-keyword (,@fmt-ital ,@fg-base01))
(org-drawer (,@fmt-bold ,@fg-blue))
(org-column (,@fmt-revr ,@fg-cyan))
(org-column-title (,@fmt-bold ,@fmt-revr))
(org-warning (,@fmt-bold ,@fg-red))
(org-archived (,@fg-base01))
(org-link (,@fmt-undr ,@fg-violet))
(org-footnote (,@fmt-undr ,@fg-violet))
(org-ellipses (,@fg-yellow :strike-through t) )
(org-target (,@fmt-undr))
(org-date (,@fmt-undr ,@fg-violet))
(org-link (:inherit (link)))
(org-footnote (,@fg-green ,@bg-none ,@fmt-none)) ; pandocFootnote
(org-ellipses (,@fg-yellow :strike-through t))
(org-target (,@(fmt-undr ())))
(org-date (,@(fmt-undr ()) ,@fg-violet))
(org-date-selected (,@fmt-revr ,@fg-red))
(org-sexp-date (,@fmt-undr ,@fg-violet))
(org-sexp-date (,@(fmt-undr ()) ,@fg-violet))
(org-tag (,@fmt-bold))
(org-list-dt (,@fmt-bold))
(org-agenda-done (,@fg-green))
@ -452,37 +484,37 @@ contains Solarized symbols."
(org-priority (,@fmt-ital ,@fg-base01))
(org-checkbox (,@fmt-bold))
(org-table (,@fg-cyan))
(org-formula (:weight bold :slant italic ,@fg-red))
(org-formula (,@fmt-bldi ,@fg-red))
(org-code (,@fg-base01))
(org-document-title (,@fmt-bold ,@fg-cyan))
(org-document-info (,@fg-cyan))
(org-document-info-keyword (,@fg-base01))
(org-block (,@fg-base01))
(org-verbatim (,@fmt-undr ,@fg-base01))
(org-verbatim (,@fg-yellow ,@bg-none ,@fmt-none)) ; pandocVerbatimBlock
(org-clock-overlay (,@fmt-revr ,@bg-cyan ,@fg-base03))
(org-agenda-structure (,@fmt-bold ,@fg-blue))
(org-scheduled (:weight bold :slant italic ,@fg-green))
(org-scheduled-today (:weight bold :slant italic ,@fg-green))
(org-scheduled (,@fmt-bldi ,@fg-green))
(org-scheduled-today (,@fmt-bldi ,@fg-green))
(org-agenda-dimmed-todo-face (,@fg-base00))
(org-scheduled-previously (,@fmt-bold ,@fg-red))
(org-upcoming-deadline (,@fmt-bold ,@fg-red))
(org-agenda-restriction-lock (,@fmt-revr ,@fg-base03 ,@bg-cyan))
(org-time-grid (,@fg-yellow))
(org-latex-and-related(,@fg-orange))
(org-latex-and-related (,@fg-orange))
;; table
(table-cell (,@fmt-none ,@fg-base0 ,@bg-back))
(table-cell (,@fg-blue ,@bg-none ,@fmt-none)) ; pandocTable
;; outline - pandocBlockQuoteLeader[16]
(outline-1 (,@fg-blue))
(outline-2 (,@fg-cyan))
(outline-3 (,@fg-yellow))
(outline-4 (,@fg-red))
(outline-5 (,@fg-base0))
(outline-6 (,@fg-base01))
(outline-7 (,@fg-orange))
(outline-8 (,@fg-violet))
;; show-paren - MatchParen
(show-paren-match (,@fmt-bold ,@fg-cyan ,@bg-base02))
(show-paren-mismatch (,@fmt-bold ,@fg-red ,@bg-base01))
(outline-1 (,@fg-blue ,@bg-none ,@fmt-none))
(outline-2 (,@fg-cyan ,@bg-none ,@fmt-none))
(outline-3 (,@fg-yellow ,@bg-none ,@fmt-none))
(outline-4 (,@fg-red ,@bg-none ,@fmt-none))
(outline-5 (,@fg-base0 ,@bg-none ,@fmt-none))
(outline-6 (,@fg-base01 ,@bg-none ,@fmt-none))
(outline-7 (,@fg-orange ,@bg-none ,@fmt-none))
(outline-8 (,@fg-violet ,@bg-none ,@fmt-none))
;; show-paren
(show-paren-match (,@fmt-bold ,@fg-cyan ,@bg-base01))
(show-paren-mismatch (,@fmt-bold ,@fg-red ,@bg-base01)) ; MatchParen
;; speedbar
;; (speedbar-button-face (,@fmt-none ,@fg-base1))
(speedbar-button-face
@ -493,16 +525,16 @@ contains Solarized symbols."
;; (speedbar-highlight-face (,@bg-base02))
(speedbar-highlight-face
(,@fmt-revr ,@fg-base1 ,@bg-base02
:inherit speedbar-button-face))
;; (speedbar-selected-face (,@fmt-undr ,@fg-yellow))
:inherit (speedbar-button-face)))
;; (speedbar-selected-face (,@(fmt-undr ()) ,@fg-yellow))
(speedbar-selected-face (,@fmt-none ,@bg-base02 ,@fg-green))
(speedbar-separator-face (,@fmt-stnd))
(speedbar-tag-face (,@fmt-none ,@fg-blue))
;; widgets
(widget-field
(,@fg-base1 ,@bg-base02 :box (:line-width 1 :color base2)
:inherit default))
(widget-single-line-field (:inherit widget-field))
:inherit ()))
(widget-single-line-field (:inherit (widget-field)))
;; extra modules
;; -------------
;; alert
@ -522,7 +554,7 @@ contains Solarized symbols."
(bm-fringe-face (,@bg-orange ,@fg-base03))
(bm-fringe-persistent-face (,@bg-blue ,@fg-base03))
;; Flymake
(flymake-errline (,@fmt-bold ,@fg-red)) ; Error
(flymake-errline (,@fmt-bold ,@fg-red ,@bg-none)) ; Error
(flymake-warnline (,@fmt-bold ,@fg-red))
;; column-marker
(column-marker-1 (,@bg-base01))
@ -537,12 +569,11 @@ contains Solarized symbols."
(jabber-chat-prompt-system (,@fmt-bold ,@fg-green))
(jabber-chat-text-foreign (,@fg-base1))
(jabber-chat-text-local (,@fg-base0))
(jabber-chat-rare-time-face (,@fmt-undr ,@fg-green))
(jabber-chat-rare-time-face (,@(fmt-undr ()) ,@fg-green))
(jabber-roster-user-away (,@fmt-ital ,@fg-green))
(jabber-roster-user-chatty (,@fmt-bold ,@fg-orange))
(jabber-roster-user-dnd (,@fmt-ital ,@fg-red))
(jabber-roster-user-error
(:weight light :slant italic ,@fg-red))
(jabber-roster-user-error (,@fmt-bold ,@fg-red ,@bg-none)) ; Error
(jabber-roster-user-offline (,@fg-base01))
(jabber-roster-user-online (,@fmt-bold ,@fg-blue))
(jabber-roster-user-xa (,@fmt-ital ,@fg-magenta))
@ -551,14 +582,14 @@ contains Solarized symbols."
(git-gutter:added (,@fg-green))
(git-gutter:deleted (,@fg-red))
;; gnus - these are mostly taken from mutt, not VIM
(gnus-cite-1 (:inherit outline-1))
(gnus-cite-2 (:inherit outline-2))
(gnus-cite-3 (:inherit outline-3))
(gnus-cite-4 (:inherit outline-4))
(gnus-cite-5 (:inherit outline-5))
(gnus-cite-6 (:inherit outline-6))
(gnus-cite-7 (:inherit outline-7))
(gnus-cite-8 (:inherit outline-8))
(gnus-cite-1 (:inherit (outline-1)))
(gnus-cite-2 (:inherit (outline-2)))
(gnus-cite-3 (:inherit (outline-3)))
(gnus-cite-4 (:inherit (outline-4)))
(gnus-cite-5 (:inherit (outline-5)))
(gnus-cite-6 (:inherit (outline-6)))
(gnus-cite-7 (:inherit (outline-7)))
(gnus-cite-8 (:inherit (outline-8)))
(gnus-cite-9 (,@fg-green))
(gnus-cite-10 (,@fg-magenta))
(gnus-cite-11 (,@fg-base02))
@ -593,25 +624,25 @@ contains Solarized symbols."
(gnus-summary-cancelled ; deleted messages
(,@fmt-none ,@fg-red))
(gnus-summary-high-ancient
(,@fmt-bold :inherit gnus-summary-normal-ancient))
(,@fmt-bold :inherit (gnus-summary-normal-ancient)))
(gnus-summary-high-read
(,@fmt-bold :inherit gnus-summary-normal-read))
(,@fmt-bold :inherit (gnus-summary-normal-read)))
(gnus-summary-high-ticked
(,@fmt-bold :inherit gnus-summary-normal-ticked))
(,@fmt-bold :inherit (gnus-summary-normal-ticked)))
(gnus-summary-high-undownloaded
(,@fmt-bold :inherit gnus-summary-normal-undownloaded))
(,@fmt-bold :inherit (gnus-summary-normal-undownloaded)))
(gnus-summary-high-unread
(,@fmt-bold :inherit gnus-summary-normal-unread))
(,@fmt-bold :inherit (gnus-summary-normal-unread)))
(gnus-summary-low-ancient
(,@fmt-ital :inherit gnus-summary-normal-ancient))
(,@fmt-ital :inherit (gnus-summary-normal-ancient)))
(gnus-summary-low-read
(,@fmt-ital :inherit gnus-summary-normal-ancient))
(,@fmt-ital :inherit (gnus-summary-normal-ancient)))
(gnus-summary-low-unread
(,@fmt-ital :inherit gnus-summary-normal-unread))
(,@fmt-ital :inherit (gnus-summary-normal-unread)))
(gnus-summary-low-ticked
(,@fmt-ital :inherit gnus-summary-normal-ancient))
(,@fmt-ital :inherit (gnus-summary-normal-ancient)))
(gnus-summary-low-undownloaded
(,@fmt-ital :inherit gnus-summary-normal-ancient))
(,@fmt-ital :inherit (gnus-summary-normal-ancient)))
(gnus-summary-normal-ancient ; old messages
(,@fmt-none ,@fg-blue))
(gnus-summary-normal-read ; read messages
@ -626,8 +657,8 @@ contains Solarized symbols."
(helm-apt-deinstalled (,@fg-base01))
(helm-apt-installed (,@fg-green))
(helm-bookmark-addressbook (,@fg-blue))
(helm-bookmark-directory (:inherit helm-ff-directory))
(helm-bookmark-file (:inherit helm-ff-file))
(helm-bookmark-directory (:inherit (helm-ff-directory)))
(helm-bookmark-file (:inherit (helm-ff-file)))
(helm-bookmark-gnus (,@fg-cyan))
(helm-bookmark-info (,@fg-green))
(helm-bookmark-man (,@fg-violet))
@ -639,22 +670,22 @@ contains Solarized symbols."
(helm-buffer-size (,@fg-base01))
(helm-candidate-number (,@fmt-bold ,@bg-base02 ,@fg-base1))
(helm-emms-playlist (,@fmt-none ,@fg-base01))
(helm-etags+-highlight-face (:inherit highlight))
(helm-etags+-highlight-face (:inherit (highlight)))
(helm-ff-directory (,@bg-back ,@fg-blue))
(helm-ff-executable (,@fmt-bold ,@fg-green))
(helm-ff-file (:inherit default))
(helm-ff-file (:inherit ()))
(helm-ff-invalid-symlink (,@bg-base02 ,@fg-red))
(helm-ff-prefix (,@fmt-revr ,@fg-yellow))
(helm-ff-symlink (,@fmt-bold ,@fg-cyan))
(helm-gentoo-match (:inherit helm-match))
(helm-grep-cmd-line (:inherit diff-added))
(helm-grep-file (,@fmt-undr ,@fg-cyan))
(helm-gentoo-match (:inherit (helm-match)))
(helm-grep-cmd-line (:inherit (diff-added)))
(helm-grep-file (,@(fmt-undr ()) ,@fg-cyan))
(helm-grep-finish (,@fg-green))
(helm-grep-lineno (,@fg-orange))
(helm-grep-match (:inherit helm-match))
(helm-grep-match (:inherit (helm-match)))
(helm-grep-running (,@fg-red))
(helm-helper (:inherit helm-header))
(helm-history-deleted (:inherit helm-ff-invalid-symlink))
(helm-helper (:inherit (helm-header)))
(helm-history-deleted (:inherit (helm-ff-invalid-symlink)))
(helm-history-remote (,@fg-red))
(helm-lisp-completion-info (,@fg-base0))
(helm-lisp-show-completion (,@fmt-bold ,@fg-yellow ,@bg-base02))
@ -667,31 +698,31 @@ contains Solarized symbols."
(helm-ls-git-renamed-modified-face (,@fg-green))
(helm-ls-git-untracked-face (,@fg-red))
(helm-M-x-key (,@fmt-none ,@fg-orange))
(helm-match (:inherit match))
(helm-moccur-buffer (,@fmt-undr ,@fg-cyan))
(helm-selection (:inherit region))
(helm-selection-line (:inherit secondary-selection))
(helm-match (:inherit (match)))
(helm-moccur-buffer (,@(fmt-undr ()) ,@fg-cyan))
(helm-selection (:inherit (region)))
(helm-selection-line (:inherit (secondary-selection)))
(helm-separator (,@fg-red))
(helm-source-header (:inherit helm-header))
(helm-source-header (:inherit (helm-header)))
(helm-time-zone-current (,@fg-green))
(helm-time-zone-home (,@fg-red))
(helm-visible-mark (,@fmt-bold ,@bg-back ,@fg-magenta))
(helm-w3m-bookmarks (:inherit helm-bookmark-w3m))
(helm-w3m-bookmarks (:inherit (helm-bookmark-w3m)))
;; markdown
(markdown-bold-face (:inherit bold))
(markdown-header-delimiter-face (:inherit shadow))
(markdown-header-face (:inherit outline-1))
(markdown-header-face-1 (:inherit outline-1))
(markdown-header-face-2 (:inherit outline-2))
(markdown-header-face-3 (:inherit outline-3))
(markdown-header-face-4 (:inherit outline-4))
(markdown-header-face-5 (:inherit outline-5))
(markdown-header-face-6 (:inherit outline-6))
(markdown-header-rule-face (:inherit shadow))
(markdown-italic-face (:inherit italic))
(markdown-link-face (:inherit shadow))
(markdown-link-title-face (:inherit link))
(markdown-url-face (:inherit link))
(markdown-bold-face (:inherit (bold)))
(markdown-header-delimiter-face (:inherit (shadow)))
(markdown-header-face (:inherit (outline-1)))
(markdown-header-face-1 (:inherit (outline-1)))
(markdown-header-face-2 (:inherit (outline-2)))
(markdown-header-face-3 (:inherit (outline-3)))
(markdown-header-face-4 (:inherit (outline-4)))
(markdown-header-face-5 (:inherit (outline-5)))
(markdown-header-face-6 (:inherit (outline-6)))
(markdown-header-rule-face (:inherit (shadow)))
(markdown-italic-face (:inherit (italic)))
(markdown-link-face (:inherit (shadow)))
(markdown-link-title-face (:inherit (link)))
(markdown-url-face (:inherit (link)))
;; Message
(message-mml (,@fg-blue))
(message-cited-text (,@fg-base2))
@ -709,33 +740,33 @@ contains Solarized symbols."
(minimap-semantic-type-face (,bg-base3))
(minimap-semantic-variable-face (,bg-base3))
;; parenface
(parenface-bracket-face (:inherit shadow))
(parenface-curly-face (:inherit shadow))
(parenface-paren-face (:inherit shadow))
(parenface-bracket-face (:inherit (shadow)))
(parenface-curly-face (:inherit (shadow)))
(parenface-paren-face (:inherit (shadow)))
;; paren-face
(parenthesis (:inherit shadow))
(parenthesis (:inherit (shadow)))
;; rainbow-delimiters
(rainbow-delimiters-depth-1-face (:inherit outline-1))
(rainbow-delimiters-depth-2-face (:inherit outline-2))
(rainbow-delimiters-depth-3-face (:inherit outline-3))
(rainbow-delimiters-depth-4-face (:inherit outline-4))
(rainbow-delimiters-depth-5-face (:inherit outline-5))
(rainbow-delimiters-depth-6-face (:inherit outline-6))
(rainbow-delimiters-depth-7-face (:inherit outline-7))
(rainbow-delimiters-depth-8-face (:inherit outline-8))
(rainbow-delimiters-depth-1-face (:inherit (outline-1)))
(rainbow-delimiters-depth-2-face (:inherit (outline-2)))
(rainbow-delimiters-depth-3-face (:inherit (outline-3)))
(rainbow-delimiters-depth-4-face (:inherit (outline-4)))
(rainbow-delimiters-depth-5-face (:inherit (outline-5)))
(rainbow-delimiters-depth-6-face (:inherit (outline-6)))
(rainbow-delimiters-depth-7-face (:inherit (outline-7)))
(rainbow-delimiters-depth-8-face (:inherit (outline-8)))
(rainbow-delimiters-depth-9-face (,@fg-green))
;; powerline
(powerline-active1 (,@fg-base00 :inherit mode-line))
(powerline-active2 (,@fg-base0 :inherit mode-line))
(powerline-inactive1 (,@fg-base02 ,@bg-base1 :inherit mode-line-inactive))
(powerline-inactive2 (,@fg-base01 :inherit mode-line-inactive))
(powerline-active1 (,@fg-base00 :inherit (mode-line)))
(powerline-active2 (,@fg-base0 :inherit (mode-line)))
(powerline-inactive1 (,@fg-base02 ,@bg-base1 :inherit (mode-line-inactive)))
(powerline-inactive2 (,@fg-base01 :inherit (mode-line-inactive)))
;; slime
(slime-error-face (,@fmt-revr ,@fg-red)) ; ErrorMsg
(slime-error-face (,@fmt-revr ,@fg-red ,@bg-none)) ; ErrorMsg
(slime-note-face (,@fg-yellow))
(slime-repl-inputted-output-face (,@fg-red))
(slime-repl-output-mouseover-face (:box (:color base3)))
(slime-style-warning-face (,@fmt-bold ,@fg-orange))
(slime-warning-face (,@fmt-bold ,@fg-red)) ; WarningMsg
(slime-warning-face (,@fmt-bold ,@fg-red ,@bg-none)) ; WarningMsg
;; smartparens
(sp-pair-overlay-face (,@bg-base02))
(sp-wrap-overlay-face (,@bg-base02))
@ -753,11 +784,11 @@ contains Solarized symbols."
(whitespace-trailing (,@fmt-bold ,@fg-red ,@bg-base02))
(whitespace-highlight-face (,@fg-red ,@bg-blue))
(whitespace-line (,@fg-magenta))
(whitespace-newline (:inherit shadow :slant normal))
(whitespace-newline (:inherit (shadow) :slant normal))
;; writegood
(writegood-weasels-face (,@fmt-curl-cyan ,@fg-cyan))
(writegood-weasels-face (,@(fmt-curl ()) ,@fg-cyan))
(writegood-passive-voice-face (,@fg-magenta))
(writegood-duplicates-face (:inherit error))
(writegood-duplicates-face (:inherit (error)))
;; rcirc
(rcirc-my-nick (,@fg-blue))
(rcirc-nick-in-message (,@fg-orange))
@ -770,15 +801,15 @@ contains Solarized symbols."
(font-latex-warning-face (,@fg-red))
(font-latex-sectioning-5-face (,@fg-violet))
;;flyspell
(flyspell-incorrect (,@fmt-curl-red)) ; SpellBad
(flyspell-duplicate (,@fmt-curl-yellow))
(flyspell-incorrect (,@(fmt-curl sp-red) ,@fg-none ,@bg-none)) ; SpellBad
(flyspell-duplicate (,@(fmt-curl sp-yellow)))
;; rst-mode
(rst-level-1 (:inherit outline-1))
(rst-level-2 (:inherit outline-2))
(rst-level-3 (:inherit outline-3))
(rst-level-4 (:inherit outline-4))
(rst-level-5 (:inherit outline-5))
(rst-level-6 (:inherit outline-6))
(rst-level-1 (:inherit (outline-1)))
(rst-level-2 (:inherit (outline-2)))
(rst-level-3 (:inherit (outline-3)))
(rst-level-4 (:inherit (outline-4)))
(rst-level-5 (:inherit (outline-5)))
(rst-level-6 (:inherit (outline-6)))
;;ansi-color
(ansi-color-cyan (,@fg-cyan ,@bg-cyan))
(ansi-color-blue (,@fg-blue ,@bg-blue))
@ -800,8 +831,8 @@ contains Solarized symbols."
(company-tooltip (,@fg-base00 ,@bg-base02))
(company-tooltip-selection (,@fg-green ,@bg-base02))
(company-tooltip-mouse (,@fg-base1 ,@bg-base02))
(company-tooltip-common (,@fg-blue ,@bg-base02 ,@fmt-undr))
(company-tooltip-common-selection (,@fg-green ,@bg-base02 ,@fmt-undr))
(company-tooltip-common (,@fg-blue ,@bg-base02 ,@(fmt-undr ())))
(company-tooltip-common-selection (,@fg-green ,@bg-base02 ,@(fmt-undr ())))
(company-tooltip-annotation (,@fg-yellow ,@bg-base02))
(company-scrollbar-fg (,@bg-base0))
(company-scrollbar-bg (,@bg-base02))
@ -827,16 +858,16 @@ contains Solarized symbols."
(magit-log-head-label-tags (,@fg-orange))
(magit-log-head-label-local (,@fg-yellow))
(magit-log-head-label-head (,@fg-violet))
(magit-process-ok (,@fg-green :inherit magit-section-title))
(magit-process-ng (,@fg-red :inherit magit-section-title))
(magit-process-ok (,@fg-green :inherit (magit-section-title)))
(magit-process-ng (,@fg-red :inherit (magit-section-title)))
;; undo-tree
(undo-tree-visualizer-current-face (,@fg-orange))
(undo-tree-visualizer-default-face (:inherit shadow))
(undo-tree-visualizer-active-branch-face (:inherit default))
(undo-tree-visualizer-default-face (:inherit (shadow)))
(undo-tree-visualizer-active-branch-face (:inherit ()))
(undo-tree-visualizer-unmodified-face (,@fg-cyan))
(undo-tree-visualizer-register-face (,@fg-yellow))
;; haskell
(haskell-keyword-face (,@fg-cyan)))))))
(haskell-keyword-face (,@fg-cyan)))))))))
(provide 'solarized-definitions)
;;; solarized-definitions.el ends here