Merge pull request #215 from defphil/master

Adding doom based sourcerer theme
This commit is contained in:
Henrik Lissner 2018-08-23 21:11:21 +02:00 committed by GitHub
commit 5383b55e6b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 173 additions and 0 deletions

View file

@ -35,6 +35,7 @@ DOOM Themes is an opinionated UI plugin and pack of themes extracted from my
- [X] `doom-nova`: adapted from [Nova] (thanks to [bigardone])
- [X] `doom-peacock`: based on Peacock from [daylerees' themes][daylerees] (thanks to [teesloane])
- [X] `doom-solarized-light`: light variant of [Solarized][solarized] (thanks to [fuxialexander])
- [X] `doom-sourcerer`: based on [Sourcerer][sourcerer] (thanks to [defphil])
- [X] `doom-spacegrey`: [I'm sure you've heard of it][spacegrey] (thanks to [teesloane])
- [X] `doom-tomorrow-night`: by [Chris Kempson][tomorrow]
- [x] `doom-tomorrow-day`: by [Chris Kempson][tomorrow] (thanks to [emacswatcher])
@ -138,6 +139,7 @@ pointers. Additional theme and plugin support requests are welcome too.
[all-the-icons]: https://github.com/domtronn/all-the-icons.el
[bigardone]: https://github.com/bigardone
[daylerees]: http://daylerees.github.io/
[defphil]: https://github.com/defphil
[emacs.d]: https://github.com/hlissner/.emacs.d
[emacswatcher]: https://github.com/emacswatcher
[fuxialexander]: https://github.com/fuxialexander
@ -149,6 +151,7 @@ pointers. Additional theme and plugin support requests are welcome too.
[screenshots]: https://github.com/hlissner/emacs-doom-themes/tree/screenshots
[solarized]: http://ethanschoonover.com/solarized
[solaire-mode]: https://github.com/hlissner/emacs-solaire-mode
[sourcerer]: https://github.com/xero/sourcerer.vim
[spacegrey]: http://kkga.github.io/spacegray/
[teesloane]: https://github.com/teesloane
[tomorrow]: https://github.com/ChrisKempson/Tomorrow-Theme

View file

@ -34,6 +34,7 @@
;; [X] `doom-nova' (added by bigardone)
;; [X] `doom-peacock' (added by teesloane)
;; [X] `doom-solarized-light' (added by fuxialexnder)
;; [X] `doom-sourcerer' (added by defphil)
;; [X] `doom-spacegrey' (added by teesloane)
;; [X] `doom-tomorrow-night'
;; [X] `doom-tomorrow-day'

View file

@ -0,0 +1,169 @@
;; doom-sourcerer-theme.el --- a more sourcerer version of doom-one
;;; Commentary:
(require 'doom-themes)
;;; Code:
;;
(defgroup doom-sourcerer-theme nil
"Options for doom-themes"
:group 'doom-themes)
(defcustom doom-sourcerer-brighter-modeline nil
"If non-nil, more vivid colors will be used to style the mode-line."
:group 'doom-sourcerer-theme
:type 'boolean)
(defcustom doom-sourcerer-brighter-comments nil
"If non-nil, comments will be highlighted in more vivid colors."
:group 'doom-sourcerer-theme
:type 'boolean)
(defcustom doom-sourcerer-comment-bg doom-sourcerer-brighter-comments
"If non-nil, comments will have a subtle, darker background.
Enhancing their legibility."
:group 'doom-sourcerer-theme
:type 'boolean)
(defcustom doom-sourcerer-padded-modeline doom-themes-padded-modeline
"If non-nil, adds a 4px padding to the mode-line.
Can be an integer to determine the exact padding."
:group 'doom-sourcerer-theme
:type '(or integer boolean))
;;
(def-doom-theme doom-sourcerer
"A dark theme based off of xero's sourcerer vim colorscheme"
((bg '("#202020"))
(bg-alt '("#222222"))
(base0 '("#1d2127"))
(base1 '("#1d2127"))
(base2 '("#272727"))
(base3 '("#32353f"))
(base4 '("#494952"))
(base5 '("#62686E"))
(base6 '("#757B80"))
(base7 '("#9ca0a4"))
(base8 '("#fdfdd5"))
(fg '("#c2c2b0"))
(fg-alt '("#5D656B"))
(grey base4)
(red '("#aa4450"))
(orange '("#dd8844"))
(green '("#858253"))
(green-br '("#99bb66"))
(teal '("#5b8583" "#44b9b1" ))
(yellow '("#d0770f" ))
(blue '("#86aed5" ))
(dark-blue '("#6688aa" ))
(magenta '("#8686ae" ))
(violet '("#8686ae" ))
(cyan '("#5b8583" ))
(dark-cyan '("#9aaccb" ))
;; face categories
(highlight orange)
(vertical-bar base0)
(selection base5)
(builtin blue)
(comments (if doom-sourcerer-brighter-comments dark-cyan "#5c5d56"))
(doc-comments (if doom-sourcerer-brighter-comments (doom-lighten dark-cyan 0.15) (doom-darken "#5c5d56" 0.1)))
(constants teal)
(functions base8)
(keywords blue)
(methods magenta)
(operators teal)
(type violet)
(strings green)
(variables base8)
(numbers orange)
(region base2)
(error red)
(warning orange)
(success green)
(vc-modified yellow)
(vc-added green)
(vc-deleted red)
;; custom categories
(hidden `(,(car bg) "black" "black"))
(hidden-alt `(,(car bg-alt) "black" "black"))
(-modeline-pad
(when doom-sourcerer-padded-modeline
(if (integerp doom-sourcerer-padded-modeline) doom-sourcerer-padded-modeline 4)))
(modeline-fg "#bbc2cf")
(modeline-fg-alt (doom-blend blue grey (if doom-sourcerer-brighter-modeline 0.4 0.08)))
(modeline-bg
(if doom-sourcerer-brighter-modeline
`("#383f58" ,@(cdr base1))
`(,(car base3) ,@(cdr base0))))
(modeline-bg-l
(if doom-sourcerer-brighter-modeline
modeline-bg
`(,(doom-darken (car bg) 0.15) ,@(cdr base1))))
(modeline-bg-inactive (doom-darken bg 0.20))
(modeline-bg-inactive-l `(,(doom-darken (car bg-alt) 0.2) ,@(cdr base0))))
;; --- extra faces ------------------------
((elscreen-tab-other-screen-face :background "#353a42" :foreground "#1e2022")
(cursor :background blue)
(font-lock-comment-face
:foreground comments
:background (if doom-sourcerer-comment-bg (doom-darken bg-alt 0.095)))
(font-lock-doc-face
:inherit 'font-lock-comment-face
:foreground doc-comments)
(mode-line-buffer-id :foreground green-br :bold bold)
((line-number &override) :foreground base4)
((line-number-current-line &override) :foreground blue :bold bold)
(doom-modeline-bar :background (if doom-sourcerer-brighter-modeline modeline-bg highlight))
(doom-modeline-buffer-path :foreground (if doom-sourcerer-brighter-modeline base8 blue) :bold bold)
(mode-line
:background base3 :foreground modeline-fg
:box (if -modeline-pad `(:line-width ,-modeline-pad :color ,base3)))
(mode-line-inactive
:background bg-alt :foreground modeline-fg-alt
:box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-inactive)))
(mode-line-emphasis
:foreground (if doom-sourcerer-brighter-modeline base8 highlight))
(fringe :background base2)
(solaire-mode-line-face
:inherit 'mode-line
:background modeline-bg-l
:box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-l)))
(solaire-mode-line-inactive-face
:inherit 'mode-line-inactive
:background modeline-bg-inactive-l
:box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-inactive-l)))
;; --- major-mode faces -------------------
;; css-mode / scss-mode
(css-proprietary-property :foreground orange)
(css-property :foreground green)
(css-selector :foreground blue)
;; markdown-mode
(markdown-header-face :inherit 'bold :foreground red)
;; rainbow-delimiters
(rainbow-delimiters-depth-1-face :foreground dark-cyan)
(rainbow-delimiters-depth-2-face :foreground teal)
(rainbow-delimiters-depth-3-face :foreground dark-blue)
(rainbow-delimiters-depth-4-face :foreground green)
(rainbow-delimiters-depth-5-face :foreground violet)
(rainbow-delimiters-depth-6-face :foreground green)
(rainbow-delimiters-depth-7-face :foreground orange)
;; org-mode
(org-hide :foreground hidden)
(solaire-org-hide-face :foreground hidden-alt))
;; --- extra variables --------------------
;; ()
)
;;; doom-sourcerer-theme.el ends here