You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

488 lines
25 KiB

6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
  1. ;;; zerodark-theme.el --- A dark, medium contrast theme for Emacs
  2. ;; Copyright (C) 2015 Nicolas Petton
  3. ;; Author: Nicolas Petton <nicolas@petton.fr>
  4. ;; Keywords: themes
  5. ;; URL: https://github.com/NicolasPetton/zerodark-theme
  6. ;; Version: 1.0
  7. ;; This file is NOT part of GNU Emacs
  8. ;;; License:
  9. ;;
  10. ;; Zerodark (https://github.com/zerodark-theme) is licensed under a
  11. ;; Creative Commons Attribution-ShareAlike 4.0 International License.
  12. ;;; Commentary:
  13. ;;
  14. ;; A dark theme inspired from One Dark and Niflheim
  15. ;;
  16. ;;; Code:
  17. (deftheme zerodark
  18. "A dark medium contrast theme")
  19. (defgroup zerodark
  20. nil
  21. "A dark theme inspired from One Dark and Niflheim.")
  22. (defcustom zerodark-use-paddings-in-mode-line t
  23. "When non-nil, use top and bottom paddings in the mode-line."
  24. :type 'boolean
  25. :group 'zerodark)
  26. (let ((class '((class color) (min-colors 89)))
  27. (default "#abb2bf")
  28. (light "#ccd4e3")
  29. (background "#282c34")
  30. (background-darker "#21252b")
  31. (background-lighter "#3a3f4b")
  32. (background-red "#4c3840")
  33. (background-purple "#48384c")
  34. (background-blue "#38394c")
  35. (background-green "#3d4a41")
  36. (background-orange "#4a473d")
  37. (hl-line "#2c323b")
  38. (grey "#cccccc")
  39. (grey-dark "#666666")
  40. (highlight "#3e4451")
  41. (comment "#687080")
  42. (orange "#da8548")
  43. (orange-light "#ddbd78")
  44. (red "#ff6c6b")
  45. (purple "#c678dd")
  46. (purple-dark "#64446d")
  47. (blue "#61afef")
  48. (blue-dark "#1f5582")
  49. (green "#98be65")
  50. (green-light "#9eac8c")
  51. (peach "PeachPuff3")
  52. (diff-added-background "#284437")
  53. (diff-added-refined-background "#198754")
  54. (diff-removed-background "#553333")
  55. (diff-removed-refined-background "#981b1b")
  56. (diff-current-background "#3e4d58")
  57. (diff-current-refined-background "#456981"))
  58. (custom-theme-set-faces
  59. 'zerodark
  60. `(default ((,class (:background ,background :foreground ,default))))
  61. `(cursor ((,class (:background ,default))))
  62. ;; Highlighting faces
  63. `(fringe ((,class (:background ,background))))
  64. `(highlight ((,class (:background ,highlight :foreground ,default :underline nil))))
  65. `(region ((,class (:background ,highlight :foreground ,default))))
  66. `(secondary-selection ((,class (:background ,highlight :foreground ,default))))
  67. `(isearch ((,class (:background ,orange-light :foreground ,highlight))))
  68. `(lazy-highlight ((,class (:background ,grey-dark :foreground ,orange-light))))
  69. `(hl-line ((,class (:background ,hl-line :underline unspecified :inherit nil))))
  70. `(match ((,class (:background ,background-green))))
  71. ;; Font lock faces
  72. `(font-lock-builtin-face ((,class (:foreground ,blue :weight bold))))
  73. `(font-lock-comment-face ((,class (:foreground ,comment :slant italic))))
  74. `(font-lock-constant-face ((,class (:foreground ,orange :weight bold))))
  75. `(font-lock-function-name-face ((,class (:foreground ,blue))))
  76. `(font-lock-keyword-face ((,class (:foreground ,purple :weight bold))))
  77. `(font-lock-string-face ((,class (:foreground ,green))))
  78. `(font-lock-doc-face ((,class (:foreground ,green-light))))
  79. `(font-lock-type-face ((,class (:foreground ,blue))))
  80. `(font-lock-variable-name-face ((,class (:foreground ,blue))))
  81. `(font-lock-warning-face ((,class (:foreground ,red :weight bold :background ,background-red))))
  82. ;; Mode line faces
  83. `(mode-line ((,class (:background ,background-blue :height 0.9 :foreground ,blue
  84. :box ,(when zerodark-use-paddings-in-mode-line
  85. (list :line-width 4 :color background-blue))))))
  86. `(mode-line-inactive ((,class (:background ,background-darker :height 0.9 :foreground ,default
  87. :box ,(when zerodark-use-paddings-in-mode-line
  88. (list :line-width 4 :color background-darker))))))
  89. `(header-line ((,class (:inherit mode-line-inactive))))
  90. ;; powerline
  91. `(powerline-active1 ((,class (:height 0.9 :foreground ,blue :background ,background-darker))))
  92. `(powerline-active2 ((,class (:height 0.9 :foreground ,blue :background ,background-lighter))))
  93. ;; mml
  94. `(message-mml-face ((,class (:foreground ,comment))))
  95. ;; Org-clock mode line
  96. `(org-mode-line-clock ((,class (:background unspecified (:inherit mode-line)))))
  97. ;; Escape and prompt faces
  98. `(minibuffer-prompt ((,class (:foreground ,blue :weight bold))))
  99. `(escape-glyph ((,class (:foreground ,blue :weight bold))))
  100. ;; linum
  101. `(linum ((,class (:foreground ,comment :background ,background))))
  102. ;; from hlinum
  103. `(linum-highlight-face ((,class (:foreground ,blue ,background ,background-blue))))
  104. ;; eshell
  105. `(eshell-prompt ((,class (:foreground ,orange :background ,background :weight bold))))
  106. `(eshell-ls-directory ((,class (:foreground ,purple :background ,background :weight bold))))
  107. `(eshell-ls-symlink ((,class (:foreground ,orange :background ,background :weight normal))))
  108. `(eshell-ls-executable ((,class (:foreground ,green :background ,background :weight bold))))
  109. ;; whitespace
  110. `(whitespace-space ((,class (:background unspecified :foreground ,highlight
  111. :inverse-video unspecified))))
  112. `(whitespace-hspace ((,class (:background unspecified :foreground ,highlight
  113. :inverse-video unspecified))))
  114. `(whitespace-tab ((,class (:background unspecified :foreground ,highlight
  115. :inverse-video unspecified))))
  116. `(whitespace-newline ((,class (:background unspecified :foreground ,highlight
  117. :inverse-video unspecified))))
  118. `(whitespace-trailing ((,class (:background ,red :foreground ,background :weight bold
  119. :inverse-video nil))))
  120. `(whitespace-line ((,class (:background unspecified :foreground ,red
  121. :inverse-video unspecified))))
  122. `(whitespace-space-before-tab ((,class (:inherit whitespace-space))))
  123. `(whitespace-space-after-tab ((,class (:inherit whitespace-space))))
  124. `(whitespace-indentation ((,class (:background unspecified :foreground ,highlight
  125. :inverse-video unspecified))))
  126. `(whitespace-empty ((,class (:background ,orange :foreground ,highlight
  127. :inverse-video unspecified))))
  128. ;; link faces
  129. `(link ((,class (:foreground ,blue :underline t))))
  130. `(link-visited ((,class (:foreground ,blue :underline t))))
  131. ;; widget faces
  132. `(widget-field ((,class (:background ,highlight :box (:line-width 1 :color ,comment)))))
  133. `(widget-button ((,class (:inherit link))))
  134. ;; custom
  135. `(custom-button ((,class (:background ,background-lighter :box (:line-width 2 :style released-button)))))
  136. `(custom-button-mouse ((,class (:background ,highlight :box (:line-width 2 :style released-button)))))
  137. `(custom-button-pressed ((,class (:background ,highlight :box (:line-width 2 :style pressed-button)))))
  138. `(custom-group-tag ((,class (:foreground ,purple :weight bold :height 1.4))))
  139. `(custom-variable-tag ((,class (:foreground ,purple :weight bold))))
  140. `(custom-state ((,class (:foreground ,green))))
  141. ;; compilation
  142. `(compilation-info ((,class (:foreground ,purple :weight bold))))
  143. `(compilation-warning ((,class (:foreground ,orange :weight bold))))
  144. `(compilation-error ((,class (:foreground ,red :weight bold))))
  145. `(compilation-line-number ((,class (:foreground ,green :weight bold))))
  146. `(compilation-mode-line-exit ((,class (:foreground ,green :weight bold :inverse-video nil))))
  147. `(compilation-mode-line-run ((,class (:foreground ,orange :weight bold))))
  148. `(compilation-mode-line-error ((,class (:foreground ,red :weight bold))))
  149. ;; dired
  150. `(dired-header ((,class (:foreground ,blue :weight bold))))
  151. `(dired-directory ((,class (:foreground ,purple :weight normal))))
  152. ;; magit
  153. `(magit-diff-context-highlight ((,class (:background ,background-darker))))
  154. `(magit-diff-file-heading ((,class (:weight bold :foreground ,blue))))
  155. `(magit-diff-file-heading-highlight ((,class (:weight bold :foreground ,blue :background ,background-blue))))
  156. `(magit-diff-removed-highlight ((,class (:background ,diff-removed-background))))
  157. `(magit-diff-removed ((,class (:background ,diff-removed-background))))
  158. `(magit-diff-added-highlight ((,class (:background ,diff-added-background))))
  159. `(magit-diff-added ((,class (:background ,diff-added-background))))
  160. `(magit-diff-lines-heading ((,class (:background ,blue-dark :foreground "white"))))
  161. `(magit-diff-hunk-heading ((,class (:background ,background-lighter))))
  162. `(magit-diff-hunk-heading-highlight ((,class (:background ,blue-dark))))
  163. `(magit-diff-hunk-heading ((,class (:background ,background-lighter))))
  164. `(magit-process-ok ((,class (:foreground ,green :weight bold))))
  165. `(magit-section-highlight ((,class (:background ,background-darker))))
  166. `(magit-section-heading ((,class (:foreground ,grey :weight bold))))
  167. `(magit-branch-current ((,class (:foreground ,blue :box 1))))
  168. `(magit-branch-local ((,class (:foreground ,purple :box 1))))
  169. `(magit-branch-remote ((,class (:foreground ,green :box 1))))
  170. `(magit-reflog-reset ((,class (:background ,background-red :foreground ,red :weight bold))))
  171. `(magit-reflog-amend ((,class (:background ,background-blue :foreground ,blue :weight bold))))
  172. `(magit-reflog-rebase ((,class (:background ,background-blue :foreground ,blue :weight bold))))
  173. `(magit-reflog-commit ((,class (:background ,background-green :foreground ,green :weight bold))))
  174. `(magit-bisect-bad ((,class (:background ,background-red :foreground ,red :box 1))))
  175. `(magit-bisect-good ((,class (:background ,background-blue :foreground ,blue :box 1))))
  176. `(magit-blame-heading ((,class (:foreground ,green :background ,background-green :box 1))))
  177. `(git-commit-summary ((,class (:weight bold))))
  178. `(magit-tag ((,class (:foreground ,purple :weight bold :box 1 :background "#202020"))))
  179. `(magit-sequence-part ((,class (:foreground ,orange :weight bold))))
  180. `(magit-sequence-head ((,class (:foreground ,green :weight bold))))
  181. ;; Message faces
  182. `(message-header-name ((,class (:foreground ,blue :weight bold))))
  183. `(message-header-cc ((,class (:foreground ,purple))))
  184. `(message-header-other ((,class (:foreground ,purple))))
  185. `(message-header-subject ((,class (:foreground ,green))))
  186. `(message-header-to ((,class (:foreground ,purple))))
  187. `(message-cited-text ((,class (:foreground ,comment))))
  188. `(message-separator ((,class (:foreground ,red :weight bold))))
  189. ;; ido faces
  190. `(ido-first-match ((,class (:foreground ,purple :weight bold))))
  191. `(ido-only-match ((,class (:foreground ,purple :weight bold))))
  192. `(ido-subdir ((,class (:foreground ,blue))))
  193. ;; notmuch
  194. `(notmuch-message-summary-face ((,class (:background ,highlight :box (:line-width 2 :color ,background)))))
  195. `(notmuch-search-count ((,class (:foreground ,red :weight bold))))
  196. `(notmuch-search-matching-authors ((,class (:foreground ,comment))))
  197. `(notmuch-search-subject ((,class (:foreground ,default))))
  198. `(notmuch-search-unread-face ((,class (:weight bold))))
  199. `(notmuch-search-date ((,class (:foreground ,purple))))
  200. `(notmuch-crypto-part-header ((,class (:foreground ,blue))))
  201. `(notmuch-crypto-decryption ((,class (:foreground ,purple))))
  202. `(notmuch-crypto-signature-unknown ((,class (:foreground ,red))))
  203. `(notmuch-crypto-signature-good ((,class (:background ,blue :foreground ,background :weight bold))))
  204. `(notmuch-crypto-signature-good-key ((,class (:background ,blue :foreground ,background :weight bold))))
  205. `(notmuch-crypto-signature-bad ((,class (:background ,red :foreground ,background :weight bold))))
  206. `(notmuch-tag-face ((,class (:foreground ,green :weight bold))))
  207. ;; company
  208. `(company-preview ((,class (:background ,background-darker :foreground ,default))))
  209. `(company-preview-common ((,class (:background ,background-darker :foreground ,purple))))
  210. `(company-preview-search ((,class (:background ,blue :foreground ,default))))
  211. `(company-tooltip ((,class (:background ,background-darker :foreground ,default))))
  212. `(company-scrollbar-bg ((,class (:background ,background-darker))))
  213. `(company-scrollbar-fg ((,class (:background ,background-blue))))
  214. `(company-tooltip-common ((,class (:foreground ,purple :weight bold :background ,background-darker))))
  215. `(company-tooltip-annotation ((,class (:foreground ,blue :weight bold :background ,background-blue))))
  216. `(company-tooltip-common-selection ((,class (:foreground ,purple :background ,background-lighter :weight bold))))
  217. `(company-tooltip-selection ((,class (:foreground ,default :background ,background-lighter))))
  218. `(company-tooltip-mouse ((,class (:foreground ,default :background ,background-lighter))))
  219. ;; web-mode
  220. `(web-mode-html-tag-face ((,class (:foreground ,purple :weight bold))))
  221. `(web-mode-symbol-face ((,class (:foreground ,red :weight bold))))
  222. ;; js2-mode
  223. `(js2-function-param ((,class (:foreground ,blue))))
  224. ;; flycheck
  225. `(flycheck-fringe-error ((,class (:foreground ,red :background ,background-red :weight bold :inverse-video t))))
  226. `(flycheck-fringe-warning ((,class (:background ,background-orange :foreground ,orange :weight bold :inverse-video t))))
  227. `(flycheck-fringe-info ((,class (:background ,background-blue :foreground ,blue :weight bold :inverse-video t))))
  228. `(flycheck-warning ((,class (:underline (:color ,red :style wave)))))
  229. `(flycheck-error ((,class (:underline (:color ,red :style wave)))))
  230. ;; FIC
  231. `(font-lock-fic-face ((,class (:foreground ,background :background ,red :weight bold))))
  232. ;; org-mode todo
  233. `(org-hide ((,class (:foreground ,background))))
  234. `(org-todo ((,class (:foreground ,red :background ,background-red :weight bold))))
  235. `(org-done ((,class (:foreground ,blue :background ,background-blue :weight bold))))
  236. `(org-date ((,class (:background ,background-lighter))))
  237. `(org-scheduled-previously ((,class (:foreground ,red))))
  238. `(org-scheduled ((,class (:foreground ,default))))
  239. `(org-headline-done ((,class (:foreground ,comment))))
  240. `(outline-1 ((,class (:foreground ,blue :weight bold))))
  241. `(outline-2 ((,class (:foreground ,purple :weight bold))))
  242. `(outline-3 ((,class (:weight bold))))
  243. `(outline-4 ((,class (:weight bold))))
  244. `(outline-5 ((,class (:weight bold))))
  245. `(outline-6 ((,class (:weight bold))))
  246. `(outline-7 ((,class (:weight bold))))
  247. `(outline-8 ((,class (:weight bold))))
  248. `(org-column-title ((,class (:foreground unspecified :background unspecified))))
  249. `(org-agenda-date ((,class (:foreground ,purple :weight bold))))
  250. `(org-agenda-date-today ((,class (:foreground ,blue :weight bold :background ,background-blue :box 1))))
  251. `(org-agenda-structure ((,class (:foreground ,blue :weight bold))))
  252. `(org-scheduled-today ((,class (:foreground ,default :weight bold))))
  253. `(org-agenda-done ((,class (:foreground ,comment))))
  254. `(org-time-grid ((,class (:foreground ,comment))))
  255. ;; org blocks
  256. `(org-block-begin-line ((,class (:background ,background-green :foreground ,green-light :height 0.9))))
  257. `(org-block-end-line ((,class (:background ,background-green :foreground ,green-light :height 0.9))))
  258. ;; Gnus faces -- from wombat, feel free to improve :)
  259. `(gnus-group-news-1 ((,class (:weight bold :foreground "#95e454"))))
  260. `(gnus-group-news-1-low ((,class (:foreground "#95e454"))))
  261. `(gnus-group-news-2 ((,class (:weight bold :foreground "#cae682"))))
  262. `(gnus-group-news-2-low ((,class (:foreground "#cae682"))))
  263. `(gnus-group-news-3 ((,class (:weight bold :foreground "#ccaa8f"))))
  264. `(gnus-group-news-3-low ((,class (:foreground "#ccaa8f"))))
  265. `(gnus-group-news-4 ((,class (:weight bold :foreground "#99968b"))))
  266. `(gnus-group-news-4-low ((,class (:foreground "#99968b"))))
  267. `(gnus-group-news-5 ((,class (:weight bold :foreground "#cae682"))))
  268. `(gnus-group-news-5-low ((,class (:foreground "#cae682"))))
  269. `(gnus-group-news-low ((,class (:foreground "#99968b"))))
  270. `(gnus-group-mail-1 ((,class (:weight bold :foreground "#95e454"))))
  271. `(gnus-group-mail-1-low ((,class (:foreground "#95e454"))))
  272. `(gnus-group-mail-2 ((,class (:weight bold :foreground "#cae682"))))
  273. `(gnus-group-mail-2-low ((,class (:foreground "#cae682"))))
  274. `(gnus-group-mail-3 ((,class (:weight bold :foreground "#ccaa8f"))))
  275. `(gnus-group-mail-3-low ((,class (:foreground "#ccaa8f"))))
  276. `(gnus-group-mail-low ((,class (:foreground "#99968b"))))
  277. `(gnus-header-content ((,class (:foreground "#8ac6f2"))))
  278. `(gnus-header-from ((,class (:weight bold :foreground "#95e454"))))
  279. `(gnus-header-subject ((,class (:foreground "#cae682"))))
  280. `(gnus-header-name ((,class (:foreground "#8ac6f2"))))
  281. `(gnus-header-newsgroups ((,class (:foreground "#cae682"))))
  282. ;; which-function
  283. `(which-func ((,class (:foreground ,purple))))
  284. ;; diff
  285. `(diff-removed ((,class (:foreground ,default :background ,diff-removed-background))))
  286. `(diff-added ((,class (:foreground ,default :background ,diff-added-background))))
  287. `(diff-hunk-header ((,class (:background ,background-blue :weight bold :foreground ,blue))))
  288. `(diff-file-header ((,class (:weight bold))))
  289. `(diff-header ((,class (:background ,background :foreground ,blue))))
  290. `(diff-context ((,class (:foreground ,default))))
  291. `(diff-refine-added ((,class (:foreground ,grey :background ,diff-added-refined-background))))
  292. `(diff-refine-removed ((,class (:background ,diff-removed-refined-background :foreground ,grey))))
  293. ;; ediff
  294. `(ediff-fine-diff-B ((,class (:foreground ,grey :background ,diff-added-refined-background))))
  295. `(ediff-current-diff-B ((,class (:background ,diff-added-background))))
  296. `(ediff-fine-diff-A ((,class (:background ,diff-removed-refined-background :foreground ,grey))))
  297. `(ediff-current-diff-C ((,class (:background ,diff-current-background))))
  298. `(ediff-fine-diff-C ((,class (:foreground ,grey :background ,diff-current-refined-background))))
  299. `(ediff-even-diff-A ((,class (:background ,highlight :foreground unspecified))))
  300. `(ediff-even-diff-B ((,class (:background ,highlight :foreground unspecified))))
  301. `(ediff-even-diff-C ((,class (:background ,highlight :foreground unspecified))))
  302. `(ediff-odd-diff-A ((,class (:background ,highlight :foreground unspecified))))
  303. `(ediff-odd-diff-B ((,class (:background ,highlight :foreground unspecified))))
  304. `(ediff-odd-diff-C ((,class (:background ,highlight :foreground unspecified))))
  305. ;; ivy
  306. `(ivy-current-match ((,class (:background ,background-purple :weight bold :foreground ,purple))))
  307. `(ivy-minibuffer-match-face-1 ((,class (:foreground ,orange))))
  308. `(ivy-minibuffer-match-face-2 ((,class (:foreground ,green))))
  309. `(ivy-minibuffer-match-face-3 ((,class (:foreground ,orange))))
  310. `(ivy-minibuffer-match-face-4 ((,class (:foreground ,green))))
  311. `(ivy-match-required-face ((,class (:foreground ,red :background ,background-red :weight bold))))
  312. `(ivy-remote ((,class (:foreground ,blue))))
  313. ;; helm
  314. `(helm-candidate-number ((,class (:weight bold))))
  315. `(helm-header-line-left-margin ((,class (:weight bold :foreground ,red))))
  316. `(helm-source-header ((,class (:height 1.2 :weight bold :foreground ,blue :background ,background-blue))))
  317. `(helm-selection ((,class (:background ,background-lighter))))
  318. `(helm-match ((,class (:foreground ,purple :background ,background-purple :weight bold))))
  319. `(helm-match-item ((,class (:inherit isearch))))
  320. `(helm-M-x-key ((,class (:foreground ,blue :weight bold :background ,background-blue))))
  321. `(helm-visible-mark ((,class (:weight bold :foreground ,orange :background ,background-darker))))
  322. `(helm-prefarg ((,class (:weight bold :foreground ,red :background ,background-red))))
  323. `(helm-separator ((,class (:weight bold :foreground , blue))))
  324. `(helm-grep-file ((,class ())))
  325. `(helm-grep-finish ((,class (:foreground ,green))))
  326. `(helm-grep-running ((,class (:foreground ,red))))
  327. `(helm-grep-lineno ((,class (:foreground ,blue))))
  328. `(helm-grep-match ((,class (:foreground ,purple :background ,background-purple :weight bold))))
  329. `(helm-moccur-buffer ((,class ())))
  330. `(helm-buffer-directory ((,class (:foreground ,purple))))
  331. `(helm-buffer-file ((,class ())))
  332. `(helm-buffer-process ((,class (:foreground ,purple))))
  333. `(helm-buffer-size ((,class (:foreground ,blue))))
  334. `(helm-buffer-saved-out ((,class (:foreground ,red :weight bold))))
  335. `(helm-ff-directory ((,class (:foreground ,purple))))
  336. `(helm-ff-dotted-directory ((,class (:foreground ,purple))))
  337. `(helm-ff-prefix ((,class (:weight bold :foreground ,red))))
  338. `(helm-ff-file ((,class ())))
  339. `(helm-ff-executable ((,class (:foreground ,green :weight bold :background ,background-green))))
  340. `(helm-ff-symlink ((,class (:foreground ,orange))))
  341. `(helm-ff-invalid-symlink ((,class (:foreground ,red :weight bold :background ,background-red))))
  342. `(helm-history-deleted ((,class (:foreground ,red :weight bold :background ,background-red))))
  343. ;; visible mark
  344. `(visible-mark-face1 ((,class (:foreground ,orange-light :inverse-video t))))
  345. `(visible-mark-face2 ((,class (:foreground ,peach :inverse-video t))))
  346. ;; show-paren
  347. `(show-paren-match ((,class (:background ,blue-dark))))
  348. ;; clojure
  349. `(clojure-keyword-face ((,class (:inherit font-lock-builtin-face))))
  350. ;; ledger
  351. `(ledger-font-report-clickable-face ((,class (:foreground ,blue))))
  352. `(ledger-font-posting-amount-face ((,class (:foreground ,purple))))
  353. `(ledger-font-posting-date-face ((,class (:foreground ,blue :background ,background-blue :box 1))))
  354. `(ledger-font-payee-uncleared-face ((,class (:foreground ,default :weight bold))))
  355. `(ledger-font-payee-cleared-face ((,class (:foreground ,green :weight bold))))
  356. `(ledger-font-posting-account-face ((,class (:foreground ,default))))
  357. `(ledger-font-posting-account-pending-face ((,class (:foreground ,red))))
  358. `(ledger-font-xact-highlight-face ((,class (:background ,background-darker))))
  359. `(ledger-font-other-face ((,class (:inherit ,font-lock-comment-face))))
  360. `(ledger-font-periodic-xact-face ((,class (:foreground ,orange))))
  361. `(diff-hl-change ((,class (:foreground ,purple :background ,background-purple))))
  362. `(diff-hl-delete ((,class (:foreground ,red :background ,background-red))))
  363. `(diff-hl-insert ((,class (:foreground ,green :background ,background-green))))
  364. `(term-color-black ((,class (:foreground ,default :background ,background-darker))))
  365. `(term-color-red ((,class (:foreground ,red :background ,background-red))))
  366. `(term-color-green ((,class (:foreground ,green :background ,background-green))))
  367. `(term-color-yellow ((,class (:foreground ,orange :background ,background-orange))))
  368. `(term-color-blue ((,class (:foreground ,blue :background ,background-blue))))
  369. `(term-color-magenta ((,class (:foreground ,purple :background ,background-purple))))
  370. `(term-color-cyan ((,class (:foreground ,blue-dark))))
  371. `(term-color-white ((,class (:foreground ,grey))))
  372. `(term ((,class (:foreground ,default :background ,background))))
  373. `(term-default-fg-color ((,class (:inherit term-color-white))))
  374. `(term-default-bg-color ((,class (:inherit term-color-black))))
  375. `(avy-lead-face ((,class :foreground ,red :background ,background-red)))
  376. `(avy-lead-face-0 ((,class :foreground ,purple :background ,background-purple)))
  377. `(avy-lead-face-1 ((,class :foreground ,blue :background ,background-blue)))
  378. `(avy-lead-face-2 ((,class :foreground ,green :background ,background-green)))
  379. `(erc-nick-default-face ((,class :foreground ,blue :background ,background-blue :weight bold)))
  380. `(erc-current-nick-face ((,class :foreground ,red :weight bold :background ,background-red)))
  381. `(erc-my-nick-face ((,class :foreground ,red :weight bold :background ,background-red)))
  382. `(erc-notice-face ((,class :foreground ,comment)))
  383. `(erc-input-face ((,class :foreground ,default :weight bold)))
  384. `(erc-prompt-face ((,class :foreground ,purple :background ,background-purple :weight bold :box 1)))
  385. `(erc-timestamp-face ((,class :foreground ,purple :weight bold)))
  386. `(hydra-face-red ((,class :foreground ,red :weight bold)))
  387. `(hydra-face-blue ((,class :foreground ,blue :weight bold)))
  388. ;; elfeed
  389. `(elfeed-search-date-face ((,class (:foreground ,blue))))
  390. `(elfeed-search-feed-face ((,class (:foreground ,blue))))
  391. `(elfeed-search-tag-face ((,class (:foreground ,green))))
  392. `(elfeed-search-title-face ((,class (:foreground ,purple))))
  393. ;; wgrep
  394. `(wgrep-face ((,class (:foreground ,orange))))
  395. `(wgrep-reject-face ((,class (:foreground ,red :weight bold :background ,background-red))))
  396. `(wgrep-done-face ((,class (:foreground ,blue :weight bold))))
  397. )
  398. (custom-theme-set-variables
  399. 'zerodark
  400. `(ansi-color-names-vector [,background
  401. ,red
  402. ,green
  403. ,orange
  404. ,blue
  405. ,purple
  406. ,blue-dark
  407. ,default])))
  408. ;;;###autoload
  409. (when (and (boundp 'custom-theme-load-path) load-file-name)
  410. (add-to-list 'custom-theme-load-path
  411. (file-name-as-directory (file-name-directory load-file-name))))
  412. (provide-theme 'zerodark)
  413. ;; Local Variables:
  414. ;; no-byte-compile: t
  415. ;; End:
  416. ;;; zerodark-theme.el ends here