9da3ffee41
This is a massive diff that I had to do in a hurry - when leaving Urbint. I'm pretty sure that most of these are updating Emacs packages, but I'm not positive.
169 lines
5.8 KiB
EmacsLisp
169 lines
5.8 KiB
EmacsLisp
;; 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
|