Advertisement
Guest User

Untitled

a guest
Jun 5th, 2023
39
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.22 KB | None | 0 0
  1. ;;; iamkarlson-fallout-theme.el --- an fallout inspired dark theme -*- lexical-binding: t; no-byte-compile: t; -*-
  2. ;;
  3. ;; Added: December 25, 2019 (#367)
  4. ;; Author: iamkarlson <https://github.com/iamkarlson>
  5. ;; Maintainer:
  6. ;; Source: original
  7. ;;
  8. ;;; Commentary:
  9. ;;; Code:
  10.  
  11. (require 'doom-themes)
  12.  
  13.  
  14. ;;
  15. ;;; Variables
  16.  
  17. (defgroup iamkarlson-fallout-theme nil
  18. "Options for the `iamkarlson-fallout' theme."
  19. :group 'doom-themes)
  20.  
  21. (defcustom iamkarlson-fallout-padded-modeline doom-themes-padded-modeline
  22. "If non-nil, adds a 4px padding to the mode-line. Can be an integer to
  23. determine the exact padding."
  24. :group 'iamkarlson-fallout-theme
  25. :type '(choice integer boolean))
  26.  
  27. (defcustom iamkarlson-fallout-muted-modeline nil
  28. "If non-nil, the modeline will be in a more muted tone.
  29. Otherwise it's in a dark green color similar to visual mode
  30. selections."
  31. :group 'iamkarlson-fallout-theme
  32. :type 'boolean)
  33.  
  34. (defcustom iamkarlson-fallout-darker-background nil
  35. "If non-nil, the background color will be a bit darker.
  36. This also affects solaire-mode, where the background colors of
  37. real file buffers will now be brighter instead."
  38. :group 'iamkarlson-fallout-theme
  39. :type 'boolean)
  40.  
  41.  
  42. ;;
  43. ;;; Theme definition
  44.  
  45. (def-doom-theme iamkarlson-fallout-theme
  46. "A dark theme with fallout inspired colors"
  47.  
  48. ;; name default 256 16
  49. (
  50. (-bg '("#1c1408" nil nil ))
  51. (-bg-alt '("#775422" nil nil ))
  52. (bg (if iamkarlson-fallout-darker-background -bg-alt -bg))
  53. (bg-alt (if iamkarlson-fallout-darker-background -bg -bg-alt))
  54. (base0 '("#1B2229" "black" "black" ))
  55. (base1 '("#1c1f24" "#1c1f24" "brightblack" ))
  56. (base2 '("#202328" "#202328" "brightblack" ))
  57. (base3 '("#23272e" "#23272e" "brightblack" ))
  58. (base4 '("#3f444a" "#3f444a" "brightblack" ))
  59. (base5 '("#95836f" "#95836f" "brightblack" ))
  60. (base6 '("#73797e" "#73797e" "brightblack" ))
  61. (base7 '("#9ca0a4" "#9ca0a4" "brightblack" ))
  62. (base8 '("#dfdfdf" "#dfdfdf" "white" ))
  63. (fg '("#5b8512" "#5b8512" "brightwhite" ))
  64. (fg-alt '("#4f7410" "#4f7410" "white" ))
  65.  
  66. (grey '("#707a6a" "#707a6a" "brightblack" ))
  67. (red '("#ff4e00" "#ff4e00" "red" ))
  68. (orange '("#ff7000" "#ff7000" "brightred" ))
  69. (green '("#7cb518" "#7cb518" "green" ))
  70. (teal '("#dbc077" "#dbc077" "brightgreen" )) ;; more of a sand/beige color
  71. (yellow '("#ffbf00" "#ffbf00" "yellow" ))
  72. (blue '("#0075c4" "#0075c4" "brightblue" ))
  73. (dark-blue '("#0060a1" "#0060a1" "blue" ))
  74. (magenta '("#d72638" "#d72638" "brightmagenta"))
  75. (violet '("#76597b" "#76597b" "magenta" ))
  76. (cyan '("#898989" "#898989" "brightcyan" ))
  77. (dark-cyan '("#4f7410" "#4f7410" "cyan" ))
  78.  
  79. ;; face categories -- required for all themes
  80. (highlight yellow)
  81. (vertical-bar (doom-darken grey 0.4))
  82. (selection (doom-darken dark-cyan 0.8))
  83. (builtin yellow)
  84. (comments grey)
  85. (doc-comments grey)
  86. (constants orange)
  87. (functions orange)
  88. (keywords red)
  89. (methods red)
  90. (operators yellow)
  91. (type green)
  92. (strings (doom-darken teal 0.1))
  93. (variables green)
  94. (numbers teal)
  95. (region (doom-darken dark-cyan 0.7))
  96. (error red)
  97. (warning yellow)
  98. (success green)
  99. (vc-modified orange)
  100. (vc-added green)
  101. (vc-deleted red)
  102.  
  103. ;; custom categories
  104. (hidden `(,(car bg) "black" "black"))
  105. (-modeline-pad
  106. (when iamkarlson-fallout-padded-modeline
  107. (if (integerp iamkarlson-fallout-padded-modeline) doom-manegarm-padded-modeline 4)))
  108.  
  109. (modeline-fg green)
  110. (modeline-fg-alt vertical-bar)
  111.  
  112. (modeline-bg
  113. `(,(car (if iamkarlson-fallout-muted-modeline (doom-darken teal 0.75) (doom-darken green 0.8)))
  114. ,@(cdr base0)))
  115. (modeline-bg-inactive `(,(doom-darken (car bg) 0.2) ,@(cdr base0))))
  116.  
  117. ;;;; Base theme face overrides
  118. ((button :foreground teal :weight 'bold :underline t)
  119. (custom-button :foreground teal :weight 'bold :underline t :background bg)
  120. ((font-lock-comment-face &override)
  121. :slant 'italic
  122. :background nil)
  123. ((line-number &override) :foreground vertical-bar)
  124. ((line-number-current-line &override) :foreground orange)
  125. (mode-line
  126. :background modeline-bg :foreground modeline-fg
  127. :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg)))
  128. (mode-line-inactive
  129. :background modeline-bg-inactive :foreground modeline-fg-alt
  130. :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-inactive)))
  131. (mode-line-emphasis :foreground highlight)
  132.  
  133. ;;;; company
  134. (company-tooltip :background (doom-darken region 0.1))
  135. (company-tooltip-search-selection :foreground yellow)
  136. (company-tooltip-mouse :inherit 'company-tooltip-search-selection)
  137. (company-tooltip-selection :inherit 'company-tooltip-search-selection)
  138. (company-tooltip-annotation :foreground (doom-darken blue 0.2))
  139. (company-tooltip-annotation-selection :foreground blue)
  140. ;;;; css-mode <built-in> / scss-mode
  141. (css-proprietary-property :foreground orange)
  142. (css-property :foreground green)
  143. (css-selector :foreground blue)
  144. ;;;; dired
  145. (dired-directory :foreground green :bold 'bold)
  146. ;;;; diredfl
  147. (diredfl-dir-heading :foreground yellow :weight 'bold)
  148. (diredfl-dir-name :foreground green :bold 'bold)
  149. (diredfl-dir-priv :foreground teal)
  150. (diredfl-number :foreground red)
  151. ;;;; doom-modeline
  152. (doom-modeline-bar :background highlight)
  153. (doom-modeline-buffer-file :inherit 'mode-line-buffer-id :weight 'bold)
  154. (doom-modeline-buffer-path :inherit 'mode-line-emphasis :weight 'bold)
  155. (doom-modeline-buffer-project-root :foreground green :weight 'bold)
  156. (doom-modeline-project-dir :bold t :foreground orange)
  157. ;;;; elscreen
  158. (elscreen-tab-other-screen-face :background "#353a42" :foreground "#1e2022")
  159. ;;;; evil
  160. (evil-ex-search :inverse-radio t)
  161. (evil-ex-lazy-highlight :inverse-radio t)
  162. ;;;; helm
  163. (helm-match :inherit 'bold :foreground yellow :background nil)
  164. (helm-selection :inherit 'normal :background region)
  165. ;;;; highlight-numbers
  166. ((highlight-numbers-number &override) :inherit 'normal :foreground numbers)
  167. ;;;; isearch
  168. (isearch :inverse-radio t :weight 'bold)
  169. ;;;; ivy
  170. (ivy-current-match :background region :distant-foreground teal :weight 'normal)
  171. (ivy-minibuffer-match-highlight :foreground yellow)
  172. (ivy-minibuffer-match-face-1 :foreground green :background nil) ;; seems to be used for weird space between matches
  173. (ivy-minibuffer-match-face-2 :inherit 'ivy-minibuffer-match-face-1 :foreground orange)
  174. (ivy-minibuffer-match-face-3 :inherit 'ivy-minibuffer-match-face-2 :foreground yellow)
  175. (ivy-minibuffer-match-face-4 :inherit 'ivy-minibuffer-match-face-2 :foreground magenta)
  176. (ivy-highlight-face :foreground green)
  177. ;;;; lsp-mode
  178. (lsp-face-highlight-textual
  179. :background (doom-darken blue 0.5) :foreground yellow :weight 'bold)
  180. ;;;; magit
  181. (magit-branch-current :foreground yellow)
  182. (magit-branch-remote :foreground orange)
  183. (magit-section-heading :foreground blue :weight 'bold)
  184. (magit-section-heading-selection :foreground yellow :weight 'bold)
  185. (magit-section-secondary-heading :foreground green)
  186. (magit-filename :foreground green)
  187. (magit-diff-hunk-heading-highlight :foreground bg :background fg)
  188. (magit-branch-local :foreground yellow)
  189. (magit-diff-file-heading :weight 'regular)
  190. (magit-header-line :background nil :foreground blue :weight 'bold)
  191. ;;;; markdown-mode
  192. (markdown-markup-face :foreground base5)
  193. (markdown-header-face :inherit 'bold :foreground red)
  194. (markdown-code-face :background (doom-lighten base3 0.05))
  195. ;;;; navigation
  196. (nav-flash-face :background fg :foreground yellow)
  197. ;;;; org <built-in>
  198. (org-level-1 :foreground orange :bold t)
  199. (org-level-2 :foreground blue :bold t)
  200. (org-level-3 :foreground magenta :bold t)
  201. (org-level-4 :foreground violet :bold t)
  202. (org-level-5 :foreground red :bold t)
  203. (org-level-6 :foreground yellow :bold t)
  204. (org-hide :foreground hidden)
  205. (org-todo :foreground strings :bold 'inherit)
  206. ;;;; rainbow-delimiters
  207. (rainbow-delimiters-depth-1-face :foreground yellow)
  208. (rainbow-delimiters-depth-2-face :foreground orange)
  209. (rainbow-delimiters-depth-3-face :foreground green)
  210. (rainbow-delimiters-depth-4-face :foreground teal)
  211. (rainbow-delimiters-depth-5-face :foreground magenta)
  212. (rainbow-delimiters-depth-6-face :foreground blue)
  213. (rainbow-delimiters-depth-7-face :foreground fg)
  214. (rainbow-delimiters-depth-8-face :foreground violet)
  215. (rainbow-delimiters-depth-9-face :foreground red)
  216. ;;;; which-key
  217. (which-func :foreground green)
  218. (which-key-command-description-face :foreground fg)
  219. (which-key-group-description-face :foreground yellow)
  220. (which-key-local-map-description-face :foreground yellow))
  221.  
  222. ;;;; Base theme variable overrides-
  223. ())
  224.  
  225. ;;; iamkarlson-fallout-theme.el ends here
  226.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement