Merge pull request #134 from sellout/unified
Overhaul pretty much everything
This commit is contained in:
commit
eb9100955d
52
README.md
52
README.md
|
@ -33,17 +33,31 @@ Installation & Usage
|
||||||
|
|
||||||
### Emacs 24
|
### Emacs 24
|
||||||
|
|
||||||
1. Add the `emacs-color-theme-solarized` directory to your Emacs `custom-theme-load-path`, or install from marmalade using `package-install color-theme-solarized`
|
1. Add the `emacs-color-theme-solarized` directory to your Emacs `custom-theme-load-path`.
|
||||||
2. Add `(load-theme 'solarized-[light|dark] t)` to your Emacs init file.
|
2. Add `(load-theme 'solarized t)` to your Emacs init file.
|
||||||
3. Reload the init file, or restart Emacs.
|
3. Reload the init file, or restart Emacs.
|
||||||
|
|
||||||
### [color-theme] \(pre-Emacs 24\)
|
### [color-theme] \(pre-Emacs 24\)
|
||||||
|
|
||||||
1. Download and install [color-theme].
|
1. Download and install [color-theme].
|
||||||
2. Add the `emacs-color-theme-solarized` directory to your Emacs `load-path`.
|
2. Add the `emacs-color-theme-solarized` directory to your Emacs `load-path`.
|
||||||
3. Add `(require 'color-theme-solarized)` to your Emacs init file (usually `~/.emacs`).
|
3. Add `(require 'color-theme-solarized)` and `(color-theme-solarized)` to your Emacs init file (usually `~/.emacs`).
|
||||||
3. Reload the init file, or restart Emacs.
|
3. Reload the init file, or restart Emacs.
|
||||||
4. Use the usual [color-theme] mechanism to select one of the Solarized themes, or `M-x color-theme-solarized-[light|dark]`.
|
|
||||||
|
### all versions
|
||||||
|
|
||||||
|
To switch between the light and dark variations of Solarized, set the frame’s `background-mode`. This can be accomplished globally using `M-x customize-variable frame-background-mode` or on a per-frame basis with `(set-frame-parameter nil 'background-mode 'light)` (or `'dark`). Remember to call `enable-theme` after changing the background mode to update the state of the theme.
|
||||||
|
|
||||||
|
This allows you to have a mix of light and dark frames. I tend to use light frames in the GUI and dark frames in my terminal, so I use the following code:
|
||||||
|
|
||||||
|
```common-lisp
|
||||||
|
(add-hook 'after-make-frame-functions
|
||||||
|
(lambda (frame)
|
||||||
|
(set-frame-parameter frame
|
||||||
|
'background-mode
|
||||||
|
(if (display-graphic-p frame) 'light 'dark))
|
||||||
|
(enable-theme 'solarized)))
|
||||||
|
```
|
||||||
|
|
||||||
### IMPORTANT NOTE FOR TERMINAL USERS:
|
### IMPORTANT NOTE FOR TERMINAL USERS:
|
||||||
|
|
||||||
|
@ -58,13 +72,6 @@ a set compatible with the terminal's default limited 256 color palette
|
||||||
(whereas by using the terminal's 16 ANSI color values, you would
|
(whereas by using the terminal's 16 ANSI color values, you would
|
||||||
see the correct, specific values for the Solarized palette).
|
see the correct, specific values for the Solarized palette).
|
||||||
|
|
||||||
If you do use the custom terminal colors, i.e. the 16 overridden ANSI color
|
|
||||||
values, the emacs colorscheme should work out of the box for you. If you are
|
|
||||||
using a terminal emulator that supports 256 colors and don't want to use
|
|
||||||
the custom Solarized terminal colors, you will need to use the degraded 256
|
|
||||||
colorscheme. To do so, simply customize the `solarized-termcolor` variable to
|
|
||||||
`256`.
|
|
||||||
|
|
||||||
Again, I recommend just changing your terminal colors to Solarized values
|
Again, I recommend just changing your terminal colors to Solarized values
|
||||||
either manually or via one of the many terminal schemes available for import.
|
either manually or via one of the many terminal schemes available for import.
|
||||||
|
|
||||||
|
@ -76,7 +83,6 @@ but does include several variables that can be customized.
|
||||||
|
|
||||||
variable name default optional
|
variable name default optional
|
||||||
--------------------------------------------
|
--------------------------------------------
|
||||||
solarized-termcolors = 16 | 256
|
|
||||||
solarized-degrade = nil | t
|
solarized-degrade = nil | t
|
||||||
solarized-bold = t | nil
|
solarized-bold = t | nil
|
||||||
solarized-underline = t | nil
|
solarized-underline = t | nil
|
||||||
|
@ -88,19 +94,6 @@ but does include several variables that can be customized.
|
||||||
|
|
||||||
### Option Details
|
### Option Details
|
||||||
|
|
||||||
* solarized-termcolors
|
|
||||||
|
|
||||||
This is set to *16* by default, meaning that Solarized will attempt to use
|
|
||||||
the standard 16 colors of your terminal emulator, assuming that you've set
|
|
||||||
these colors to the correct Solarized values either manually or by
|
|
||||||
importing one of the many colorscheme available for popular terminal
|
|
||||||
emulators and Xdefaults.
|
|
||||||
If you don't want to use the Solarized colors via the terminal
|
|
||||||
emulator's palette, you can set this to *256*, which will use a degraded
|
|
||||||
version of the Solarized palette by displaying the closest colors in
|
|
||||||
the terminal's default 256 colors as shown in [Xterm's color
|
|
||||||
chart](http://en.wikipedia.org/wiki/File:Xterm_color_chart.png).
|
|
||||||
|
|
||||||
* solarized-degrade
|
* solarized-degrade
|
||||||
|
|
||||||
For test purposes only; in GUI mode, this forces Solarized to use the 256
|
For test purposes only; in GUI mode, this forces Solarized to use the 256
|
||||||
|
@ -126,10 +119,11 @@ but does include several variables that can be customized.
|
||||||
* solarized-broken-srgb
|
* solarized-broken-srgb
|
||||||
|
|
||||||
Emacs [bug #8402](http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8402)
|
Emacs [bug #8402](http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8402)
|
||||||
results in incorrect color handling on Macs. If this is `t` (the default
|
results in incorrect color handling on Macs. If you are using Emacs on a
|
||||||
on Macs), Solarized works around it with alternative colors. However,
|
Mac, we try to determine this value automatically. If this is `t` (the
|
||||||
these colors are not totally portable, so you may be able to edit the
|
default on Macs), Solarized works around it with alternative colors.
|
||||||
"Gen RGB" column in `solarized-definitions.el` to improve them further.
|
However, these colors are not totally portable, so you may be able to edit
|
||||||
|
the "Gen RGB" column in `solarized-definitions.el` to improve them further.
|
||||||
|
|
||||||
Code Notes
|
Code Notes
|
||||||
----------
|
----------
|
||||||
|
|
|
@ -23,36 +23,29 @@
|
||||||
(require 'color-theme))
|
(require 'color-theme))
|
||||||
|
|
||||||
;;;###autoload
|
;;;###autoload
|
||||||
(defun color-theme-solarized (mode)
|
(defun color-theme-solarized ()
|
||||||
"Color theme by Ethan Schoonover, created 2011-03-24.
|
"Color theme by Ethan Schoonover, created 2011-03-24.
|
||||||
Ported to Emacs by Greg Pfeil, http://ethanschoonover.com/solarized."
|
Ported to Emacs by Greg Pfeil, http://ethanschoonover.com/solarized."
|
||||||
(interactive "Slight or dark? ")
|
(interactive)
|
||||||
(color-theme-install
|
(color-theme-install
|
||||||
(let* ((definitions (solarized-color-definitions mode))
|
`(color-theme-solarized () () ,@(solarized-color-definitions))))
|
||||||
(faces (first definitions))
|
|
||||||
(variables (second definitions)))
|
(add-to-list 'color-themes
|
||||||
(solarized-color-definitions mode)
|
`(color-theme-solarized
|
||||||
`(,(intern (concat "color-theme-solarized-" (symbol-name mode)))
|
"Solarized"
|
||||||
,variables
|
,solarized-description))
|
||||||
,@faces))))
|
|
||||||
|
|
||||||
;;;###autoload
|
;;;###autoload
|
||||||
(defun color-theme-solarized-dark ()
|
(defun color-theme-solarized-dark ()
|
||||||
(interactive)
|
"Color theme by Ethan Schoonover, created 2011-03-24.
|
||||||
(color-theme-solarized 'dark))
|
Ported to Emacs by Greg Pfeil, http://ethanschoonover.com/solarized."
|
||||||
|
(declare (obsolete color-theme-solarized "2013-05-01"))
|
||||||
|
(color-theme-solarized))
|
||||||
;;;###autoload
|
;;;###autoload
|
||||||
(defun color-theme-solarized-light ()
|
(defun color-theme-solarized-light ()
|
||||||
(interactive)
|
"Color theme by Ethan Schoonover, created 2011-03-24.
|
||||||
(color-theme-solarized 'light))
|
Ported to Emacs by Greg Pfeil, http://ethanschoonover.com/solarized."
|
||||||
|
(declare (obsolete color-theme-solarized "2013-05-01"))
|
||||||
(add-to-list 'color-themes
|
(color-theme-solarized))
|
||||||
`(color-theme-solarized-light
|
|
||||||
"Solarized Light"
|
|
||||||
,solarized-description))
|
|
||||||
(add-to-list 'color-themes
|
|
||||||
`(color-theme-solarized-dark
|
|
||||||
"Solarized Dark"
|
|
||||||
,solarized-description))
|
|
||||||
|
|
||||||
(provide 'color-theme-solarized)
|
(provide 'color-theme-solarized)
|
||||||
|
|
|
@ -2,4 +2,10 @@
|
||||||
(locate-file "solarized-definitions.el" custom-theme-load-path
|
(locate-file "solarized-definitions.el" custom-theme-load-path
|
||||||
'("c" "")))
|
'("c" "")))
|
||||||
|
|
||||||
(create-solarized-theme dark)
|
(create-solarized-theme solarized-dark
|
||||||
|
(concat "This theme is obsolete since 2013-05-01;
|
||||||
|
use `solarized' instead.
|
||||||
|
|
||||||
|
"
|
||||||
|
solarized-description)
|
||||||
|
(solarized-color-definitions))
|
||||||
|
|
|
@ -40,11 +40,11 @@ down in order to expand or compress the tonal range displayed."
|
||||||
:options '(high normal low)
|
:options '(high normal low)
|
||||||
:group 'solarized)
|
:group 'solarized)
|
||||||
|
|
||||||
(defcustom solarized-broken-srgb (if (and (eq system-type 'darwin)
|
(defcustom solarized-broken-srgb
|
||||||
(eq window-system 'ns))
|
(if (and (eq system-type 'darwin) (eq window-system 'ns))
|
||||||
(not (and (boundp 'ns-use-srgb-colorspace)
|
(not (and (boundp 'ns-use-srgb-colorspace)
|
||||||
ns-use-srgb-colorspace))
|
ns-use-srgb-colorspace))
|
||||||
nil)
|
nil)
|
||||||
"Emacs bug #8402 results in incorrect color handling on Macs. If this is t
|
"Emacs bug #8402 results in incorrect color handling on Macs. If this is t
|
||||||
\(the default on Macs), Solarized works around it with alternative colors.
|
\(the default on Macs), Solarized works around it with alternative colors.
|
||||||
However, these colors are not totally portable, so you may be able to edit
|
However, these colors are not totally portable, so you may be able to edit
|
||||||
|
@ -77,500 +77,498 @@ the \"Gen RGB\" column in solarized-definitions.el to improve them further."
|
||||||
column is a different set, one of which will be chosen based on term
|
column is a different set, one of which will be chosen based on term
|
||||||
capabilities, etc.")
|
capabilities, etc.")
|
||||||
|
|
||||||
(defvar which-flet
|
|
||||||
"This variable will store either flet or cl-flet depending on the Emacs
|
|
||||||
version. flet was deprecated in in 24.3")
|
|
||||||
(if (or (> emacs-major-version 24)
|
|
||||||
(and (>= emacs-major-version 24) (> emacs-minor-version 2)))
|
|
||||||
(fset 'which-flet 'cl-flet)
|
|
||||||
(fset 'which-flet 'flet))
|
|
||||||
|
|
||||||
(defun solarized-color-definitions (mode)
|
(defun solarized-face-for-index (facespec index &optional light)
|
||||||
(which-flet ((find-color (name)
|
"Creates a face from facespec where the colors use the names from
|
||||||
(let ((index (if window-system
|
`solarized-colors`."
|
||||||
(if solarized-degrade
|
(let ((new-fontspec (copy-list facespec)))
|
||||||
3
|
(dolist (property '(:foreground :background :color))
|
||||||
(if solarized-broken-srgb 2 1))
|
(let ((color-name (plist-get new-fontspec property)))
|
||||||
(case (display-color-cells)
|
(when color-name
|
||||||
(16 4)
|
;; NOTE: We try to turn an 8-color term into a 10-color term by not
|
||||||
(8 5)
|
;; using default background and foreground colors, expecting the
|
||||||
(otherwise 3)))))
|
;; user to have the right colors set for them.
|
||||||
(nth index (assoc name solarized-colors)))))
|
(when (and (= index 5)
|
||||||
(let ((base03 (find-color 'base03))
|
(or (and (eq property :background)
|
||||||
(base02 (find-color 'base02))
|
(eq color-name 'back))
|
||||||
(base01 (find-color 'base01))
|
(and (eq property :foreground)
|
||||||
(base00 (find-color 'base00))
|
(member color-name '(base0 base1)))))
|
||||||
(base0 (find-color 'base0))
|
(setf color-name nil))
|
||||||
(base1 (find-color 'base1))
|
(when (eq color-name 'back)
|
||||||
(base2 (find-color 'base2))
|
(setf color-name 'base03))
|
||||||
(base3 (find-color 'base3))
|
(when light
|
||||||
(yellow (find-color 'yellow))
|
(setf color-name
|
||||||
(orange (find-color 'orange))
|
(case color-name
|
||||||
(red (find-color 'red))
|
(base03 'base3)
|
||||||
(magenta (find-color 'magenta))
|
(base02 'base2)
|
||||||
(violet (find-color 'violet))
|
(base01 'base1)
|
||||||
(blue (find-color 'blue))
|
(base00 'base0)
|
||||||
(cyan (find-color 'cyan))
|
(base0 'base00)
|
||||||
(green (find-color 'green))
|
(base1 'base01)
|
||||||
(bold (if solarized-bold 'bold 'normal))
|
(base2 'base02)
|
||||||
(bright-bold (if solarized-bold 'normal 'bold))
|
(base3 'base03)
|
||||||
(underline (if solarized-underline t nil))
|
(otherwise color-name))))
|
||||||
(opt-under nil)
|
(plist-put new-fontspec
|
||||||
(italic (if solarized-italic 'italic 'normal)))
|
property
|
||||||
(when (eq 'light mode)
|
(nth index (assoc color-name solarized-colors))))))
|
||||||
(rotatef base03 base3)
|
(when (plist-get new-fontspec :box)
|
||||||
(rotatef base02 base2)
|
(plist-put new-fontspec
|
||||||
(rotatef base01 base1)
|
:box
|
||||||
(rotatef base00 base0))
|
(solarized-face-for-index (plist-get new-fontspec :box) index
|
||||||
(let ((back base03))
|
light)))
|
||||||
(cond ((< (display-color-cells) 16)
|
new-fontspec))
|
||||||
(setf back nil))
|
|
||||||
((eq 'high solarized-contrast)
|
|
||||||
(let ((orig-base3 base3))
|
|
||||||
(rotatef base01 base00 base0 base1 base2 base3)
|
|
||||||
(setf base3 orig-base3)))
|
|
||||||
((eq 'low solarized-contrast)
|
|
||||||
(setf back base02
|
|
||||||
opt-under t)))
|
|
||||||
;; NOTE: We try to turn an 8-color term into a 10-color term by not
|
|
||||||
;; using default background and foreground colors, expecting the
|
|
||||||
;; user to have the right colors set for them.
|
|
||||||
(let ((bg-back `(:background ,back))
|
|
||||||
(bg-base03 `(:background ,base03))
|
|
||||||
(bg-base02 `(:background ,base02))
|
|
||||||
(bg-base01 `(:background ,base01))
|
|
||||||
(bg-base00 `(:background ,base00))
|
|
||||||
(bg-base0 `(:background ,base0))
|
|
||||||
(bg-base1 `(:background ,base1))
|
|
||||||
(bg-base2 `(:background ,base2))
|
|
||||||
(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))
|
(defun create-face-spec (name facespec)
|
||||||
(fg-base02 `(:foreground ,base02))
|
`(,name ((((background dark) (type graphic))
|
||||||
(fg-base01 `(:foreground ,base01))
|
,(solarized-face-for-index facespec
|
||||||
(fg-base00 `(:foreground ,base00))
|
(cond (solarized-degrade 3)
|
||||||
(fg-base0 `(:foreground ,(when (<= 16 (display-color-cells))
|
(solarized-broken-srgb 2)
|
||||||
base0)))
|
(t 1))))
|
||||||
(fg-base1 `(:foreground ,(when (<= 16 (display-color-cells))
|
(((background dark) (type tty) (min-colors 256))
|
||||||
base1)))
|
,(solarized-face-for-index facespec 3))
|
||||||
(fg-base2 `(:foreground ,base2))
|
(((background dark) (type tty) (min-colors 16))
|
||||||
(fg-base3 `(:foreground ,base3))
|
,(solarized-face-for-index facespec 4))
|
||||||
(fg-green `(:foreground ,green))
|
(((background dark) (type tty) (min-colors 8))
|
||||||
(fg-yellow `(:foreground ,yellow))
|
,(solarized-face-for-index facespec 5))
|
||||||
(fg-orange `(:foreground ,orange))
|
(((background light) (type graphic))
|
||||||
(fg-red `(:foreground ,red))
|
,(solarized-face-for-index facespec
|
||||||
(fg-magenta `(:foreground ,magenta))
|
(cond (solarized-degrade 3)
|
||||||
(fg-violet `(:foreground ,violet))
|
(solarized-broken-srgb 2)
|
||||||
(fg-blue `(:foreground ,blue))
|
(t 1))
|
||||||
(fg-cyan `(:foreground ,cyan))
|
t))
|
||||||
|
(((background light) (type tty) (min-colors 256))
|
||||||
|
,(solarized-face-for-index facespec 3 t))
|
||||||
|
(((background light) (type tty) (min-colors 16))
|
||||||
|
,(solarized-face-for-index facespec 4 t))
|
||||||
|
(((background light) (type tty) (min-colors 8))
|
||||||
|
,(solarized-face-for-index facespec 5 t)))))
|
||||||
|
|
||||||
(fmt-none `(:weight normal :slant normal :underline nil :inverse-video nil))
|
(defun solarized-color-definitions ()
|
||||||
(fmt-bold `(:weight ,bold :slant normal :underline nil :inverse-video nil))
|
(let ((bold (if solarized-bold 'bold 'normal))
|
||||||
(fmt-bldi `(:weight ,bold :underline nil :inverse-video nil))
|
(bright-bold (if solarized-bold 'normal 'bold))
|
||||||
(fmt-undr `(:weight normal :slant normal :underline ,underline :inverse-video nil))
|
(underline (if solarized-underline t nil))
|
||||||
(fmt-undb `(:weight ,bold :slant normal :underline ,underline :inverse-video nil))
|
(opt-under nil)
|
||||||
(fmt-undi `(:weight normal :underline ,underline :inverse-video nil))
|
(italic (if solarized-italic 'italic 'normal)))
|
||||||
(fmt-uopt `(:weight normal :slant normal :underline ,opt-under :inverse-video nil))
|
(cond ((eq 'high solarized-contrast)
|
||||||
;; FIXME: not quite the same
|
(let ((orig-base3 base3))
|
||||||
(fmt-curl `(:weight normal :slant normal :underline t :inverse-video nil))
|
(rotatef base01 base00 base0 base1 base2 base3)
|
||||||
(fmt-ital `(:weight normal :slant ,italic :underline nil :inverse-video nil))
|
(setf base3 orig-base3)))
|
||||||
;; FIXME: not quite the same
|
((eq 'low solarized-contrast)
|
||||||
(fmt-stnd `(:weight normal :slant normal :underline nil :inverse-video t))
|
(setf back base02
|
||||||
(fmt-revr `(:weight normal :slant normal :underline nil :inverse-video t))
|
opt-under t)))
|
||||||
(fmt-revb `(:weight ,bold :slant normal :underline nil :inverse-video t))
|
(let ((bg-back '(:background back))
|
||||||
(fmt-revbb `(:weight ,bright-bold :slant normal :underline nil :inverse-video t))
|
(bg-base03 '(:background base03))
|
||||||
(fmt-revbbu `(:weight ,bright-bold :slant normal :underline ,underline :inverse-video t)))
|
(bg-base02 '(:background base02))
|
||||||
`((;; basic
|
(bg-base01 '(:background base01))
|
||||||
(default ((t (,@fg-base0 ,@bg-back)))) ; Normal
|
(bg-base00 '(:background base00))
|
||||||
(cursor ((t (,@fg-base03 ,@bg-base0)))) ; Cursor
|
(bg-base0 '(:background base0))
|
||||||
(error ((t (,@fmt-bold ,@fg-red)))) ; Error
|
(bg-base1 '(:background base1))
|
||||||
(escape-glyph-face ((t (,@fg-red))))
|
(bg-base2 '(:background base2))
|
||||||
(fringe ((t (,@fg-base01 ,@bg-base02))))
|
(bg-base3 '(:background base3))
|
||||||
(linum ((t (,@fg-base01 ,@bg-base02))))
|
(bg-green '(:background green))
|
||||||
(header-line ((t (,@fg-base0 ,@bg-base02 ,@fmt-revbb)))) ; Pmenu
|
(bg-yellow '(:background yellow))
|
||||||
(highlight ((t (,@bg-base02))))
|
(bg-orange '(:background orange))
|
||||||
(hl-line ((t (:underline ,opt-under ,@bg-base02)))) ; CursorLine
|
(bg-red '(:background red))
|
||||||
(isearch ((t (,@fmt-stnd ,@fg-orange ,@bg-back)))) ; IncSearch
|
(bg-magenta '(:background magenta))
|
||||||
(isearch-fail ((t (,@fmt-stnd ,@fg-orange ,@bg-back)))) ; IncSearch
|
(bg-violet '(:background violet))
|
||||||
(lazy-highlight ((t (,@fmt-revr ,@fg-yellow ,@bg-back)))) ; Search
|
(bg-blue '(:background blue))
|
||||||
(match ((t (,@fmt-revr ,@fg-yellow ,@bg-back)))) ; Occur
|
(bg-cyan '(:background cyan))
|
||||||
(link ((t (,@fmt-undr ,@fg-violet))))
|
|
||||||
(link-visited ((t (,@fmt-undr ,@fg-magenta))))
|
|
||||||
(menu ((t (,@fg-base0 ,@bg-base02))))
|
|
||||||
(minibuffer-prompt ((t (,@fmt-bold ,@fg-cyan)))) ; Question
|
|
||||||
(mode-line ; StatusLine
|
|
||||||
((t (,@fg-base1 ,@bg-base02 ,@fmt-revbb :box nil))))
|
|
||||||
(mode-line-inactive ; StatusLineNC
|
|
||||||
((t (,@fg-base00 ,@bg-base02 ,@fmt-revbb :box nil))))
|
|
||||||
(region ((t (,@fg-base01 ,@bg-base03 ,@fmt-revbb)))) ; Visual
|
|
||||||
(secondary-selection ((t (,@bg-base02))))
|
|
||||||
(shadow ((t (,@fg-base01))))
|
|
||||||
(trailing-whitespace ((t (,@fmt-revr ,@fg-red))))
|
|
||||||
(vertical-border ((t (,@fg-base0))))
|
|
||||||
;; comint
|
|
||||||
(comint-highlight-prompt ((t (,@fg-blue))))
|
|
||||||
;; compilation
|
|
||||||
(compilation-info ((t (,@fmt-bold ,@fg-green))))
|
|
||||||
(compilation-warning ((t (,@fmt-bold ,@fg-orange))))
|
|
||||||
;; custom
|
|
||||||
(custom-button
|
|
||||||
((t (,@fg-base1 ,@bg-base02
|
|
||||||
:box (:line-width 2 :style released-button)))))
|
|
||||||
(custom-button-mouse
|
|
||||||
((t (,@fmt-revr ,@fg-base1 ,@bg-base02 :inherit custom-button))))
|
|
||||||
(custom-button-pressed
|
|
||||||
((t (,@fmt-revr ,@fg-base1 ,@bg-base02
|
|
||||||
:box (:line-width 2 :style pressed-button)
|
|
||||||
:inherit custom-button-mouse))))
|
|
||||||
(custom-changed ((t (,@fmt-revr ,@fg-blue ,@bg-base3))))
|
|
||||||
(custom-comment ((t (,@fg-base1 ,@bg-base02))))
|
|
||||||
(custom-comment-tag ((t (,@fg-base1 ,@bg-base02))))
|
|
||||||
(custom-documentation ((t (:inherit default))))
|
|
||||||
(custom-group-tag ((t (,@fg-base1))))
|
|
||||||
(custom-group-tag-1 ((t (,fmt-bold ,@fg-base1))))
|
|
||||||
(custom-invalid ((t (,@fmt-revr ,@fg-red ,@bg-back))))
|
|
||||||
(custom-link ((t (,@fg-violet))))
|
|
||||||
(custom-state ((t (,@fg-green))))
|
|
||||||
(custom-variable-tag ((t (,@fg-base1))))
|
|
||||||
;; diff - DiffAdd, DiffChange, DiffDelete, and DiffText
|
|
||||||
,@(case solarized-diff-mode
|
|
||||||
(high
|
|
||||||
`((diff-added ((t (,@fmt-revr ,@fg-green))))
|
|
||||||
(diff-changed ((t (,@fmt-revr ,@fg-yellow))))
|
|
||||||
(diff-removed ((t (,@fmt-revr ,@fg-red))))
|
|
||||||
(diff-refine-change
|
|
||||||
((t (,@fmt-revr ,@fg-blue ,@bg-back))))))
|
|
||||||
(low
|
|
||||||
`((diff-added ((t (,@fmt-undr ,@fg-green))))
|
|
||||||
(diff-changed ((t (,@fmt-undr ,@fg-yellow))))
|
|
||||||
(diff-removed ((t (,@fmt-bold ,@fg-red))))
|
|
||||||
(diff-refine-change
|
|
||||||
((t (,@fmt-undr ,@fg-blue ,@bg-back))))))
|
|
||||||
(normal
|
|
||||||
(if window-system
|
|
||||||
`((diff-added ((t (,@fmt-bold ,@fg-green))))
|
|
||||||
(diff-changed ((t (,@fmt-bold ,@fg-yellow))))
|
|
||||||
(diff-removed ((t (,@fmt-bold ,@fg-red))))
|
|
||||||
(diff-refine-change
|
|
||||||
((t (,@fmt-bold ,@fg-blue ,@bg-back)))))
|
|
||||||
`((diff-added ((t (,@fg-green))))
|
|
||||||
(diff-changed ((t (,@fg-yellow))))
|
|
||||||
(diff-removed ((t (,@fg-red))))
|
|
||||||
(diff-refine-change ((t (,@fg-blue ,@bg-back))))))))
|
|
||||||
(diff-file-header ((t (,@bg-back))))
|
|
||||||
(diff-header ((t (,@fg-base1 ,@bg-back))))
|
|
||||||
;; IDO
|
|
||||||
(ido-only-match ((t (,@fg-green))))
|
|
||||||
(ido-subdir ((t (,@fg-blue))))
|
|
||||||
(ido-first-match ((t (,@fmt-bold ,@fg-green))))
|
|
||||||
;; emacs-wiki
|
|
||||||
(emacs-wiki-bad-link-face ((t (,@fmt-undr ,@fg-red))))
|
|
||||||
(emacs-wiki-link-face ((t (,@fmt-undr ,@fg-blue))))
|
|
||||||
(emacs-wiki-verbatim-face ((t (,@fmt-undr ,@fg-base00))))
|
|
||||||
;; eshell
|
|
||||||
(eshell-ls-archive ((t (,@fg-magenta))))
|
|
||||||
(eshell-ls-backup ((t (,@fg-yellow))))
|
|
||||||
(eshell-ls-clutter ((t (,@fg-orange))))
|
|
||||||
(eshell-ls-directory ((t (,@fg-blue)))) ; Directory
|
|
||||||
(eshell-ls-executable ((t (,@fg-green))))
|
|
||||||
(eshell-ls-missing ((t (,@fg-red))))
|
|
||||||
(eshell-ls-product ((t (,@fg-yellow))))
|
|
||||||
(eshell-ls-readonly ((t (,@fg-base1))))
|
|
||||||
(eshell-ls-special ((t (,@fg-violet))))
|
|
||||||
(eshell-ls-symlink ((t (,@fg-cyan))))
|
|
||||||
(eshell-ls-unreadable ((t (,@fg-base00))))
|
|
||||||
(eshell-prompt ((t (,@fmt-bold ,@fg-green))))
|
|
||||||
;; font-lock
|
|
||||||
(font-lock-builtin-face ((t (,@fmt-none ,@fg-green)))) ; Statement
|
|
||||||
(font-lock-comment-face ((t (,@fmt-ital ,@fg-base01)))) ; Comment
|
|
||||||
(font-lock-constant-face ((t (,@fmt-none ,@fg-cyan)))) ; Constant
|
|
||||||
(font-lock-function-name-face ; Identifier
|
|
||||||
((t (,@fmt-none ,@fg-blue))))
|
|
||||||
(font-lock-keyword-face ((t (,@fmt-none ,@fg-green)))) ; Statement
|
|
||||||
(font-lock-string-face ((t (,@fmt-none ,@fg-cyan)))) ; Constant
|
|
||||||
(font-lock-type-face ((t (,@fmt-none ,@fg-yellow)))) ; Type
|
|
||||||
(font-lock-variable-name-face ; Identifier
|
|
||||||
((t (,@fmt-none ,@fg-blue))))
|
|
||||||
(font-lock-warning-face ((t (,@fmt-bold ,@fg-red)))) ; Error
|
|
||||||
(font-lock-doc-face ((t (,@fmt-ital ,@fg-base01)))) ; Comment
|
|
||||||
(font-lock-doc-string-face ; Comment (XEmacs-only)
|
|
||||||
((t (,@fmt-ital ,@fg-base01))))
|
|
||||||
(font-lock-color-constant-face ((t (,@fmt-none ,@fg-green))))
|
|
||||||
(font-lock-comment-delimiter-face ; Comment
|
|
||||||
((t (,@fmt-ital ,@fg-base01))))
|
|
||||||
(font-lock-preprocessor-face ; PreProc
|
|
||||||
((t (,@fmt-none ,@fg-orange))))
|
|
||||||
(font-lock-reference-face ((t (,@fmt-none ,@fg-cyan))))
|
|
||||||
(font-lock-negation-char-face ((t (,@fmt-none ,@fg-red))))
|
|
||||||
(font-lock-other-type-face ((t (,@fmt-ital ,@fg-blue))))
|
|
||||||
(font-lock-regexp-grouping-construct
|
|
||||||
((t (,@fmt-none ,@fg-orange))))
|
|
||||||
(font-lock-special-keyword-face ; Special
|
|
||||||
((t (,@fmt-none ,@fg-red))))
|
|
||||||
(font-lock-exit-face ((t (,@fmt-none ,@fg-red))))
|
|
||||||
(font-lock-other-emphasized-face ((t (,@fmt-bldi ,@fg-violet))))
|
|
||||||
(font-lock-regexp-grouping-backslash
|
|
||||||
((t (,@fmt-none ,@fg-yellow))))
|
|
||||||
;; info
|
|
||||||
(info-xref ((t (,@fmt-undr ,@fg-blue))))
|
|
||||||
(info-xref-visited ((t (,@fg-magenta :inherit info-xref))))
|
|
||||||
;; org
|
|
||||||
(org-hide ((t (,@fg-base03))))
|
|
||||||
(org-todo ((t (,@fmt-bold ,@fg-base03 ,@bg-red))))
|
|
||||||
(org-done ((t (,@fmt-bold ,@fg-green))))
|
|
||||||
(org-todo-kwd-face ((t (,@fg-red ,@bg-base03))))
|
|
||||||
(org-done-kwd-face ((t (,@fg-green ,@bg-base03))))
|
|
||||||
(org-project-kwd-face ((t (,@fg-violet ,@bg-base03))))
|
|
||||||
(org-waiting-kwd-face ((t (,@fg-orange ,@bg-base03))))
|
|
||||||
(org-someday-kwd-face ((t (,@fg-blue ,@bg-base03))))
|
|
||||||
(org-started-kwd-face ((t (,@fg-yellow ,@bg-base03))))
|
|
||||||
(org-cancelled-kwd-face ((t (,@fg-green ,@bg-base03))))
|
|
||||||
(org-delegated-kwd-face ((t (,@fg-cyan ,@bg-base03))))
|
|
||||||
;; table
|
|
||||||
(table-cell ((t (,@fmt-none ,@fg-base0 ,@bg-back))))
|
|
||||||
;; outline - pandocBlockQuoteLeader*
|
|
||||||
(outline-1 ((t (,@fmt-none ,@fg-blue))))
|
|
||||||
(outline-2 ((t (,@fmt-none ,@fg-cyan))))
|
|
||||||
(outline-3 ((t (,@fmt-none ,@fg-yellow))))
|
|
||||||
(outline-4 ((t (,@fmt-none ,@fg-red))))
|
|
||||||
(outline-5 ((t (,@fmt-none ,@fg-base0))))
|
|
||||||
(outline-6 ((t (,@fmt-none ,@fg-base01))))
|
|
||||||
(outline-7 ((t (,@fmt-none ,@fg-orange))))
|
|
||||||
(outline-8 ((t (,@fmt-none ,@fg-violet))))
|
|
||||||
;; speedbar
|
|
||||||
(speedbar-button-face ((t (,@fmt-none ,@fg-base1))))
|
|
||||||
(speedbar-directory-face ((t (,@fmt-none ,@fg-orange))))
|
|
||||||
(speedbar-file-face ((t (,@fmt-none ,@fg-green))))
|
|
||||||
(speedbar-highlight-face ((t (,@bg-base02))))
|
|
||||||
(speedbar-selected-face ((t (,@fmt-undr ,@fg-yellow))))
|
|
||||||
(speedbar-separator-face ((t (,@fmt-stnd))))
|
|
||||||
(speedbar-tag-face ((t (,@fmt-none ,@fg-blue))))
|
|
||||||
;; show-paren - MatchParen
|
|
||||||
(show-paren-match ((t (,@fmt-bold ,@fg-cyan ,@bg-base02))))
|
|
||||||
(show-paren-mismatch ((t (,@fmt-bold ,@fg-red ,@bg-base01))))
|
|
||||||
;; widgets
|
|
||||||
(widget-field
|
|
||||||
((t (,@fg-base1 ,@bg-base02 :box (:line-width 1)
|
|
||||||
:inherit default))))
|
|
||||||
(widget-single-line-field ((t (:inherit widget-field))))
|
|
||||||
;; extra modules
|
|
||||||
;; -------------
|
|
||||||
;; ace-jump-mode
|
|
||||||
(ace-jump-face-background ((t (,@fmt-none ,@fg-base01))))
|
|
||||||
(ace-jump-face-foreground ((t (,@fmt-bold ,@fg-red))))
|
|
||||||
;; bm visual bookmarks
|
|
||||||
(bm-fringe-face ((t (,@bg-orange ,@fg-base03))))
|
|
||||||
(bm-fringe-persistent-face ((t (,@bg-blue ,@fg-base03))))
|
|
||||||
;; Flymake
|
|
||||||
(flymake-errline ((t (,@fmt-revr ,@fg-red ,@bg-back)))) ; ErrorMsg
|
|
||||||
(flymake-warnline ; WarningMsg
|
|
||||||
((t (,@fmt-bold ,@fg-red ,@bg-back))))
|
|
||||||
;; column-marker
|
|
||||||
(column-marker-1 ((t (,@bg-base01))))
|
|
||||||
(column-marker-2 ((t (,@bg-cyan))))
|
|
||||||
(column-marker-3 ((t (,@bg-violet))))
|
|
||||||
;; jabber
|
|
||||||
(jabber-activity-face ((t (,@fmt-bold ,@fg-red))))
|
|
||||||
(jabber-activity-personal-face ((t (,@fmt-bold ,@fg-blue))))
|
|
||||||
(jabber-chat-error ((t (,@fmt-bold ,@fg-red))))
|
|
||||||
(jabber-chat-prompt-foreign ((t (,@fmt-bold ,@fg-red))))
|
|
||||||
(jabber-chat-prompt-local ((t (,@fmt-bold ,@fg-blue))))
|
|
||||||
(jabber-chat-prompt-system ((t (,@fmt-bold ,@fg-green))))
|
|
||||||
(jabber-chat-text-foreign ((t (,@fg-base1))))
|
|
||||||
(jabber-chat-text-local ((t (,@fg-base0))))
|
|
||||||
(jabber-chat-rare-time-face ((t (,@fmt-undr ,@fg-green))))
|
|
||||||
(jabber-roster-user-away ((t (,@fmt-ital ,@fg-green))))
|
|
||||||
(jabber-roster-user-chatty ((t (,@fmt-bold ,@fg-orange))))
|
|
||||||
(jabber-roster-user-dnd ((t (,@fmt-ital ,@fg-red))))
|
|
||||||
(jabber-roster-user-error ((t (:weight light :slant italic ,@fg-red))))
|
|
||||||
(jabber-roster-user-offline ((t (,@fg-base01))))
|
|
||||||
(jabber-roster-user-online ((t (,@fmt-bold ,@fg-blue))))
|
|
||||||
(jabber-roster-user-xa ((t (,@fmt-ital ,@fg-magenta))))
|
|
||||||
;; git-gutter
|
|
||||||
(git-gutter:modified ((t (,@fg-violet))))
|
|
||||||
(git-gutter:added ((t (,@fg-green))))
|
|
||||||
(git-gutter:deleted ((t (,@fg-red))))
|
|
||||||
;; gnus - these are taken from mutt, not VIM
|
|
||||||
(gnus-cite-1 ((t (,@fmt-none ,@fg-blue)))) ; quoted
|
|
||||||
(gnus-cite-2 ((t (,@fmt-none ,@fg-cyan)))) ; quoted1
|
|
||||||
(gnus-cite-3 ((t (,@fmt-none ,@fg-yellow)))) ; quoted2
|
|
||||||
(gnus-cite-4 ((t (,@fmt-none ,@fg-red)))) ; quoted3
|
|
||||||
(gnus-cite-5 ((t (,@fmt-none ,@fg-orange)))) ; quoted4
|
|
||||||
(gnus-cite-6 ((t (,@fmt-none ,@fg-violet))))
|
|
||||||
(gnus-cite-7 ((t (,@fmt-none ,@fg-green))))
|
|
||||||
(gnus-cite-8 ((t (,@fmt-none ,@fg-magenta))))
|
|
||||||
(gnus-cite-9 ((t (,@fmt-none ,@fg-base00))))
|
|
||||||
(gnus-cite-10 ((t (,@fmt-none ,@fg-base01))))
|
|
||||||
(gnus-cite-11 ((t (,@fmt-none ,@fg-base02))))
|
|
||||||
(gnus-group-mail-1 ((t (,@fmt-bold ,@fg-base3))))
|
|
||||||
(gnus-group-mail-1-empty ((t (,@fg-base3))))
|
|
||||||
(gnus-group-mail-2 ((t (,@fmt-bold ,@fg-base2))))
|
|
||||||
(gnus-group-mail-2-empty ((t (,@fg-base2))))
|
|
||||||
(gnus-group-mail-3 ((t (,@fmt-bold ,@fg-magenta))))
|
|
||||||
(gnus-group-mail-3-empty ((t (,@fg-magenta))))
|
|
||||||
(gnus-group-mail-low ((t (,@fmt-bold ,@fg-base00))))
|
|
||||||
(gnus-group-mail-low-empty ((t (,@fg-base00))))
|
|
||||||
(gnus-group-news-1 ((t (,@fmt-bold ,@fg-base1))))
|
|
||||||
(gnus-group-news-1-empty ((t (,@fg-base1))))
|
|
||||||
(gnus-group-news-2 ((t (,@fmt-bold ,@fg-blue))))
|
|
||||||
(gnus-group-news-2-empty ((t (,@fg-blue))))
|
|
||||||
(gnus-group-news-low ((t (,@fmt-bold ,@fg-violet))))
|
|
||||||
(gnus-group-news-low-empty ((t (,@fg-violet))))
|
|
||||||
(gnus-emphasis-highlight-words ; highlight
|
|
||||||
((t (,@fmt-none ,fg-yellow))))
|
|
||||||
(gnus-header-content ((t (,@fmt-none ,@fg-base01)))) ; hdrdefault
|
|
||||||
(gnus-header-from ((t (,@fmt-none ,@fg-base00)))) ; header ^From
|
|
||||||
(gnus-header-name ((t (,@fmt-none ,@fg-base01)))) ; hdrdefault
|
|
||||||
(gnus-header-newsgroups ; hdrdefault
|
|
||||||
((t (,@fmt-none ,@fg-base02))))
|
|
||||||
(gnus-header-subject ; header ^Subject
|
|
||||||
((t (,@fmt-none ,@fg-blue))))
|
|
||||||
(gnus-server-agent ((t (,@fmt-bold ,@fg-base3))))
|
|
||||||
(gnus-server-closed ((t (,@fmt-ital ,@fg-base1))))
|
|
||||||
(gnus-server-denied ((t (,@fmt-bold ,@fg-base2))))
|
|
||||||
(gnus-server-offline ((t (,@fmt-bold ,@fg-green))))
|
|
||||||
(gnus-server-opened ((t (,@fmt-bold ,@fg-cyan))))
|
|
||||||
(gnus-signature ((t (,@fmt-none ,@fg-base01)))) ; signature
|
|
||||||
(gnus-splash ((t (,@fg-base2))))
|
|
||||||
(gnus-summary-cancelled ; deleted messages
|
|
||||||
((t (,@fmt-none ,@fg-red))))
|
|
||||||
(gnus-summary-high-ancient
|
|
||||||
((t (,@fmt-bold :inherit gnus-summary-normal-ancient))))
|
|
||||||
(gnus-summary-high-read
|
|
||||||
((t (,@fmt-bold :inherit gnus-summary-normal-read))))
|
|
||||||
(gnus-summary-high-ticked
|
|
||||||
((t (,@fmt-bold :inherit gnus-summary-normal-ticked))))
|
|
||||||
(gnus-summary-high-undownloaded
|
|
||||||
((t (,@fmt-bold :inherit gnus-summary-normal-undownloaded))))
|
|
||||||
(gnus-summary-high-unread
|
|
||||||
((t (,@fmt-bold :inherit gnus-summary-normal-unread))))
|
|
||||||
(gnus-summary-low-ancient
|
|
||||||
((t (,@fmt-ital :inherit gnus-summary-normal-ancient))))
|
|
||||||
(gnus-summary-low-read
|
|
||||||
((t (,@fmt-ital :inherit gnus-summary-normal-ancient))))
|
|
||||||
(gnus-summary-low-unread
|
|
||||||
((t (,@fmt-ital :inherit gnus-summary-normal-unread))))
|
|
||||||
(gnus-summary-low-ticked
|
|
||||||
((t (,@fmt-ital :inherit gnus-summary-normal-ancient))))
|
|
||||||
(gnus-summary-low-undownloaded
|
|
||||||
((t (,@fmt-ital :inherit gnus-summary-normal-ancient))))
|
|
||||||
(gnus-summary-normal-ancient ; old messages
|
|
||||||
((t (,@fmt-none ,@fg-blue))))
|
|
||||||
(gnus-summary-normal-read ; read messages
|
|
||||||
((t (,@fmt-none ,@fg-base01))))
|
|
||||||
(gnus-summary-normal-ticked ; flagged
|
|
||||||
((t (,@fmt-none ,@fg-red))))
|
|
||||||
(gnus-summary-normal-undownloaded ((t (,@fmt-none ,@fg-base2))))
|
|
||||||
(gnus-summary-normal-unread ; unread messages
|
|
||||||
((t (,@fmt-none ,@fg-blue))))
|
|
||||||
(gnus-summary-selected ; indicator
|
|
||||||
((t (,@fmt-none ,@fg-base03 ,@bg-yellow))))
|
|
||||||
;; Message
|
|
||||||
(message-mml ((t (,@fg-blue))))
|
|
||||||
(message-cited-text ((t (,@fg-base2))))
|
|
||||||
(message-separator ((t (,@fg-base3))))
|
|
||||||
(message-header-xheader ((t (,@fg-violet))))
|
|
||||||
(message-header-name ((t (,@fg-cyan))))
|
|
||||||
(message-header-other ((t (,@fg-red))))
|
|
||||||
(message-header-newsgroups ((t (,@fmt-bldi ,@fg-yellow))))
|
|
||||||
(message-header-subject ((t (,@fg-base00))))
|
|
||||||
(message-header-cc ((t (,@fmt-bold ,@fg-green))))
|
|
||||||
(message-header-to ((t (,@fmt-bold ,@fg-base1))))
|
|
||||||
;; parenface
|
|
||||||
(paren-face ((t (,@fg-base01))))
|
|
||||||
;; rainbow-delimiters
|
|
||||||
(rainbow-delimiters-depth-1-face ((t (,@fg-cyan))))
|
|
||||||
(rainbow-delimiters-depth-2-face ((t (,@fg-yellow))))
|
|
||||||
(rainbow-delimiters-depth-3-face ((t (,@fg-blue))))
|
|
||||||
(rainbow-delimiters-depth-4-face ((t (,@fg-red))))
|
|
||||||
(rainbow-delimiters-depth-5-face ((t (,@fg-green))))
|
|
||||||
(rainbow-delimiters-depth-6-face ((t (,@fg-blue))))
|
|
||||||
(rainbow-delimiters-depth-7-face ((t (,@fg-orange))))
|
|
||||||
(rainbow-delimiters-depth-8-face ((t (,@fg-magenta))))
|
|
||||||
(rainbow-delimiters-depth-9-face ((t (,@fg-base0))))
|
|
||||||
;; slime
|
|
||||||
(slime-error-face ((t (,@fmt-revr ,@fg-red)))) ; ErrorMsg
|
|
||||||
(slime-note-face ((t (,@fg-yellow))))
|
|
||||||
(slime-repl-inputted-output-face ((t (,@fg-red))))
|
|
||||||
(slime-repl-output-mouseover-face ((t (:box (:color ,base3)))))
|
|
||||||
(slime-style-warning-face ((t (,@fmt-bold ,@fg-orange))))
|
|
||||||
(slime-warning-face ((t (,@fmt-bold ,@fg-red)))) ; WarningMsg
|
|
||||||
;; tabbar
|
|
||||||
(tabbar-selected ((t (,@bg-blue ,@fg-base02))))
|
|
||||||
(tabbar-unselected ((t (,@bg-base0 ,@fg-base02))))
|
|
||||||
(tabbar-modified ((t (,@bg-green ,@fg-base02))))
|
|
||||||
;; whitespace
|
|
||||||
(whitespace-empty ((t (,@fg-red))))
|
|
||||||
(whitespace-hspace ((t (,@fg-orange))))
|
|
||||||
(whitespace-indentation ((t (,@fg-base02))))
|
|
||||||
(whitespace-space ((t (,@fg-base02))))
|
|
||||||
(whitespace-space-after-tab ((t (,@fg-cyan))))
|
|
||||||
(whitespace-space-before-tab ((t (,@fmt-bold ,@fg-red))))
|
|
||||||
(whitespace-tab ((t (,@fg-base02))))
|
|
||||||
(whitespace-trailing ((t (,@fmt-bold ,@fg-red ,@bg-base02))))
|
|
||||||
(whitespace-highlight-face ((t (,@fg-red ,@bg-blue))))
|
|
||||||
(whitespace-line ((t (,@fg-magenta ,@bg-base03))))
|
|
||||||
;; rcirc
|
|
||||||
(rcirc-my-nick ((t (:foreground ,blue))))
|
|
||||||
(rcirc-nick-in-message ((t (:foreground ,orange))))
|
|
||||||
(rcirc-other-nick ((t (:foreground ,green))))
|
|
||||||
(rcirc-prompt ((t (:foreground ,yellow))))
|
|
||||||
(rcirc-bright-nick ((t (:foreground ,magenta))))
|
|
||||||
(rcirc-server ((t (:foreground ,base1))))
|
|
||||||
(rcirc-timestamp ((t (:foreground ,base01))))
|
|
||||||
;; ERC
|
|
||||||
(erc-input-face ((t (:foreground ,base01))))
|
|
||||||
(erc-keyword-face ((t (,@fmt-bldi ,@fg-yellow))))
|
|
||||||
(erc-my-nick-face ((t (:foreground ,blue))))
|
|
||||||
(erc-nick-default-face ((t (,@fmt-none ,@fg-cyan))))
|
|
||||||
(erc-notice-face ((t (,@fmt-none ,@fg-blue))))
|
|
||||||
(erc-timestamp-face ((t (:foreground ,base01))))
|
|
||||||
;;font-latex
|
|
||||||
(font-latex-warning-face ((t (,@fg-red))))
|
|
||||||
(font-latex-sectioning-5-face ((t (,@fg-violet))))
|
|
||||||
;;flyspell
|
|
||||||
(flyspell-incorrect ((t (,@fg-red))))
|
|
||||||
(flyspell-duplicate ((t (,@fg-yellow))))
|
|
||||||
;;ansi-term
|
|
||||||
(term-color-black ((t ( ,@fg-base02))))
|
|
||||||
(term-color-red ((t ( ,@fg-red))))
|
|
||||||
(term-color-green ((t ( ,@fg-green))))
|
|
||||||
(term-color-yellow ((t ( ,@fg-yellow))))
|
|
||||||
(term-color-blue ((t ( ,@fg-blue))))
|
|
||||||
(term-color-magenta ((t ( ,@fg-magenta))))
|
|
||||||
(term-color-cyan ((t ( ,@fg-cyan))))
|
|
||||||
(term-color-white ((t ( ,@fg-base00)))))
|
|
||||||
|
|
||||||
((foreground-color . ,(when (<= 16 (display-color-cells)) base0))
|
(fg-base03 '(:foreground base03))
|
||||||
(background-color . ,back)
|
(fg-base02 '(:foreground base02))
|
||||||
(background-mode . ,mode)
|
(fg-base01 '(:foreground base01))
|
||||||
(cursor-color . ,(when (<= 16 (display-color-cells))
|
(fg-base00 '(:foreground base00))
|
||||||
base0))
|
(fg-base0 '(:foreground base0))
|
||||||
(ansi-color-names-vector . [,base02 ,red ,green ,yellow ,blue ,magenta ,cyan ,base00]))))))))
|
(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))
|
||||||
|
|
||||||
(defmacro create-solarized-theme (mode)
|
(fmt-none `(:weight normal :slant normal :underline nil :inverse-video nil))
|
||||||
(let* ((theme-name (intern (concat "solarized-" (symbol-name mode))))
|
(fmt-bold `(:weight ,bold :slant normal :underline nil :inverse-video nil))
|
||||||
(defs (solarized-color-definitions mode))
|
(fmt-bldi `(:weight ,bold :underline nil :inverse-video nil))
|
||||||
(theme-vars (mapcar (lambda (def) (list (car def) (cdr def)))
|
(fmt-undr `(:weight normal :slant normal :underline ,underline :inverse-video nil))
|
||||||
(second defs)))
|
(fmt-undb `(:weight ,bold :slant normal :underline ,underline :inverse-video nil))
|
||||||
(theme-faces (first defs)))
|
(fmt-undi `(:weight normal :underline ,underline :inverse-video nil))
|
||||||
`(progn
|
(fmt-uopt `(:weight normal :slant normal :underline ,opt-under :inverse-video nil))
|
||||||
(deftheme ,theme-name ,solarized-description)
|
;; FIXME: not quite the same
|
||||||
(apply 'custom-theme-set-variables ',theme-name ',theme-vars)
|
(fmt-curl `(:weight normal :slant normal :underline t :inverse-video nil))
|
||||||
(apply 'custom-theme-set-faces ',theme-name ',theme-faces)
|
(fmt-ital `(:weight normal :slant ,italic :underline nil :inverse-video nil))
|
||||||
(provide-theme ',theme-name))))
|
;; FIXME: not quite the same
|
||||||
|
(fmt-stnd `(:weight normal :slant normal :underline nil :inverse-video t))
|
||||||
|
(fmt-revr `(:weight normal :slant normal :underline nil :inverse-video t))
|
||||||
|
(fmt-revb `(:weight ,bold :slant normal :underline nil :inverse-video t))
|
||||||
|
(fmt-revbb `(:weight ,bright-bold :slant normal :underline nil :inverse-video t))
|
||||||
|
(fmt-revbbu `(:weight ,bright-bold :slant normal :underline ,underline :inverse-video t)))
|
||||||
|
(eval-after-load 'ansi-color
|
||||||
|
'(setf ansi-color-names-vector [,base02 ,red ,green ,yellow ,blue ,magenta ,cyan ,base00]))
|
||||||
|
(mapcar (lambda (face) (apply 'create-face-spec face))
|
||||||
|
`(;; basic
|
||||||
|
(default (,@fg-base0 ,@bg-back)) ; Normal
|
||||||
|
(cursor (,@fg-base03 ,@bg-base0)) ; Cursor
|
||||||
|
(error (,@fmt-bold ,@fg-red)) ; Error
|
||||||
|
(escape-glyph-face (,@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 (,@fmt-stnd ,@fg-orange ,@bg-back)) ; IncSearch
|
||||||
|
(lazy-highlight (,@fmt-revr ,@fg-yellow ,@bg-back)) ; Search
|
||||||
|
(link (,@fmt-undr ,@fg-violet))
|
||||||
|
(link-visited (,@fmt-undr ,@fg-magenta))
|
||||||
|
(match ((t (,@fmt-revr ,@fg-yellow ,@bg-back)))) ; Occur
|
||||||
|
(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))
|
||||||
|
(region (,@fg-base01 ,@bg-base03 ,@fmt-revbb)) ; Visual
|
||||||
|
(secondary-selection (,@bg-base02))
|
||||||
|
(shadow (,@fg-base01))
|
||||||
|
(trailing-whitespace (,@fmt-revr ,@fg-red))
|
||||||
|
(vertical-border (,@fg-base0))
|
||||||
|
;; comint
|
||||||
|
(comint-highlight-prompt (,@fg-blue))
|
||||||
|
;; compilation
|
||||||
|
(compilation-info (,@fmt-bold ,@fg-green))
|
||||||
|
(compilation-warning (,@fmt-bold ,@fg-orange))
|
||||||
|
;; custom
|
||||||
|
(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))
|
||||||
|
(custom-button-pressed
|
||||||
|
(,@fmt-revr ,@fg-base1 ,@bg-base02
|
||||||
|
:box (:line-width 2 :style pressed-button)
|
||||||
|
: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-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-state (,@fg-green))
|
||||||
|
(custom-variable-tag (,@fg-base1))
|
||||||
|
;; diff - DiffAdd, DiffChange, DiffDelete, and DiffText
|
||||||
|
,@(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-change
|
||||||
|
(,@fmt-revr ,@fg-blue ,@bg-back))))
|
||||||
|
(low
|
||||||
|
`((diff-added (,@fmt-undr ,@fg-green))
|
||||||
|
(diff-changed (,@fmt-undr ,@fg-yellow))
|
||||||
|
(diff-removed (,@fmt-bold ,@fg-red))
|
||||||
|
(diff-refine-change (,@fmt-undr ,@fg-blue ,@bg-back))))
|
||||||
|
(normal
|
||||||
|
(if window-system
|
||||||
|
`((diff-added (,@fmt-bold ,@fg-green ,@bg-base02))
|
||||||
|
(diff-changed (,@fmt-bold ,@fg-yellow ,@bg-base02))
|
||||||
|
(diff-removed (,@fmt-bold ,@fg-red ,@bg-base02))
|
||||||
|
(diff-refine-change (,@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-change (,@fg-blue ,@bg-base02))))))
|
||||||
|
(diff-file-header (,@bg-back))
|
||||||
|
(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))
|
||||||
|
;; eshell
|
||||||
|
(eshell-ls-archive (,@fg-magenta))
|
||||||
|
(eshell-ls-backup (,@fg-yellow))
|
||||||
|
(eshell-ls-clutter (,@fg-orange))
|
||||||
|
(eshell-ls-directory (,@fg-blue)) ; Directory
|
||||||
|
(eshell-ls-executable (,@fg-green))
|
||||||
|
(eshell-ls-missing (,@fg-red))
|
||||||
|
(eshell-ls-product (,@fg-yellow))
|
||||||
|
(eshell-ls-readonly (,@fg-base1))
|
||||||
|
(eshell-ls-special (,@fg-violet))
|
||||||
|
(eshell-ls-symlink (,@fg-cyan))
|
||||||
|
(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-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-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 (,@fmt-undr ,@fg-blue))
|
||||||
|
(info-xref-visited (,@fg-magenta :inherit info-xref))
|
||||||
|
;; org
|
||||||
|
(org-hide (,@fg-base03))
|
||||||
|
(org-todo (,@fmt-bold ,@fg-base03 ,@bg-red))
|
||||||
|
(org-done (,@fmt-bold ,@fg-green))
|
||||||
|
(org-todo-kwd-face (,@fg-red ,@bg-base03))
|
||||||
|
(org-done-kwd-face (,@fg-green ,@bg-base03))
|
||||||
|
(org-project-kwd-face (,@fg-violet ,@bg-base03))
|
||||||
|
(org-waiting-kwd-face (,@fg-orange ,@bg-base03))
|
||||||
|
(org-someday-kwd-face (,@fg-blue ,@bg-base03))
|
||||||
|
(org-started-kwd-face (,@fg-yellow ,@bg-base03))
|
||||||
|
(org-cancelled-kwd-face (,@fg-green ,@bg-base03))
|
||||||
|
(org-delegated-kwd-face (,@fg-cyan ,@bg-base03))
|
||||||
|
;; table
|
||||||
|
(table-cell (,@fmt-none ,@fg-base0 ,@bg-back))
|
||||||
|
;; outline - pandocBlockQuoteLeader*
|
||||||
|
(outline-1 (,@fmt-none ,@fg-blue))
|
||||||
|
(outline-2 (,@fmt-none ,@fg-cyan))
|
||||||
|
(outline-3 (,@fmt-none ,@fg-yellow))
|
||||||
|
(outline-4 (,@fmt-none ,@fg-red))
|
||||||
|
(outline-5 (,@fmt-none ,@fg-base0))
|
||||||
|
(outline-6 (,@fmt-none ,@fg-base01))
|
||||||
|
(outline-7 (,@fmt-none ,@fg-orange))
|
||||||
|
(outline-8 (,@fmt-none ,@fg-violet))
|
||||||
|
;; show-paren - MatchParen
|
||||||
|
(show-paren-match (,@fmt-bold ,@fg-cyan ,@bg-base02))
|
||||||
|
(show-paren-mismatch (,@fmt-bold ,@fg-red ,@bg-base01))
|
||||||
|
;; speedbar
|
||||||
|
;; (speedbar-button-face (,@fmt-none ,@fg-base1))
|
||||||
|
(speedbar-button-face
|
||||||
|
(,@fg-base1 ,@bg-base02
|
||||||
|
:box (:line-width 2 :style released-button)))
|
||||||
|
(speedbar-directory-face (,@fmt-none ,@fg-blue))
|
||||||
|
(speedbar-file-face (,@fmt-none ,@fg-green))
|
||||||
|
;; (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))
|
||||||
|
(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))
|
||||||
|
;; extra modules
|
||||||
|
;; -------------
|
||||||
|
;; bm visual bookmarks
|
||||||
|
(bm-fringe-face (,@bg-orange ,@fg-base03))
|
||||||
|
(bm-fringe-persistent-face (,@bg-blue ,@fg-base03))
|
||||||
|
;; Flymake
|
||||||
|
(flymake-errline (,@fmt-revr ,@fg-red ,@bg-back)) ; ErrorMsg
|
||||||
|
(flymake-warnline (,@fmt-bold ,@fg-red ,@bg-back)) ; WarningMsg
|
||||||
|
;; column-marker
|
||||||
|
(column-marker-1 (,@bg-base01))
|
||||||
|
(column-marker-2 (,@bg-cyan))
|
||||||
|
(column-marker-3 (,@bg-violet))
|
||||||
|
;; jabber
|
||||||
|
(jabber-activity-face (,@fmt-bold ,@fg-red))
|
||||||
|
(jabber-activity-personal-face (,@fmt-bold ,@fg-blue))
|
||||||
|
(jabber-chat-error (,@fmt-bold ,@fg-red))
|
||||||
|
(jabber-chat-prompt-foreign (,@fmt-bold ,@fg-red))
|
||||||
|
(jabber-chat-prompt-local (,@fmt-bold ,@fg-blue))
|
||||||
|
(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-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-offline (,@fg-base01))
|
||||||
|
(jabber-roster-user-online (,@fmt-bold ,@fg-blue))
|
||||||
|
(jabber-roster-user-xa (,@fmt-ital ,@fg-magenta))
|
||||||
|
;; git-gutter
|
||||||
|
(git-gutter:modified (,@fg-violet))
|
||||||
|
(git-gutter:added (,@fg-green))
|
||||||
|
(git-gutter:deleted (,@fg-red))
|
||||||
|
;; gnus - these are taken from mutt, not VIM
|
||||||
|
(gnus-cite-1 (,@fmt-none ,@fg-blue)) ; quoted
|
||||||
|
(gnus-cite-2 (,@fmt-none ,@fg-cyan)) ; quoted1
|
||||||
|
(gnus-cite-3 (,@fmt-none ,@fg-yellow)) ; quoted2
|
||||||
|
(gnus-cite-4 (,@fmt-none ,@fg-red)) ; quoted3
|
||||||
|
(gnus-cite-5 (,@fmt-none ,@fg-orange)) ; quoted4
|
||||||
|
(gnus-cite-6 (,@fmt-none ,@fg-violet))
|
||||||
|
(gnus-cite-7 (,@fmt-none ,@fg-green))
|
||||||
|
(gnus-cite-8 (,@fmt-none ,@fg-magenta))
|
||||||
|
(gnus-cite-9 (,@fmt-none ,@fg-base00))
|
||||||
|
(gnus-cite-10 (,@fmt-none ,@fg-base01))
|
||||||
|
(gnus-cite-11 (,@fmt-none ,@fg-base02))
|
||||||
|
(gnus-group-mail-1 (,@fmt-bold ,@fg-base3))
|
||||||
|
(gnus-group-mail-1-empty (,@fg-base3))
|
||||||
|
(gnus-group-mail-2 (,@fmt-bold ,@fg-base2))
|
||||||
|
(gnus-group-mail-2-empty (,@fg-base2))
|
||||||
|
(gnus-group-mail-3 (,@fmt-bold ,@fg-magenta))
|
||||||
|
(gnus-group-mail-3-empty (,@fg-magenta))
|
||||||
|
(gnus-group-mail-low (,@fmt-bold ,@fg-base00))
|
||||||
|
(gnus-group-mail-low-empty (,@fg-base00))
|
||||||
|
(gnus-group-news-1 (,@fmt-bold ,@fg-base1))
|
||||||
|
(gnus-group-news-1-empty (,@fg-base1))
|
||||||
|
(gnus-group-news-2 (,@fmt-bold ,@fg-blue))
|
||||||
|
(gnus-group-news-2-empty (,@fg-blue))
|
||||||
|
(gnus-group-news-low (,@fmt-bold ,@fg-violet))
|
||||||
|
(gnus-group-news-low-empty (,@fg-violet))
|
||||||
|
(gnus-emphasis-highlight-words ; highlight
|
||||||
|
(,@fmt-none ,fg-yellow))
|
||||||
|
(gnus-header-content (,@fmt-none ,@fg-base01)) ; hdrdefault
|
||||||
|
(gnus-header-from (,@fmt-none ,@fg-base00)) ; header ^From
|
||||||
|
(gnus-header-name (,@fmt-none ,@fg-base01)) ; hdrdefault
|
||||||
|
(gnus-header-newsgroups (,@fmt-none ,@fg-base02)) ; hdrdefault
|
||||||
|
(gnus-header-subject (,@fmt-none ,@fg-blue)) ; header ^Subject
|
||||||
|
(gnus-server-agent (,@fmt-bold ,@fg-base3))
|
||||||
|
(gnus-server-closed (,@fmt-ital ,@fg-base1))
|
||||||
|
(gnus-server-denied (,@fmt-bold ,@fg-base2))
|
||||||
|
(gnus-server-offline (,@fmt-bold ,@fg-green))
|
||||||
|
(gnus-server-opened (,@fmt-bold ,@fg-cyan))
|
||||||
|
(gnus-signature (,@fmt-none ,@fg-base01)) ; signature
|
||||||
|
(gnus-splash (,@fg-base2))
|
||||||
|
(gnus-summary-cancelled ; deleted messages
|
||||||
|
(,@fmt-none ,@fg-red))
|
||||||
|
(gnus-summary-high-ancient
|
||||||
|
(,@fmt-bold :inherit gnus-summary-normal-ancient))
|
||||||
|
(gnus-summary-high-read
|
||||||
|
(,@fmt-bold :inherit gnus-summary-normal-read))
|
||||||
|
(gnus-summary-high-ticked
|
||||||
|
(,@fmt-bold :inherit gnus-summary-normal-ticked))
|
||||||
|
(gnus-summary-high-undownloaded
|
||||||
|
(,@fmt-bold :inherit gnus-summary-normal-undownloaded))
|
||||||
|
(gnus-summary-high-unread
|
||||||
|
(,@fmt-bold :inherit gnus-summary-normal-unread))
|
||||||
|
(gnus-summary-low-ancient
|
||||||
|
(,@fmt-ital :inherit gnus-summary-normal-ancient))
|
||||||
|
(gnus-summary-low-read
|
||||||
|
(,@fmt-ital :inherit gnus-summary-normal-ancient))
|
||||||
|
(gnus-summary-low-unread
|
||||||
|
(,@fmt-ital :inherit gnus-summary-normal-unread))
|
||||||
|
(gnus-summary-low-ticked
|
||||||
|
(,@fmt-ital :inherit gnus-summary-normal-ancient))
|
||||||
|
(gnus-summary-low-undownloaded
|
||||||
|
(,@fmt-ital :inherit gnus-summary-normal-ancient))
|
||||||
|
(gnus-summary-normal-ancient ; old messages
|
||||||
|
(,@fmt-none ,@fg-blue))
|
||||||
|
(gnus-summary-normal-read ; read messages
|
||||||
|
(,@fmt-none ,@fg-base01))
|
||||||
|
(gnus-summary-normal-ticked (,@fmt-none ,@fg-red)) ; flagged
|
||||||
|
(gnus-summary-normal-undownloaded (,@fmt-none ,@fg-base2))
|
||||||
|
(gnus-summary-normal-unread ; unread messages
|
||||||
|
(,@fmt-none ,@fg-blue))
|
||||||
|
(gnus-summary-selected ; indicator
|
||||||
|
(,@fmt-none ,@fg-base03 ,@bg-yellow))
|
||||||
|
;; Message
|
||||||
|
(message-mml (,@fg-blue))
|
||||||
|
(message-cited-text (,@fg-base2))
|
||||||
|
(message-separator (,@fg-base3))
|
||||||
|
(message-header-xheader (,@fg-violet))
|
||||||
|
(message-header-name (,@fg-cyan))
|
||||||
|
(message-header-other (,@fg-red))
|
||||||
|
(message-header-newsgroups (,@fmt-bldi ,@fg-yellow))
|
||||||
|
(message-header-subject (,@fg-base00))
|
||||||
|
(message-header-cc (,@fmt-bold ,@fg-green))
|
||||||
|
(message-header-to (,@fmt-bold ,@fg-base1))
|
||||||
|
;; minimap
|
||||||
|
(minimap-active-region-background (,@bg-base02))
|
||||||
|
(minimap-semantic-function-face (,bg-base3))
|
||||||
|
(minimap-semantic-type-face (,bg-base3))
|
||||||
|
(minimap-semantic-variable-face (,bg-base3))
|
||||||
|
;; parenface
|
||||||
|
(paren-face (,@fg-base01)) ; NB: local, don’t commit
|
||||||
|
(parenthesis (,@fg-base01)) ; NB: local, don’t commit
|
||||||
|
;; rainbow-delimiters
|
||||||
|
(rainbow-delimiters-depth-1-face (,@fg-cyan))
|
||||||
|
(rainbow-delimiters-depth-2-face (,@fg-yellow))
|
||||||
|
(rainbow-delimiters-depth-3-face (,@fg-blue))
|
||||||
|
(rainbow-delimiters-depth-4-face (,@fg-red))
|
||||||
|
(rainbow-delimiters-depth-5-face (,@fg-green))
|
||||||
|
(rainbow-delimiters-depth-6-face (,@fg-blue))
|
||||||
|
(rainbow-delimiters-depth-7-face (,@fg-orange))
|
||||||
|
(rainbow-delimiters-depth-8-face (,@fg-magenta))
|
||||||
|
(rainbow-delimiters-depth-9-face (,@fg-base0))
|
||||||
|
;; slime
|
||||||
|
(slime-error-face (,@fmt-revr ,@fg-red)) ; 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
|
||||||
|
;; whitespace
|
||||||
|
(whitespace-empty (,@fg-red))
|
||||||
|
(whitespace-hspace (,@fg-orange))
|
||||||
|
(whitespace-indentation (,@fg-base02))
|
||||||
|
(whitespace-space (,@fg-base02))
|
||||||
|
(whitespace-space-after-tab (,@fg-cyan))
|
||||||
|
(whitespace-space-before-tab (,@fmt-bold ,@fg-red))
|
||||||
|
(whitespace-tab (,@fg-base02))
|
||||||
|
(whitespace-trailing (,@fmt-bold ,@fg-red ,@bg-base02))
|
||||||
|
(whitespace-highlight-face (,@fg-red ,@bg-blue))
|
||||||
|
(whitespace-line (,@fg-magenta))
|
||||||
|
;; rcirc
|
||||||
|
(rcirc-my-nick (,@fg-blue))
|
||||||
|
(rcirc-nick-in-message (,@fg-orange))
|
||||||
|
(rcirc-other-nick (,@fg-green))
|
||||||
|
(rcirc-prompt (,@fg-yellow))
|
||||||
|
(rcirc-bright-nick (,@fg-magenta))
|
||||||
|
(rcirc-server (,@fg-base1))
|
||||||
|
(rcirc-timestamp (,@fg-base01))
|
||||||
|
;;font-latex
|
||||||
|
(font-latex-warning-face (,@fg-red))
|
||||||
|
(font-latex-sectioning-5-face (,@fg-violet))
|
||||||
|
;;flyspell
|
||||||
|
(flyspell-incorrect (,@fg-red))
|
||||||
|
(flyspell-duplicate (,@fg-yellow))
|
||||||
|
;;ansi-term
|
||||||
|
(term-color-black (,@fg-base02))
|
||||||
|
(term-color-red (,@fg-red))
|
||||||
|
(term-color-green (,@fg-green))
|
||||||
|
(term-color-yellow (,@fg-yellow))
|
||||||
|
(term-color-blue (,@fg-blue))
|
||||||
|
(term-color-magenta (,@fg-magenta))
|
||||||
|
(term-color-cyan (,@fg-cyan))
|
||||||
|
(term-color-white (,@fg-base00)))))))
|
||||||
|
|
||||||
;;;###autoload
|
;;;###autoload
|
||||||
(when (boundp 'custom-theme-load-path)
|
(when (boundp 'custom-theme-load-path)
|
||||||
(add-to-list 'custom-theme-load-path
|
(add-to-list 'custom-theme-load-path
|
||||||
(file-name-as-directory (file-name-directory load-file-name))))
|
(file-name-as-directory (file-name-directory load-file-name))))
|
||||||
|
|
||||||
|
(defmacro create-solarized-theme (name description color-definitions)
|
||||||
|
`(progn
|
||||||
|
(deftheme ,name ,description)
|
||||||
|
(apply 'custom-theme-set-faces
|
||||||
|
',name ,color-definitions)
|
||||||
|
(provide-theme ',name)))
|
||||||
|
|
||||||
(provide 'solarized-definitions)
|
(provide 'solarized-definitions)
|
||||||
|
|
|
@ -2,4 +2,10 @@
|
||||||
(locate-file "solarized-definitions.el" custom-theme-load-path
|
(locate-file "solarized-definitions.el" custom-theme-load-path
|
||||||
'("c" "")))
|
'("c" "")))
|
||||||
|
|
||||||
(create-solarized-theme light)
|
(create-solarized-theme solarized-light
|
||||||
|
(concat "This theme is obsolete since 2013-05-01;
|
||||||
|
use `solarized' instead.
|
||||||
|
|
||||||
|
"
|
||||||
|
solarized-description)
|
||||||
|
(solarized-color-definitions))
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
(require 'solarized-definitions
|
||||||
|
(locate-file "solarized-definitions.el" custom-theme-load-path
|
||||||
|
'("c" "")))
|
||||||
|
|
||||||
|
(create-solarized-theme solarized
|
||||||
|
solarized-description (solarized-color-definitions))
|
Loading…
Reference in New Issue