summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Cask1
-rw-r--r--init.el1
-rw-r--r--lisp/stekene-light-theme.el101
-rw-r--r--lisp/stekene-theme-common.el141
4 files changed, 243 insertions, 1 deletions
diff --git a/Cask b/Cask
index a08e22a..d9dde0f 100644
--- a/Cask
+++ b/Cask
@@ -48,7 +48,6 @@
(depends-on "s")
(depends-on "stan-mode")
(depends-on "stan-snippets")
-(depends-on "stekene-theme")
(depends-on "subr+")
(depends-on "use-package")
(depends-on "use-package-chords")
diff --git a/init.el b/init.el
index 2d9b8b6..0c635c9 100644
--- a/init.el
+++ b/init.el
@@ -42,6 +42,7 @@
(defvar km/init-lisp-dir (expand-file-name "lisp/" user-emacs-directory))
(add-to-list 'load-path km/init-lisp-dir)
+(add-to-list 'custom-theme-load-path km/init-lisp-dir)
(require 'km-util)
(require 'km-emacs-autoloads nil t)
diff --git a/lisp/stekene-light-theme.el b/lisp/stekene-light-theme.el
new file mode 100644
index 0000000..eee54c7
--- /dev/null
+++ b/lisp/stekene-light-theme.el
@@ -0,0 +1,101 @@
+;;; stekene-light-theme.el --- Light version of the stekene theme -*- lexical-binding: t -*-
+
+;; Author: Fanael Linithien <fanael4@gmail.com>
+;; URL: https://github.com/Fanael/stekene-theme
+
+;; This file is NOT part of GNU Emacs.
+
+;; Copyright (c) 2014, Fanael Linithien
+;; All rights reserved.
+;;
+;; Redistribution and use in source and binary forms, with or without
+;; modification, are permitted provided that the following conditions are
+;; met:
+;;
+;; * Redistributions of source code must retain the above copyright
+;; notice, this list of conditions and the following disclaimer.
+;; * Redistributions in binary form must reproduce the above copyright
+;; notice, this list of conditions and the following disclaimer in the
+;; documentation and/or other materials provided with the distribution.
+;;
+;; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+;; IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+;; TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+;; PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
+;; OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+;; EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+;; PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+;; PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+;; LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+;;; Code:
+
+(eval-when-compile (require 'stekene-theme-common))
+
+(deftheme stekene-light "The light version of the stekene theme.")
+
+(stekene-theme--set-faces
+ stekene-light
+ ((foreground "#242424")
+ (background "#f8f8f8")
+ (region "#bbbbbb")
+ (helmselection "#cccccc")
+ (hlline "#dddddd")
+ (highlight "#aaccaa")
+ (modelinebg "#dddddd")
+ (gray1 "#919191")
+ (gray2 "#666666")
+ (dullgreen "#557755")
+ (dullred "#775555")
+ (dullyellow "#777755")
+ (red "#ba2727")
+ (orange1 "#ba4727")
+ (orange2 "#b86833")
+ (yellow1 "#777722")
+ (yellow2 "#777722")
+ (blue1 "#336688")
+ (blue2 "#666699")
+ (blue3 "#555588")
+ (fringebg "#dddddd")
+ (whitespaceline "#fac9c0")
+ (whitespacetrailing "#fa8980")
+ (symbol1 "#934748")
+ (symbol2 "#8b4e34")
+ (symbol3 "#7d5626")
+ (symbol4 "#695e22")
+ (symbol5 "#51642a")
+ (symbol6 "#35693b")
+ (symbol7 "#006b51")
+ (symbol8 "#006c69")
+ (symbol9 "#006b7f")
+ (symbol10 "#00688f")
+ (symbol11 "#0d6396")
+ (symbol12 "#4c5b94")
+ (symbol13 "#6f5288")
+ (symbol14 "#854976")
+ (symbol15 "#91455f")
+ (delim1 "#7c544a")
+ (delim2 "#6e5b3e")
+ (delim3 "#586241")
+ (delim4 "#3f6652")
+ (delim5 "#2a6768")
+ (delim6 "#32647a")
+ (delim7 "#505d7e")
+ (delim8 "#6d5673")
+ (delim9 "#7d525e")
+ (identifierlightness 25)
+ (identifiersaturation 40)
+ (block1 "#f8f0f0")
+ (block2 "#f0f8f0")
+ (block3 "#f0f0f8")
+ (block4 "#f8f8f0")
+ (block5 "#f0f8f8")
+ (block6 "#f8f0f8")
+ (block7 "#efe5e5")
+ (block8 "#e5efe5")
+ (block9 "#e5e5ef")))
+
+(provide-theme 'stekene-light)
+;;; stekene-light-theme.el ends here
diff --git a/lisp/stekene-theme-common.el b/lisp/stekene-theme-common.el
new file mode 100644
index 0000000..109ce45
--- /dev/null
+++ b/lisp/stekene-theme-common.el
@@ -0,0 +1,141 @@
+;;; stekene-theme-common.el --- Common stuff for the stekene themes -*- lexical-binding: t -*-
+
+;; Author: Fanael Linithien <fanael4@gmail.com>
+;; URL: https://github.com/Fanael/stekene-theme
+
+;; This file is NOT part of GNU Emacs.
+
+;; Copyright (c) 2014, Fanael Linithien
+;; All rights reserved.
+;;
+;; Redistribution and use in source and binary forms, with or without
+;; modification, are permitted provided that the following conditions are
+;; met:
+;;
+;; * Redistributions of source code must retain the above copyright
+;; notice, this list of conditions and the following disclaimer.
+;; * Redistributions in binary form must reproduce the above copyright
+;; notice, this list of conditions and the following disclaimer in the
+;; documentation and/or other materials provided with the distribution.
+;;
+;; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+;; IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+;; TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+;; PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
+;; OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+;; EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+;; PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+;; PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+;; LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+;;; Code:
+
+(defmacro stekene-theme--set-faces (name palette)
+ `(let ,(cons '(class '((class color) (min-colors 89))) palette)
+ (custom-theme-set-faces
+ ',name
+ `(default ((,class (:background ,background :foreground ,foreground))))
+ `(cursor ((,class (:background ,foreground))))
+ `(region ((,class (:background ,region))))
+ `(highlight ((,class (:background ,highlight))))
+ `(font-lock-builtin-face ((,class (:foreground ,blue3))))
+ `(font-lock-preprocessor-face ((,class (:foreground ,dullred))))
+ `(font-lock-comment-face ((,class (:foreground ,gray1))))
+ `(font-lock-constant-face ((,class (:foreground ,dullyellow))))
+ `(font-lock-function-name-face ((,class (:foreground ,blue1))))
+ `(font-lock-keyword-face ((,class (:foreground ,gray2))))
+ `(font-lock-string-face ((,class (:foreground ,red))))
+ `(font-lock-regexp-grouping-backslash ((,class (:foreground ,orange2))))
+ `(font-lock-regexp-grouping-construct ((,class (:foreground ,yellow2))))
+ `(font-lock-doc-face ((,class (:foreground ,orange1))))
+ `(font-lock-type-face ((,class (:foreground ,dullgreen))))
+ `(font-lock-variable-name-face ((,class (:foreground ,blue2))))
+ `(font-lock-negation-char-face ((,class (:foreground ,orange2))))
+
+ `(hl-line ((,class (:background ,hlline))))
+ `(show-paren-match-face ((,class (:background ,region))))
+
+ `(whitespace-line ((,class (:background ,whitespaceline :foreground nil))))
+ `(whitespace-trailing ((,class (:background ,whitespacetrailing :foreground nil))))
+
+ `(fringe ((,class (:background ,fringebg))))
+ `(linum ((,class (:background ,background :foreground ,gray1))))
+
+ `(mode-line ((,class
+ (:background ,modelinebg :foreground ,foreground :box nil))))
+
+ `(minibuffer-prompt ((,class (:foreground ,orange1))))
+
+ `(ido-subdir ((,class (:foreground ,yellow1))))
+ `(ido-only-match ((,class (:foreground ,blue2))))
+
+ `(evil-ex-info ((,class (:foreground ,red :weight bold))))
+ `(evil-ex-substitute-replacement ((,class
+ (:foreground ,red :weight bold :underline t))))
+
+ `(highlight-quoted-quote ((,class (:foreground ,orange2))))
+ `(highlight-quoted-symbol ((,class (:foreground ,dullyellow))))
+
+ `(helm-source-header ((,class (:background ,modelinebg :foreground ,blue2))))
+ `(helm-selection ((,class (:background ,helmselection))))
+ `(helm-prefarg ((,class (:foreground ,dullred))))
+ `(helm-match ((,class (:foreground ,blue2))))
+ `(helm-M-x-key ((,class (:foreground ,blue1))))
+ `(helm-ff-file ((,class (:foreground ,foreground))))
+ `(helm-ff-directory ((,class (:foreground ,blue1))))
+ `(helm-ff-executable ((,class (:foreground ,dullgreen))))
+ `(helm-ff-symlink ((,class (:foreground ,dullyellow))))
+ `(helm-ff-invalid-symlink ((,class (:foreground ,red))))
+ `(helm-history-deleted ((,class (:foreground ,red))))
+ `(helm-history-remote ((,class (:foreground ,blue1))))
+ `(helm-lisp-show-completion ((,class (:background ,highlight))))
+
+ `(rainbow-identifiers-identifier-1 ((,class (:foreground ,symbol1))))
+ `(rainbow-identifiers-identifier-2 ((,class (:foreground ,symbol2))))
+ `(rainbow-identifiers-identifier-3 ((,class (:foreground ,symbol3))))
+ `(rainbow-identifiers-identifier-4 ((,class (:foreground ,symbol4))))
+ `(rainbow-identifiers-identifier-5 ((,class (:foreground ,symbol5))))
+ `(rainbow-identifiers-identifier-6 ((,class (:foreground ,symbol6))))
+ `(rainbow-identifiers-identifier-7 ((,class (:foreground ,symbol7))))
+ `(rainbow-identifiers-identifier-8 ((,class (:foreground ,symbol8))))
+ `(rainbow-identifiers-identifier-9 ((,class (:foreground ,symbol9))))
+ `(rainbow-identifiers-identifier-10 ((,class (:foreground ,symbol10))))
+ `(rainbow-identifiers-identifier-11 ((,class (:foreground ,symbol11))))
+ `(rainbow-identifiers-identifier-12 ((,class (:foreground ,symbol12))))
+ `(rainbow-identifiers-identifier-13 ((,class (:foreground ,symbol13))))
+ `(rainbow-identifiers-identifier-14 ((,class (:foreground ,symbol14))))
+ `(rainbow-identifiers-identifier-15 ((,class (:foreground ,symbol15))))
+
+ `(rainbow-delimiters-depth-1-face ((,class (:foreground ,delim1))))
+ `(rainbow-delimiters-depth-2-face ((,class (:foreground ,delim2))))
+ `(rainbow-delimiters-depth-3-face ((,class (:foreground ,delim3))))
+ `(rainbow-delimiters-depth-4-face ((,class (:foreground ,delim4))))
+ `(rainbow-delimiters-depth-5-face ((,class (:foreground ,delim5))))
+ `(rainbow-delimiters-depth-6-face ((,class (:foreground ,delim6))))
+ `(rainbow-delimiters-depth-7-face ((,class (:foreground ,delim7))))
+ `(rainbow-delimiters-depth-8-face ((,class (:foreground ,delim8))))
+ `(rainbow-delimiters-depth-9-face ((,class (:foreground ,delim9))))
+
+ `(highlight-blocks-depth-1-face ((,class (:background ,block1))))
+ `(highlight-blocks-depth-2-face ((,class (:background ,block2))))
+ `(highlight-blocks-depth-3-face ((,class (:background ,block3))))
+ `(highlight-blocks-depth-4-face ((,class (:background ,block4))))
+ `(highlight-blocks-depth-5-face ((,class (:background ,block5))))
+ `(highlight-blocks-depth-6-face ((,class (:background ,block6))))
+ `(highlight-blocks-depth-7-face ((,class (:background ,block7))))
+ `(highlight-blocks-depth-8-face ((,class (:background ,block8))))
+ `(highlight-blocks-depth-9-face ((,class (:background ,block9)))))
+ (custom-theme-set-variables
+ ',name
+ `(rainbow-identifiers-cie-l*a*b*-lightness ,identifierlightness)
+ `(rainbow-identifiers-cie-l*a*b*-saturation ,identifiersaturation))))
+
+;;;###autoload
+(when load-file-name
+ (add-to-list 'custom-theme-load-path
+ (file-name-as-directory (file-name-directory load-file-name))))
+
+(provide 'stekene-theme-common)
+;;; stekene-theme-common.el ends here