|
|
@ -25,7 +25,8 @@ |
|
|
;; |
|
|
;; |
|
|
;;; Installation: |
|
|
;;; Installation: |
|
|
;; |
|
|
;; |
|
|
;; Drop the theme in a folder that is on `custom-theme-load-path' |
|
|
|
|
|
|
|
|
;; Drop the `colarized-core.el` somewhere in your `load-path` and |
|
|
|
|
|
;; the two themes in a folder that is on `custom-theme-load-path' |
|
|
;; and enjoy! |
|
|
;; and enjoy! |
|
|
;; |
|
|
;; |
|
|
;; Don't forget that the theme requires Emacs 24. |
|
|
;; Don't forget that the theme requires Emacs 24. |
|
|
@ -41,12 +42,9 @@ |
|
|
;; |
|
|
;; |
|
|
;;; Code |
|
|
;;; Code |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(defun create-solarized-theme (variant) |
|
|
(defun create-solarized-theme (variant) |
|
|
(let* ((class '((class color) (min-colors 89))) |
|
|
(let* ((class '((class color) (min-colors 89))) |
|
|
;; Solarized palette |
|
|
;; Solarized palette |
|
|
;; colors with +x are lighter, colors with -x are darker |
|
|
|
|
|
|
|
|
|
|
|
(base03 "#002b36") |
|
|
(base03 "#002b36") |
|
|
(base02 "#073642") |
|
|
(base02 "#073642") |
|
|
;; emphasized content |
|
|
;; emphasized content |
|
|
@ -80,17 +78,17 @@ |
|
|
`(link ((,class (:foreground ,yellow :underline t :weight bold)))) |
|
|
`(link ((,class (:foreground ,yellow :underline t :weight bold)))) |
|
|
`(link-visited ((,class (:foreground ,yellow :underline t :weight normal)))) |
|
|
`(link-visited ((,class (:foreground ,yellow :underline t :weight normal)))) |
|
|
|
|
|
|
|
|
;;; basic coloring |
|
|
|
|
|
|
|
|
;; basic coloring |
|
|
`(default ((,class (:foreground ,solarized-fg :background ,solarized-bg)))) |
|
|
`(default ((,class (:foreground ,solarized-fg :background ,solarized-bg)))) |
|
|
`(cursor ((,class (:foreground ,solarized-fg)))) |
|
|
|
|
|
|
|
|
`(cursor ((,class (:foreground ,solarized-bg :background ,solarized-fg :inverse-video t)))) |
|
|
`(escape-glyph-face ((,class (:foreground ,red)))) |
|
|
`(escape-glyph-face ((,class (:foreground ,red)))) |
|
|
`(fringe ((,class (:foreground ,solarized-fg :background ,solarized-bg)))) |
|
|
|
|
|
|
|
|
`(fringe ((,class (:foreground ,solarized-fg :background ,solarized-hl)))) |
|
|
`(header-line ((,class (:foreground ,yellow |
|
|
`(header-line ((,class (:foreground ,yellow |
|
|
:background ,solarized-hl |
|
|
:background ,solarized-hl |
|
|
:box (:line-width -1 :style released-button))))) |
|
|
:box (:line-width -1 :style released-button))))) |
|
|
`(highlight ((,class (:background ,solarized-hl)))) |
|
|
`(highlight ((,class (:background ,solarized-hl)))) |
|
|
|
|
|
|
|
|
;;; compilation |
|
|
|
|
|
|
|
|
;; compilation |
|
|
`(compilation-column-face ((,class (:foreground ,yellow)))) |
|
|
`(compilation-column-face ((,class (:foreground ,yellow)))) |
|
|
`(compilation-enter-directory-face ((,class (:foreground ,green)))) |
|
|
`(compilation-enter-directory-face ((,class (:foreground ,green)))) |
|
|
`(compilation-error-face ((,class (:foreground ,red :weight bold :underline t)))) |
|
|
`(compilation-error-face ((,class (:foreground ,red :weight bold :underline t)))) |
|
|
@ -103,7 +101,7 @@ |
|
|
`(compilation-message-face ((,class (:foreground ,blue)))) |
|
|
`(compilation-message-face ((,class (:foreground ,blue)))) |
|
|
`(compilation-warning-face ((,class (:foreground ,yellow :weight bold :underline t)))) |
|
|
`(compilation-warning-face ((,class (:foreground ,yellow :weight bold :underline t)))) |
|
|
|
|
|
|
|
|
;;; grep |
|
|
|
|
|
|
|
|
;; grep |
|
|
`(grep-context-face ((,class (:foreground ,solarized-fg)))) |
|
|
`(grep-context-face ((,class (:foreground ,solarized-fg)))) |
|
|
`(grep-error-face ((,class (:foreground ,red :weight bold :underline t)))) |
|
|
`(grep-error-face ((,class (:foreground ,red :weight bold :underline t)))) |
|
|
`(grep-hit-face ((,class (:foreground ,blue)))) |
|
|
`(grep-hit-face ((,class (:foreground ,blue)))) |
|
|
@ -116,14 +114,14 @@ |
|
|
`(lazy-highlight ((,class (:foreground ,yellow :background ,solarized-hl)))) |
|
|
`(lazy-highlight ((,class (:foreground ,yellow :background ,solarized-hl)))) |
|
|
|
|
|
|
|
|
`(menu ((,class (:foreground ,solarized-fg :background ,solarized-bg)))) |
|
|
`(menu ((,class (:foreground ,solarized-fg :background ,solarized-bg)))) |
|
|
`(minibuffer-prompt ((,class (:foreground ,yellow)))) |
|
|
|
|
|
|
|
|
`(minibuffer-prompt ((,class (:foreground ,solarized-emph)))) |
|
|
`(mode-line |
|
|
`(mode-line |
|
|
((,class (:foreground ,green |
|
|
|
|
|
|
|
|
((,class (:foreground ,solarized-fg |
|
|
:background ,solarized-hl |
|
|
:background ,solarized-hl |
|
|
:box (:line-width -1 :style released-button))))) |
|
|
:box (:line-width -1 :style released-button))))) |
|
|
`(mode-line-buffer-id ((,class (:foreground ,yellow :weight bold)))) |
|
|
|
|
|
|
|
|
`(mode-line-buffer-id ((,class (:foreground ,solarized-emph :weight bold)))) |
|
|
`(mode-line-inactive |
|
|
`(mode-line-inactive |
|
|
((,class (:foreground ,green |
|
|
|
|
|
|
|
|
((,class (:foreground ,solarized-fg |
|
|
:background ,solarized-bg |
|
|
:background ,solarized-bg |
|
|
:box (:line-width -1 :style released-button))))) |
|
|
:box (:line-width -1 :style released-button))))) |
|
|
`(region ((,class (:background ,solarized-hl)))) |
|
|
`(region ((,class (:background ,solarized-hl)))) |
|
|
@ -131,20 +129,20 @@ |
|
|
`(trailing-whitespace ((,class (:background ,red)))) |
|
|
`(trailing-whitespace ((,class (:background ,red)))) |
|
|
`(vertical-border ((,class (:foreground ,solarized-fg)))) |
|
|
`(vertical-border ((,class (:foreground ,solarized-fg)))) |
|
|
|
|
|
|
|
|
;;; font lock |
|
|
|
|
|
|
|
|
;; font lock |
|
|
`(font-lock-builtin-face ((,class (:foreground ,blue)))) |
|
|
`(font-lock-builtin-face ((,class (:foreground ,blue)))) |
|
|
`(font-lock-comment-face ((,class (:foreground ,solarized-comments)))) |
|
|
`(font-lock-comment-face ((,class (:foreground ,solarized-comments)))) |
|
|
`(font-lock-comment-delimiter-face ((,class (:foreground ,solarized-comments)))) |
|
|
`(font-lock-comment-delimiter-face ((,class (:foreground ,solarized-comments)))) |
|
|
`(font-lock-constant-face ((,class (:foreground ,green)))) |
|
|
|
|
|
|
|
|
`(font-lock-constant-face ((,class (:foreground ,blue)))) |
|
|
`(font-lock-doc-face ((,class (:foreground ,green)))) |
|
|
`(font-lock-doc-face ((,class (:foreground ,green)))) |
|
|
`(font-lock-doc-string-face ((,class (:foreground ,blue)))) |
|
|
`(font-lock-doc-string-face ((,class (:foreground ,blue)))) |
|
|
`(font-lock-function-name-face ((,class (:foreground ,blue)))) |
|
|
`(font-lock-function-name-face ((,class (:foreground ,blue)))) |
|
|
`(font-lock-keyword-face ((,class (:foreground ,yellow :weight bold)))) |
|
|
|
|
|
|
|
|
`(font-lock-keyword-face ((,class (:foreground ,green :weight bold)))) |
|
|
`(font-lock-negation-char-face ((,class (:foreground ,solarized-fg)))) |
|
|
`(font-lock-negation-char-face ((,class (:foreground ,solarized-fg)))) |
|
|
`(font-lock-preprocessor-face ((,class (:foreground ,blue)))) |
|
|
`(font-lock-preprocessor-face ((,class (:foreground ,blue)))) |
|
|
`(font-lock-string-face ((,class (:foreground ,red)))) |
|
|
|
|
|
`(font-lock-type-face ((,class (:foreground ,blue)))) |
|
|
|
|
|
`(font-lock-variable-name-face ((,class (:foreground ,orange)))) |
|
|
|
|
|
|
|
|
`(font-lock-string-face ((,class (:foreground ,cyan)))) |
|
|
|
|
|
`(font-lock-type-face ((,class (:foreground ,yellow)))) |
|
|
|
|
|
`(font-lock-variable-name-face ((,class (:foreground ,blue)))) |
|
|
`(font-lock-warning-face ((,class (:foreground ,yellow :weight bold :underline t)))) |
|
|
`(font-lock-warning-face ((,class (:foreground ,yellow :weight bold :underline t)))) |
|
|
|
|
|
|
|
|
`(c-annotation-face ((,class (:inherit font-lock-constant-face)))) |
|
|
`(c-annotation-face ((,class (:inherit font-lock-constant-face)))) |
|
|
@ -405,9 +403,9 @@ |
|
|
|
|
|
|
|
|
;; whitespace-mode |
|
|
;; whitespace-mode |
|
|
`(whitespace-space ((,class (:background ,solarized-bg :foreground ,solarized-comments)))) |
|
|
`(whitespace-space ((,class (:background ,solarized-bg :foreground ,solarized-comments)))) |
|
|
`(whitespace-hspace ((,class (:background ,solarized-bg :foreground ,solarized-bg)))) |
|
|
|
|
|
|
|
|
`(whitespace-hspace ((,class (:background ,solarized-bg :foreground ,solarized-comments)))) |
|
|
`(whitespace-tab ((,class (:background ,solarized-bg :foreground ,red)))) |
|
|
`(whitespace-tab ((,class (:background ,solarized-bg :foreground ,red)))) |
|
|
`(whitespace-newline ((,class (:foreground ,solarized-bg)))) |
|
|
|
|
|
|
|
|
`(whitespace-newline ((,class (:foreground ,solarized-comments)))) |
|
|
`(whitespace-trailing ((,class (:foreground ,red :background ,solarized-bg)))) |
|
|
`(whitespace-trailing ((,class (:foreground ,red :background ,solarized-bg)))) |
|
|
`(whitespace-line ((,class (:background ,solarized-bg :foreground ,magenta)))) |
|
|
`(whitespace-line ((,class (:background ,solarized-bg :foreground ,magenta)))) |
|
|
`(whitespace-space-before-tab ((,class (:background ,orange :foreground ,orange)))) |
|
|
`(whitespace-space-before-tab ((,class (:background ,orange :foreground ,orange)))) |
|
|
@ -447,7 +445,6 @@ |
|
|
;; which-func-mode |
|
|
;; which-func-mode |
|
|
`(which-func ((,class (:foreground ,green)))))) |
|
|
`(which-func ((,class (:foreground ,green)))))) |
|
|
|
|
|
|
|
|
;; some theme variables |
|
|
|
|
|
(custom-theme-set-variables |
|
|
(custom-theme-set-variables |
|
|
(if (eq variant 'light) 'solarized-light 'solarized-dark) |
|
|
(if (eq variant 'light) 'solarized-light 'solarized-dark) |
|
|
'(ansi-color-names-vector [solarized-bg red green yellow |
|
|
'(ansi-color-names-vector [solarized-bg red green yellow |
|
|
|