aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakob Odersky <jodersky@gmail.com>2015-06-08 17:32:27 +0200
committerJakob Odersky <jodersky@gmail.com>2015-06-08 19:43:00 +0200
commit35366264b395b1e7032c145093ef5043729aaaad (patch)
tree8f671a76f385cb3dae38ec12b2d88679d7f9235f
parent381eb6df61ce6d6e2c7bd926a5bd73f7b4c2333f (diff)
downloaddotfiles-35366264b395b1e7032c145093ef5043729aaaad.tar.gz
dotfiles-35366264b395b1e7032c145093ef5043729aaaad.tar.bz2
dotfiles-35366264b395b1e7032c145093ef5043729aaaad.zip
emacs config
-rwxr-xr-xhome/.emacs.d/config/01-melpa.el7
-rw-r--r--home/.emacs.d/config/c.el2
-rwxr-xr-xhome/.emacs.d/config/ensime.el3
-rwxr-xr-xhome/.emacs.d/config/markdown.el6
-rw-r--r--home/.emacs.d/config/mutt.el2
-rw-r--r--home/.emacs.d/config/neotree.el16
-rw-r--r--home/.emacs.d/config/themes.el2
-rw-r--r--home/.emacs.d/init.el22
-rw-r--r--home/.emacs.d/themes/emacs-color-theme-solarized/.gitignore1
-rw-r--r--home/.emacs.d/themes/emacs-color-theme-solarized/.travis.yml164
-rw-r--r--home/.emacs.d/themes/emacs-color-theme-solarized/LICENSE20
-rw-r--r--home/.emacs.d/themes/emacs-color-theme-solarized/Makefile68
-rw-r--r--home/.emacs.d/themes/emacs-color-theme-solarized/README.md184
-rw-r--r--home/.emacs.d/themes/emacs-color-theme-solarized/color-theme-solarized-pkg.el1
-rw-r--r--home/.emacs.d/themes/emacs-color-theme-solarized/color-theme-solarized.el51
-rw-r--r--home/.emacs.d/themes/emacs-color-theme-solarized/ert-tests/dummy-test.el0
-rwxr-xr-xhome/.emacs.d/themes/emacs-color-theme-solarized/makepkg.sh17
-rw-r--r--home/.emacs.d/themes/emacs-color-theme-solarized/solarized-definitions.el765
-rw-r--r--home/.emacs.d/themes/emacs-color-theme-solarized/solarized-theme.el6
19 files changed, 1337 insertions, 0 deletions
diff --git a/home/.emacs.d/config/01-melpa.el b/home/.emacs.d/config/01-melpa.el
new file mode 100755
index 0000000..3a56608
--- /dev/null
+++ b/home/.emacs.d/config/01-melpa.el
@@ -0,0 +1,7 @@
+(require 'package)
+(add-to-list 'package-archives
+ '("melpa" . "http://melpa.milkbox.net/packages/") t)
+(package-initialize)
+
+(when (not package-archive-contents)
+ (package-refresh-contents))
diff --git a/home/.emacs.d/config/c.el b/home/.emacs.d/config/c.el
new file mode 100644
index 0000000..bcb6f3f
--- /dev/null
+++ b/home/.emacs.d/config/c.el
@@ -0,0 +1,2 @@
+;; c style
+(setq c-default-style "linux")
diff --git a/home/.emacs.d/config/ensime.el b/home/.emacs.d/config/ensime.el
new file mode 100755
index 0000000..6242b31
--- /dev/null
+++ b/home/.emacs.d/config/ensime.el
@@ -0,0 +1,3 @@
+;; ENhanced Scala Interaction Mode for text Editors
+(require 'ensime)
+(add-hook 'scala-mode-hook 'ensime-scala-mode-hook)
diff --git a/home/.emacs.d/config/markdown.el b/home/.emacs.d/config/markdown.el
new file mode 100755
index 0000000..07afb80
--- /dev/null
+++ b/home/.emacs.d/config/markdown.el
@@ -0,0 +1,6 @@
+(autoload 'markdown-mode "markdown-mode"
+ "Major mode for editing Markdown files" t)
+(add-to-list 'auto-mode-alist '("\\.text\\'" . markdown-mode))
+(add-to-list 'auto-mode-alist '("\\.markdown\\'" . markdown-mode))
+(add-to-list 'auto-mode-alist '("\\.md\\'" . markdown-mode))
+(custom-set-variables '(markdown-command "/usr/bin/pandoc"))
diff --git a/home/.emacs.d/config/mutt.el b/home/.emacs.d/config/mutt.el
new file mode 100644
index 0000000..d5d73cc
--- /dev/null
+++ b/home/.emacs.d/config/mutt.el
@@ -0,0 +1,2 @@
+;; Mutt support.
+(setq auto-mode-alist (append '(("/tmp/mutt.*" . mail-mode)) auto-mode-alist))
diff --git a/home/.emacs.d/config/neotree.el b/home/.emacs.d/config/neotree.el
new file mode 100644
index 0000000..a9c6fc4
--- /dev/null
+++ b/home/.emacs.d/config/neotree.el
@@ -0,0 +1,16 @@
+(require 'neotree)
+
+(custom-set-faces
+ ;; custom-set-faces was added by Custom.
+ ;; If you edit it by hand, you could mess it up, so be careful.
+ ;; Your init file should contain only one such instance.
+ ;; If there is more than one, they won't work right.
+ '(neo-banner-face ((t :inherit shadow)) t)
+ '(neo-button-face ((t :inherit dired-directory)) t)
+ '(neo-dir-link-face ((t :inherit dired-directory)) t)
+ '(neo-expand-btn-face ((t :inherit button)) t)
+ '(neo-file-link-face ((t :inherit default)) t)
+ '(neo-header-face ((t :inherit shadow)) t)
+ '(neo-root-dir-face ((t :inherit link-visited :underline nil)) t))
+
+(setq neo-theme 'ascii)
diff --git a/home/.emacs.d/config/themes.el b/home/.emacs.d/config/themes.el
new file mode 100644
index 0000000..9a26f6d
--- /dev/null
+++ b/home/.emacs.d/config/themes.el
@@ -0,0 +1,2 @@
+(add-to-list 'custom-theme-load-path "~/.emacs.d/themes/emacs-color-theme-solarized")
+(load-theme 'solarized t)
diff --git a/home/.emacs.d/init.el b/home/.emacs.d/init.el
new file mode 100644
index 0000000..9c84492
--- /dev/null
+++ b/home/.emacs.d/init.el
@@ -0,0 +1,22 @@
+;;; General configuration
+
+;; clean up interface
+(menu-bar-mode -1)
+(tool-bar-mode -1)
+(scroll-bar-mode -1)
+(global-linum-mode t)
+(setq column-number-mode t)
+(setq inhibit-splash-screen t)
+(setq ring-bell-function 'ignore)
+
+;; disable backups, autosave and lockfiles (use scm instead)
+(setq make-backup-files nil)
+(setq auto-save-default nil)
+(setq create-lockfiles nil)
+(global-auto-revert-mode t)
+
+;; font
+(set-face-attribute 'default nil :height 110); value is in 1/10pt, so 100 will give you 10pt, etc.
+
+;;; Other configuration
+(mapc 'load (file-expand-wildcards "~/.emacs.d/config/*.el"))
diff --git a/home/.emacs.d/themes/emacs-color-theme-solarized/.gitignore b/home/.emacs.d/themes/emacs-color-theme-solarized/.gitignore
new file mode 100644
index 0000000..016d3b1
--- /dev/null
+++ b/home/.emacs.d/themes/emacs-color-theme-solarized/.gitignore
@@ -0,0 +1 @@
+*.elc \ No newline at end of file
diff --git a/home/.emacs.d/themes/emacs-color-theme-solarized/.travis.yml b/home/.emacs.d/themes/emacs-color-theme-solarized/.travis.yml
new file mode 100644
index 0000000..c1a77b4
--- /dev/null
+++ b/home/.emacs.d/themes/emacs-color-theme-solarized/.travis.yml
@@ -0,0 +1,164 @@
+###
+### Notes
+###
+### The travis web interface may choke silently and fail to
+### update when there are issues with the .travis.yml file.
+###
+### The "travis-lint" command-line tool does not catch all
+### errors which may lead to silent failure.
+###
+### Shell-style comments in this file must have "#" as the
+### *first* character of the line.
+###
+
+###
+### language
+###
+
+# travis-lint no longer permits this value
+# language: emacs-lisp
+
+###
+### defining the build matrix
+###
+### ===> <===
+### ===> each variation in env/matrix will be built and tested <===
+### ===> <===
+###
+### variables under env/global are available to the build process
+### but don't cause the creation of a separate variation
+###
+
+env:
+ matrix:
+# - EMACS=xemacs21
+ - EMACS=emacs22
+ - EMACS=emacs23
+ - EMACS=emacs24
+ - EMACS=emacs-snapshot
+ global:
+ - SOME_TOKEN=some_value
+
+###
+### allowing build failures
+###
+
+matrix:
+ allow_failures:
+# - env: EMACS=xemacs21
+ - env: EMACS=emacs22
+ - env: EMACS=emacs-snapshot
+
+###
+### limit build attempts to defined branches
+###
+### notes
+###
+### This controls which branches are built.
+###
+### You can also control which branches affect the web badge, by
+### appending "?branch=master,staging,production" to the end of the
+### image URL (replacing "master,staging,production" with a
+### comma-separated list of branches to be reflected in the badge).
+###
+#
+# branches:
+# only:
+# - master
+#
+
+###
+### runtime initialization
+###
+### notes
+###
+### emacs22 is extracted manually from Ubuntu Maverick.
+###
+### emacs23 is the stock default, but is updated anyway to
+### a GUI-capable version, which will have certain additional
+### functions compiled in.
+###
+### emacs24 (current stable release) is obtained from the
+### cassou PPA: http://launchpad.net/~cassou/+archive/emacs
+###
+### emacs-snapshot (trunk) is obtained from the Ubuntu Emacs Lisp PPA:
+### https://launchpad.net/~ubuntu-elisp/+archive/ppa
+### For the emacs-snapshot build, bleeding-edge versions
+### of all test dependencies are also used.
+###
+
+before_install:
+ - git submodule --quiet update --init --recursive
+
+install:
+# - if [ "$EMACS" = 'xemacs21' ]; then
+# sudo apt-get -qq update &&
+# sudo apt-get -qq -f install &&
+# sudo apt-get -qq install xemacs21-basesupport xemacs21-basesupport-el xemacs21-supportel xemacs21-support xemacs21-mulesupport-el xemacs21-mulesupport xemacs21-mule-canna-wnn xemacs21-mule-canna-wnn;
+# fi
+ - if [ "$EMACS" = 'emacs22' ]; then
+ curl -Os http://security.ubuntu.com/ubuntu/pool/universe/e/emacs22/emacs22_22.2-0ubuntu9_i386.deb &&
+ curl -Os http://security.ubuntu.com/ubuntu/pool/universe/e/emacs22/emacs22-bin-common_22.2-0ubuntu9_i386.deb &&
+ curl -Os http://security.ubuntu.com/ubuntu/pool/universe/e/emacs22/emacs22-common_22.2-0ubuntu9_all.deb &&
+ curl -Os http://security.ubuntu.com/ubuntu/pool/universe/e/emacs22/emacs22-el_22.2-0ubuntu9_all.deb &&
+ curl -Os http://security.ubuntu.com/ubuntu/pool/universe/e/emacs22/emacs22-gtk_22.2-0ubuntu9_i386.deb &&
+ sudo apt-get -qq update &&
+ sudo apt-get -qq remove emacs emacs23-bin-common emacs23-common emacs23-nox &&
+ sudo apt-get -qq --fix-missing install install-info emacsen-common libjpeg62:i386 xaw3dg:i386 liblockfile1:i386 libasound2:i386 libgif4:i386 libncurses5:i386 libpng12-0:i386 libtiff4:i386 libxpm4:i386 libxft2:i386 libglib2.0-0:i386 libgtk2.0-0:i386 &&
+ sudo apt-get -qq -f install &&
+ sudo dpkg -i emacs22-common_22.2-0ubuntu9_all.deb emacs22-el_22.2-0ubuntu9_all.deb &&
+ sudo dpkg -i --force-depends emacs22-bin-common_22.2-0ubuntu9_i386.deb &&
+ sudo dpkg -i emacs22_22.2-0ubuntu9_i386.deb emacs22-gtk_22.2-0ubuntu9_i386.deb &&
+ sudo update-alternatives --set emacs22 /usr/bin/emacs22-gtk;
+ fi
+ - if [ "$EMACS" = 'emacs23' ]; then
+ sudo apt-get -qq update &&
+ sudo apt-get -qq -f install &&
+ sudo apt-get -qq install emacs23-gtk emacs23-el emacs-goodies-el;
+ fi
+ - if [ "$EMACS" = 'emacs24' ]; then
+ sudo add-apt-repository -y ppa:cassou/emacs &&
+ sudo apt-get -qq update &&
+ sudo apt-get -qq -f install &&
+ sudo apt-get -qq install emacs24 emacs24-el;
+ fi
+ - if [ "$EMACS" = 'emacs-snapshot' ]; then
+ sudo add-apt-repository -y ppa:ubuntu-elisp/ppa &&
+ sudo apt-get -qq update &&
+ sudo apt-get -qq -f install &&
+ sudo apt-get -qq install emacs-snapshot &&
+ sudo apt-get -qq install emacs-snapshot-el;
+ fi
+
+before_script:
+ - if [ "$EMACS" = 'emacs-snapshot' ]; then
+ make downloads-latest;
+ else
+ make downloads;
+ fi
+
+###
+### the actual build/test command
+###
+### Use "make test-batch" to test without byte-compiling.
+### The default command avoids byte-compiling on Emacs 22.
+###
+
+script:
+ $EMACS --version && ( test "$EMACS" != 'emacs22' && make test EMACS="$EMACS" || make test-batch EMACS="$EMACS" )
+
+###
+### settings
+###
+
+notifications:
+ email: false
+
+#
+# Emacs
+#
+# Local Variables:
+# indent-tabs-mode: nil
+# coding: utf-8
+# End:
+#
diff --git a/home/.emacs.d/themes/emacs-color-theme-solarized/LICENSE b/home/.emacs.d/themes/emacs-color-theme-solarized/LICENSE
new file mode 100644
index 0000000..ee08d7e
--- /dev/null
+++ b/home/.emacs.d/themes/emacs-color-theme-solarized/LICENSE
@@ -0,0 +1,20 @@
+Copyright (c) 2011 Ethan Schoonover
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
diff --git a/home/.emacs.d/themes/emacs-color-theme-solarized/Makefile b/home/.emacs.d/themes/emacs-color-theme-solarized/Makefile
new file mode 100644
index 0000000..70d22d7
--- /dev/null
+++ b/home/.emacs.d/themes/emacs-color-theme-solarized/Makefile
@@ -0,0 +1,68 @@
+EMACS=emacs
+
+EMACS_CLEAN=-Q
+EMACS_BATCH=$(EMACS_CLEAN) --batch
+TESTS=
+
+CURL=curl --silent
+WORK_DIR=$(shell pwd)
+PACKAGE_NAME=$(shell basename $(WORK_DIR))
+AUTOLOADS_FILE=$(PACKAGE_NAME)-autoloads.el
+TRAVIS_FILE=.travis.yml
+TEST_DIR=ert-tests
+TEST_DEP_1=ert
+TEST_DEP_1_STABLE_URL=http://git.savannah.gnu.org/cgit/emacs.git/plain/lisp/emacs-lisp/ert.el?h=emacs-24.3
+TEST_DEP_1_LATEST_URL=http://git.savannah.gnu.org/cgit/emacs.git/plain/lisp/emacs-lisp/ert.el?h=master
+
+.PHONY : build downloads downloads-latest autoloads test-autoloads test-travis \
+ test test-interactive clean edit test-dep-1 test-dep-2 test-dep-3 \
+ test-dep-4 test-dep-5 test-dep-6 test-dep-7 test-dep-8 test-dep-9
+
+build :
+ $(EMACS) $(EMACS_BATCH) --eval \
+ "(if (< emacs-major-version 24) \
+ (progn \
+ (add-to-list 'load-path \"./\") \
+ (require 'color-theme-solarized) \
+ (color-theme-solarized)) \
+ (add-to-list 'custom-theme-load-path \"./\") \
+ (load-theme 'solarized t))"
+
+test-dep-1 :
+ @cd $(TEST_DIR) && \
+ $(EMACS) $(EMACS_BATCH) -L . -L .. -l $(TEST_DEP_1) || \
+ (echo "Can't load test dependency $(TEST_DEP_1).el, run 'make downloads' to fetch it" ; exit 1)
+
+downloads :
+ $(CURL) '$(TEST_DEP_1_STABLE_URL)' > $(TEST_DIR)/$(TEST_DEP_1).el
+
+downloads-latest :
+ $(CURL) '$(TEST_DEP_1_LATEST_URL)' > $(TEST_DIR)/$(TEST_DEP_1).el
+
+autoloads :
+ $(EMACS) $(EMACS_BATCH) --eval \
+ "(progn \
+ (setq generated-autoload-file \"$(WORK_DIR)/$(AUTOLOADS_FILE)\") \
+ (update-directory-autoloads \"$(WORK_DIR)\"))"
+
+test-autoloads : autoloads
+ @$(EMACS) $(EMACS_BATCH) -L . -l "./$(AUTOLOADS_FILE)" || \
+ ( echo "failed to load autoloads: $(AUTOLOADS_FILE)" && false )
+
+test-travis :
+ @if test -z "$$TRAVIS" && test -e $(TRAVIS_FILE); then travis-lint $(TRAVIS_FILE); fi
+
+test : build test-dep-1 test-autoloads
+ @cd $(TEST_DIR) && \
+ (for test_lib in *-test.el; do \
+ $(EMACS) $(EMACS_BATCH) -L . -L .. -l cl -l $(TEST_DEP_1) -l $$test_lib --eval \
+ "(progn \
+ (fset 'ert--print-backtrace 'ignore) \
+ (ert-run-tests-batch-and-exit '(and \"$(TESTS)\" (not (tag :interactive)))))" || exit 1; \
+ done)
+
+clean :
+ @rm -f $(AUTOLOADS_FILE) *.elc *~ */*.elc */*~ $(TEST_DIR)/$(TEST_DEP_1).el \
+ $(TEST_DIR)/$(TEST_DEP_2).el $(TEST_DIR)/$(TEST_DEP_3).el $(TEST_DIR)/$(TEST_DEP_4).el \
+ $(TEST_DIR)/$(TEST_DEP_5).el $(TEST_DIR)/$(TEST_DEP_6).el $(TEST_DIR)/$(TEST_DEP_7).el \
+ $(TEST_DIR)/$(TEST_DEP_8).el $(TEST_DIR)/$(TEST_DEP_9).el
diff --git a/home/.emacs.d/themes/emacs-color-theme-solarized/README.md b/home/.emacs.d/themes/emacs-color-theme-solarized/README.md
new file mode 100644
index 0000000..aef0126
--- /dev/null
+++ b/home/.emacs.d/themes/emacs-color-theme-solarized/README.md
@@ -0,0 +1,184 @@
+Solarized Colorscheme for Emacs
+===============================
+
+Stolen from Ethan Schoonover <es@ethanschoonover.com> by Greg Pfeil <greg@technomadic.org>
+
+Visit the [Solarized homepage]
+------------------------------
+
+See the [Solarized homepage] for screenshots,
+details and colorscheme versions for Vim, Mutt, popular terminal emulators and
+other applications.
+
+Screenshots
+-----------
+
+![solarized dark](https://github.com/altercation/solarized/raw/master/img/solarized-vim.png)
+
+Downloads
+---------
+
+If you have come across this colorscheme via the [Emacs-only repository] on
+github, see the link above to the Solarized homepage or visit the main [Solarized repository].
+
+The [Emacs-only repository] is kept in sync with the main [Solarized repository]. Issues, bug reports, changelogs that are not specific to the Emacs implementation should be submitted to the main [Solarized repository].
+
+[Solarized homepage]: http://ethanschoonover.com/solarized
+[Solarized repository]: https://github.com/altercation/solarized
+[Emacs-only repository]: https://github.com/sellout/emacs-color-theme-solarized
+[color-theme]: http://www.nongnu.org/color-theme
+
+Installation & Usage
+--------------------
+
+### Emacs 24
+
+1. Add the `emacs-color-theme-solarized` directory to your Emacs `custom-theme-load-path`.
+2. Add `(load-theme 'solarized t)` to your Emacs init file.
+3. Reload the init file, or restart Emacs.
+
+### [color-theme] \(pre-Emacs 24\)
+
+1. Download and install [color-theme].
+2. Add the `emacs-color-theme-solarized` directory to your Emacs `load-path`.
+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.
+
+### 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`). If you're in a terminal, you must also set the terminal parameter with `(set-terminal-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)
+ (let ((mode (if (display-graphic-p frame) 'light 'dark)))
+ (set-frame-parameter frame 'background-mode mode)
+ (set-terminal-parameter frame 'background-mode mode))
+ (enable-theme 'solarized)))
+```
+
+### IMPORTANT NOTE FOR TERMINAL USERS:
+
+If you are going to use Solarized in Terminal mode (i.e. not in a GUI version
+like Cocoa or X11 Emacs), **please please please** consider setting your
+terminal emulator's colorscheme to use the Solarized palette. The [Solarized
+repository] includes palettes for some popular terminal emulator as well as
+Xdefaults; or you can download them from the official [Solarized homepage].
+If you use this emacs color theme *without* having changed your emulator's
+palette, you will need to configure Solarized to degrade its colorscheme to
+a set compatible with the terminal's default limited 256 color palette
+(whereas by using the terminal's 16 ANSI color values, you would
+see the correct, specific values for the Solarized palette).
+
+Again, I recommend just changing your terminal colors to Solarized values
+either manually or via one of the many terminal schemes available for import.
+
+Advanced Configuration
+----------------------
+
+Solarized will work out of the box with just the instructions specified above
+but does include several variables that can be customized.
+
+ variable name default optional
+ --------------------------------------------
+ solarized-termcolors = 16 | 256
+ solarized-degrade = nil | t
+ solarized-bold = t | nil
+ solarized-underline = t | nil
+ solarized-italic = t | nil
+ solarized-contrast = normal| high, low
+ solarized-visibility = normal| high, low
+ solarized-broken-srgb= nil | t (see details for Mac behavior)
+ --------------------------------------------
+
+### Option Details
+
+* solarized-termcolors
+
+ Some 256-color terminals also allow you to set and use the standard 16
+ colors in addition to the fixed 256-color palette. This option only
+ applies when your terminal is in 256-color mode. If set to 16 (the
+ default) it will try to use the exact Solarized colors (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). If it’s set to 256, then Solarized 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
+
+ For test purposes only; in GUI mode, this forces Solarized to use the 256
+ degraded color mode to test the approximate color values for accuracy.
+
+* solarized-bold | solarized-underline | solarized-italic
+
+ If you wish to stop Solarized from displaying bold, underlined or
+ italicized typefaces, simply set the appropriate variable to `nil`.
+
+* solarized-contrast
+
+ Stick with normal! It's been carefully tested. Setting this option to high
+ or low does use the same Solarized palette but simply shifts some values
+ up or down in order to expand or compress the tonal range displayed.
+
+* solarized-visibility
+
+ Special characters such as trailing whitespace, tabs, newlines, when
+ displayed using `:set list` can be set to one of three levels depending on
+ your needs. Default value is `normal` with `high` and `low` options.
+
+* solarized-broken-srgb
+
+ Emacs [bug #8402](http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8402)
+ results in incorrect color handling on Macs. If you are using Emacs on a
+ Mac, we try to determine this value automatically. If this is `t` (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
+ the "Gen RGB" column in `solarized-definitions.el` to improve them further.
+
+Code Notes
+----------
+
+I have attempted to modularize the creation of Emacs colorschemes in this script and, while it could be refactored further, it should be a good foundation for the creation of any color scheme. By simply changing the values in the `solarized-colors` table in `solarized-definitions.el` and testing in a GUI Emacs, you can rapidly prototype new colorschemes without diving into the weeds of line-item editing each syntax highlight declaration.
+
+The Values
+----------
+
+L\*a\*b values are canonical (White D65, Reference D50), other values are
+matched in sRGB space.
+
+ SOLARIZED HEX 16/8 TERMCOL XTERM/HEX L*A*B RGB HSB
+ --------- ------- ---- ------- ----------- ---------- ----------- -----------
+ base03 #002b36 8/4 brblack 234 #1c1c1c 15 -12 -12 0 43 54 193 100 21
+ base02 #073642 0/4 black 235 #262626 20 -12 -12 7 54 66 192 90 26
+ base01 #586e75 10/7 brgreen 240 #585858 45 -07 -07 88 110 117 194 25 46
+ base00 #657b83 11/7 bryellow 241 #626262 50 -07 -07 101 123 131 195 23 51
+ base0 #839496 12/6 brblue 244 #808080 60 -06 -03 131 148 150 186 13 59
+ base1 #93a1a1 14/4 brcyan 245 #8a8a8a 65 -05 -02 147 161 161 180 9 63
+ base2 #eee8d5 7/7 white 254 #e4e4e4 92 -00 10 238 232 213 44 11 93
+ base3 #fdf6e3 15/7 brwhite 230 #ffffd7 97 00 10 253 246 227 44 10 99
+ yellow #b58900 3/3 yellow 136 #af8700 60 10 65 181 137 0 45 100 71
+ orange #cb4b16 9/3 brred 166 #d75f00 50 50 55 203 75 22 18 89 80
+ red #dc322f 1/1 red 160 #d70000 50 65 45 220 50 47 1 79 86
+ magenta #d33682 5/5 magenta 125 #af005f 50 65 -05 211 54 130 331 74 83
+ violet #6c71c4 13/5 brmagenta 61 #5f5faf 50 15 -45 108 113 196 237 45 77
+ blue #268bd2 4/4 blue 33 #0087ff 55 -10 -45 38 139 210 205 82 82
+ cyan #2aa198 6/6 cyan 37 #00afaf 60 -35 -05 42 161 152 175 74 63
+ green #859900 2/2 green 64 #5f8700 60 -20 65 133 153 0 68 100 60
+
+### Bug Reporting
+
+Here are some things to keep in mind when submitting a bug report:
+
+* include the output of `M-x version` in your report,
+* mention whether you’re using color-theme or the Emacs 24 theme,
+* include the names of Emacs faces that you have a problem with (`M-: (face-at-point)` and `M-x describe-face` will tell you the name of the face at point),
+* include the output of `M-: (display-color-cells)` (that lets us know which set of colors your Emacs is using),
+* screenshots are very helpful (before and after if you made a change),
+* if you’re using a terminal, the name of the terminal and (if you can find out) the number of colors the terminal app is using,
+* also if you’re using a terminal, try running Emacs in GUI mode, and see if the problem exists there (if it does, report the bug that way, if not, just mention that it’s a terminal-only bug),
+* it’s very helpful (but not expected) if you can compare it to a similar situation in VIM (especially if you know the VIM highlight name or have a screenshot), and
+* `M-x customize-apropos-faces` can help you find all the relevant faces if you are submitting faces for a mode.
diff --git a/home/.emacs.d/themes/emacs-color-theme-solarized/color-theme-solarized-pkg.el b/home/.emacs.d/themes/emacs-color-theme-solarized/color-theme-solarized-pkg.el
new file mode 100644
index 0000000..850550e
--- /dev/null
+++ b/home/.emacs.d/themes/emacs-color-theme-solarized/color-theme-solarized-pkg.el
@@ -0,0 +1 @@
+(define-package "color-theme-solarized" "%%version%%" "Solarized themes for Emacs" '((color-theme "6.5.5")))
diff --git a/home/.emacs.d/themes/emacs-color-theme-solarized/color-theme-solarized.el b/home/.emacs.d/themes/emacs-color-theme-solarized/color-theme-solarized.el
new file mode 100644
index 0000000..298ae94
--- /dev/null
+++ b/home/.emacs.d/themes/emacs-color-theme-solarized/color-theme-solarized.el
@@ -0,0 +1,51 @@
+;;; Author: Ethan Schoonover, Solarized; Greg Pfeil, Emacs adaptation
+;;; URL: http://ethanschoonover.com/solarized
+
+;;; This file is not (YET) part of GNU Emacs.
+
+;;; # Usage
+
+;;; 1. Install the color-theme package
+;;; (http://www.emacswiki.org/cgi-bin/wiki/ColorTheme)
+;;; 2. Load this file
+;;; 3. M-x color-theme-solarized
+
+(let ((current-file-name (or load-file-name buffer-file-name)))
+ (if current-file-name
+ (let* ((reqname (concat (file-name-directory current-file-name)
+ "solarized-definitions.el"))
+ (compreqname (concat reqname "c")))
+ (require 'solarized-definitions
+ (if (file-exists-p compreqname) compreqname reqname)))
+ (require 'solarized-definitions)))
+
+(eval-when-compile
+ (require 'color-theme))
+
+;;;###autoload
+(defun color-theme-solarized ()
+ "Color theme by Ethan Schoonover, created 2011-03-24.
+Ported to Emacs by Greg Pfeil, http://ethanschoonover.com/solarized."
+ (interactive)
+ (color-theme-install
+ `(color-theme-solarized () () ,@(solarized-color-definitions))))
+
+(add-to-list 'color-themes
+ `(color-theme-solarized
+ "Solarized"
+ ,solarized-description))
+
+;;;###autoload
+(defun color-theme-solarized-dark ()
+ "Color theme by Ethan Schoonover, created 2011-03-24.
+Ported to Emacs by Greg Pfeil, http://ethanschoonover.com/solarized."
+ (declare (obsolete color-theme-solarized "2013-05-01"))
+ (color-theme-solarized))
+;;;###autoload
+(defun color-theme-solarized-light ()
+ "Color theme by Ethan Schoonover, created 2011-03-24.
+Ported to Emacs by Greg Pfeil, http://ethanschoonover.com/solarized."
+ (declare (obsolete color-theme-solarized "2013-05-01"))
+ (color-theme-solarized))
+
+(provide 'color-theme-solarized)
diff --git a/home/.emacs.d/themes/emacs-color-theme-solarized/ert-tests/dummy-test.el b/home/.emacs.d/themes/emacs-color-theme-solarized/ert-tests/dummy-test.el
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/home/.emacs.d/themes/emacs-color-theme-solarized/ert-tests/dummy-test.el
diff --git a/home/.emacs.d/themes/emacs-color-theme-solarized/makepkg.sh b/home/.emacs.d/themes/emacs-color-theme-solarized/makepkg.sh
new file mode 100755
index 0000000..7c13497
--- /dev/null
+++ b/home/.emacs.d/themes/emacs-color-theme-solarized/makepkg.sh
@@ -0,0 +1,17 @@
+#!/usr/bin/env bash
+
+version=$1
+
+if [ "$version" = "" ]; then
+ version=$(date -u '+%Y%m%d')
+fi
+echo "version = $version"
+
+dir="color-theme-solarized-${version}"
+
+mkdir $dir
+
+cp *.el $dir
+sed -i "s/%%version%%/$version/" "$dir/color-theme-solarized-pkg.el"
+
+tar cf color-theme-solarized-${version}.tar $dir
diff --git a/home/.emacs.d/themes/emacs-color-theme-solarized/solarized-definitions.el b/home/.emacs.d/themes/emacs-color-theme-solarized/solarized-definitions.el
new file mode 100644
index 0000000..ea039ff
--- /dev/null
+++ b/home/.emacs.d/themes/emacs-color-theme-solarized/solarized-definitions.el
@@ -0,0 +1,765 @@
+(eval-when-compile
+ (unless (require 'cl-lib nil t)
+ (require 'cl)
+ (defalias 'cl-case 'case))
+ )
+
+(defconst solarized-description
+ "Color theme by Ethan Schoonover, created 2011-03-24.
+Ported to Emacs by Greg Pfeil, http://ethanschoonover.com/solarized.")
+
+(defcustom solarized-termcolors 16
+ "This is set to 16 by default, meaning that Solarized will attempt to use the
+standard 16 colors of your terminal emulator. You will need to set those colors
+to the correct Solarized values either manually or by importing one of the many
+colorscheme available for popular terminal emulators and Xdefaults."
+ :type 'integer
+ :options '(16 256)
+ :group 'solarized)
+
+(defcustom solarized-degrade nil
+ "For test purposes only; when in GUI mode, forces Solarized to use the 256
+degraded color mode to test the approximate color values for accuracy."
+ :type 'boolean
+ :group 'solarized)
+
+(defcustom solarized-diff-mode 'normal
+ "Sets the level of highlighting to use in diff-like modes."
+ :type 'symbol
+ :options '(high normal low)
+ :group 'solarized)
+
+(defcustom solarized-bold t
+ "Stops Solarized from displaying bold when nil."
+ :type 'boolean
+ :group 'solarized)
+
+(defcustom solarized-underline t
+ "Stops Solarized from displaying underlines when nil."
+ :type 'boolean
+ :group 'solarized)
+
+(defcustom solarized-italic t
+ "Stops Solarized from displaying italics when nil."
+ :type 'boolean
+ :group 'solarized)
+
+(defcustom solarized-contrast 'normal
+ "Stick with normal! It's been carefully tested. Setting this option to high or
+low does use the same Solarized palette but simply shifts some values up or
+down in order to expand or compress the tonal range displayed."
+ :type 'symbol
+ :options '(high normal low)
+ :group 'solarized)
+
+(defcustom solarized-broken-srgb
+ (if (and (eq system-type 'darwin) (eq window-system 'ns))
+ (not (and (boundp 'ns-use-srgb-colorspace)
+ ns-use-srgb-colorspace))
+ nil)
+ "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.
+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."
+ :type 'boolean
+ :group 'solarized)
+
+;; FIXME: The Generic RGB colors will actually vary from device to device, but
+;; hopefully these are closer to the intended colors than the sRGB values
+;; that Emacs seems to dislike
+(defvar solarized-colors ; ANSI(Solarized terminal)
+ ;; name sRGB Gen RGB 256 16 8
+ '((base03 "#002b36" "#042028" "#1c1c1c" "brightblack" "black")
+ (base02 "#073642" "#0a2832" "#262626" "black" "black")
+ (base01 "#586e75" "#465a61" "#585858" "brightgreen" "green")
+ (base00 "#657b83" "#52676f" "#626262" "brightyellow" "yellow")
+ (base0 "#839496" "#708183" "#808080" "brightblue" "blue")
+ (base1 "#93a1a1" "#81908f" "#8a8a8a" "brightcyan" "cyan")
+ (base2 "#eee8d5" "#e9e2cb" "#e4e4e4" "white" "white")
+ (base3 "#fdf6e3" "#fcf4dc" "#ffffd7" "brightwhite" "white")
+ (yellow "#b58900" "#a57705" "#af8700" "yellow" "yellow")
+ (orange "#cb4b16" "#bd3612" "#d75f00" "brightred" "red")
+ (red "#dc322f" "#c60007" "#d70000" "red" "red")
+ (magenta "#d33682" "#c61b6e" "#af005f" "magenta" "magenta")
+ (violet "#6c71c4" "#5859b7" "#5f5faf" "brightmagenta" "magenta")
+ (blue "#268bd2" "#2075c7" "#0087ff" "blue" "blue")
+ (cyan "#2aa198" "#259185" "#00afaf" "cyan" "cyan")
+ (green "#859900" "#728a05" "#5f8700" "green" "green"))
+ "This is a table of all the colors used by the Solarized color theme. Each
+ column is a different set, one of which will be chosen based on term
+ capabilities, etc.")
+
+(defun solarized-face-for-index (facespec index &optional light)
+ "Creates a face from facespec where the colors use the names from
+ `solarized-colors`."
+ (let ((new-fontspec (copy-sequence facespec)))
+ (dolist (property '(:foreground :background :color))
+ (let ((color-name (plist-get new-fontspec property)))
+ (when color-name
+ ;; 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.
+ (when (and (= index 5)
+ (or (and (eq property :background)
+ (eq color-name 'back))
+ (and (eq property :foreground)
+ (member color-name '(base0 base1)))))
+ (setf color-name nil))
+ (when (eq color-name 'back)
+ (setf color-name 'base03))
+ (when light
+ (setf color-name
+ (cl-case color-name
+ (base03 'base3)
+ (base02 'base2)
+ (base01 'base1)
+ (base00 'base0)
+ (base0 'base00)
+ (base1 'base01)
+ (base2 'base02)
+ (base3 'base03)
+ (otherwise color-name))))
+ (plist-put new-fontspec
+ property
+ (nth index (assoc color-name solarized-colors))))))
+ (when (plist-get new-fontspec :box)
+ (plist-put new-fontspec
+ :box
+ (solarized-face-for-index (plist-get new-fontspec :box) index
+ light)))
+ new-fontspec))
+
+(defun create-face-spec (name facespec)
+ `(,name ((((background dark) (type graphic))
+ ,(solarized-face-for-index facespec
+ (cond (solarized-degrade 3)
+ (solarized-broken-srgb 2)
+ (t 1))))
+ (((background dark) (type tty) (min-colors 256))
+ ,(solarized-face-for-index facespec
+ (if (= solarized-termcolors 16) 4 3)))
+ (((background dark) (type tty) (min-colors 16))
+ ,(solarized-face-for-index facespec 4))
+ (((background dark) (type tty) (min-colors 8))
+ ,(solarized-face-for-index facespec 5))
+ (((background light) (type graphic))
+ ,(solarized-face-for-index facespec
+ (cond (solarized-degrade 3)
+ (solarized-broken-srgb 2)
+ (t 1))
+ t))
+ (((background light) (type tty) (min-colors 256))
+ ,(solarized-face-for-index facespec
+ (if (= solarized-termcolors 16) 4 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)))))
+
+(defun solarized-color-definitions ()
+ (let ((bold (if solarized-bold 'bold 'unspecified))
+ (bright-bold (if solarized-bold 'unspecified 'bold))
+ (underline (if solarized-underline t 'unspecified))
+ (opt-under 'unspecified)
+ (italic (if solarized-italic 'italic 'unspecified)))
+ (cond ((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)))
+ (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))
+ (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))
+
+ (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))
+ ;; FIXME: don’t hardcode the SRGB color names
+ (fmt-curl-red `( :underline (:color "#dc322f" :style wave)))
+ (fmt-curl-yellow `( :underline (:color "#b58900" :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)))
+ (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
+ (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
+ (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 (:inherit error)) ; ErrorMsg
+ (lazy-highlight (:inherit match)) ; Search
+ (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
+ ,@(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-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 (:inherit link))
+ (info-xref-visited (:inherit link-visited))
+ ;; org
+ (org-block-background (,@bg-base02))
+ (org-hide (,@fg-base03))
+ (org-todo (,@fmt-bold ,@fg-base03 ,@bg-red))
+ (org-done (,@fmt-bold ,@fg-green))
+ (org-todo-kwd-face (,@fmt-bold ,@fg-base03 ,@bg-red))
+ (org-done-kwd-face (,@fmt-bold ,@fg-green))
+ (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))
+ (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-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-date-selected (,@fmt-revr ,@fg-red))
+ (org-sexp-date (,@fmt-undr ,@fg-violet))
+ (org-tag (,@fmt-bold))
+ (org-list-dt (,@fmt-bold))
+ (org-agenda-done (,@fg-green))
+ (org-headline-done (,@fg-base01))
+ (org-priority (,@fmt-ital ,@fg-base01))
+ (org-checkbox (,@fmt-bold))
+ (org-table (,@fg-cyan))
+ (org-formula (:weight bold :slant italic ,@fg-red))
+ (org-code (,@fg-base01))
+ (org-document-title (,@fmt-bold ,@fg-cyan))
+ (org-document-info-keyword (,@fg-base01))
+ (org-block (,@fg-base01))
+ (org-verbatim (,@fmt-undr ,@fg-base01))
+ (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-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))
+ ;; table
+ (table-cell (,@fmt-none ,@fg-base0 ,@bg-back))
+ ;; outline - pandocBlockQuoteLeader[1–6]
+ (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))
+ ;; 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
+ ;; -------------
+ ;; alert
+ (alert-urgent (,@fg-red))
+ (alert-high (,@fg-orange))
+ (alert-moderate (,@fg-yellow))
+ (alert-normal (,@fg-green))
+ (alert-low (,@fg-blue))
+ (alert-trivial (,@fg-violet))
+ ;; col-highlight -- Highlight the current column.
+ ;; http://www.emacswiki.org/emacs/col-highlight.el
+ (col-highlight (,@bg-base02))
+ ;; ace-jump-mode
+ (ace-jump-face-background (,@fmt-none ,@fg-base01))
+ (ace-jump-face-foreground (,@fmt-bold ,@fg-red))
+ ;; bm visual bookmarks
+ (bm-fringe-face (,@bg-orange ,@fg-base03))
+ (bm-fringe-persistent-face (,@bg-blue ,@fg-base03))
+ ;; Flymake
+ (flymake-errline (,@fmt-bold ,@fg-red)) ; Error
+ (flymake-warnline (,@fmt-bold ,@fg-red))
+ ;; 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 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-9 (,@fg-green))
+ (gnus-cite-10 (,@fg-magenta))
+ (gnus-cite-11 (,@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))
+ ;;helm
+ (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-gnus (,@fg-cyan))
+ (helm-bookmark-info (,@fg-green))
+ (helm-bookmark-man (,@fg-violet))
+ (helm-bookmark-w3m (,@fg-yellow))
+ (helm-bookmarks-su (,@fg-orange))
+ (helm-buffer-not-saved (,@fg-orange))
+ (helm-buffer-process (,@fg-magenta))
+ (helm-buffer-saved-out (,@fmt-revr ,@fg-red ,@bg-back))
+ (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-ff-directory (,@bg-back ,@fg-blue))
+ (helm-ff-executable (,@fmt-bold ,@fg-green))
+ (helm-ff-file (:inherit default))
+ (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-grep-finish (,@fg-green))
+ (helm-grep-lineno (,@fg-orange))
+ (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-history-remote (,@fg-red))
+ (helm-lisp-completion-info (,@fg-base0))
+ (helm-lisp-show-completion (,@fmt-bold ,@fg-yellow ,@bg-base02))
+ (helm-ls-git-added-copied-face (,@fg-green))
+ (helm-ls-git-conflict-face (,@fmt-bold ,@fg-red))
+ (helm-ls-git-deleted-and-staged-face (,@fmt-ital ,@fg-base01))
+ (helm-ls-git-deleted-not-staged-face (,@fmt-bold ,@fg-green))
+ (helm-ls-git-modified-and-staged-face (,@fmt-ital ,@fg-base01))
+ (helm-ls-git-modified-not-staged-face (,@fmt-ital ,@fg-base01))
+ (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-separator (,@fg-red))
+ (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))
+ ;; 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))
+ ;; 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
+ (parenface-bracket-face (:inherit shadow))
+ (parenface-curly-face (:inherit shadow))
+ (parenface-paren-face (:inherit shadow))
+ ;; paren-face
+ (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-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))
+ ;; 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
+ ;; smartparens
+ (sp-pair-overlay-face (,@bg-base02))
+ (sp-wrap-overlay-face (,@bg-base02))
+ (sp-wrap-tag-overlay-face (,@bg-base02))
+ (sp-show-pair-match-face (,@fg-magenta ,@bg-back))
+ (sp-show-pair-mismatch-face (,@bg-red ,@fg-base02))
+ ;; 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 (,@fmt-curl-red)) ; SpellBad
+ (flyspell-duplicate (,@fmt-curl-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))
+ ;;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))
+ ;; company
+ (company-tooltip (,@fg-base00 ,@bg-base02))
+ (company-tooltip-selection (,@fg-base1 ,@bg-base02))
+ (company-tooltip-mouse (,@fg-base1 ,@bg-base02))
+ (company-tooltip-common (,@fg-blue ,@bg-base02))
+ (company-tooltip-common-selection (,@fg-blue ,@bg-base01))
+ (company-tooltip-annotation (,@fg-yellow ,@bg-base02))
+ (company-scrollbar-fg (,@bg-base0))
+ (company-scrollbar-bg (,@bg-base02))
+ (company-preview (,@bg-green))
+ (company-preview-common (,@bg-base02))
+ (company-template-field (,@fg-base03 ,@bg-yellow))
+ ;; hydra
+ (hydra-face-red (,@fmt-bold ,@fg-red))
+ (hydra-face-blue (,@fmt-bold ,@fg-blue))
+ (hydra-face-amaranth (,@fmt-bold ,@fg-orange))
+ (hydra-face-pink (,@fmt-bold ,@fg-magenta))
+ (hydra-face-teal (,@fmt-bold ,@fg-cyan))
+ ;; guide-key
+ (guide-key/prefix-command-face (,@fg-blue))
+ (guide-key/highlight-command-face (,@fg-orange))
+ (guide-key/key-face (,@fg-green)))))))
+
+;;;###autoload
+(when (boundp 'custom-theme-load-path)
+ (add-to-list 'custom-theme-load-path
+ (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)
diff --git a/home/.emacs.d/themes/emacs-color-theme-solarized/solarized-theme.el b/home/.emacs.d/themes/emacs-color-theme-solarized/solarized-theme.el
new file mode 100644
index 0000000..729011e
--- /dev/null
+++ b/home/.emacs.d/themes/emacs-color-theme-solarized/solarized-theme.el
@@ -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))