doom-emacs/.config/doom/themes/la-ninpre-theme.el (view raw)
1;;; la-ninpre-theme.el --- color theme by la-ninpre -*- lexical-binding: t; no-byte-compile: t; -*-
2
3;; Author: la-ninpre
4;; Maintainer: la-ninpre
5;; Version: 0.1
6
7;;; Commentary:
8
9;; custom color theme by la-ninpre.
10;; part of the code is taken from `doom-tomorrow-night' theme.
11;; all colors are set by la-ninpre.
12
13;;; Code:
14
15(require 'doom-themes)
16
17(defgroup la-ninpre-theme nil
18 "Options for the `la-ninpre' theme."
19 :group 'doom-themes)
20
21(defcustom la-ninpre-padded-modeline doom-themes-padded-modeline
22 "If non-nil, adds a 4px padding to the mode-line. Can be an integer
23to deremine the exact padding"
24 :group 'la-ninpre-theme
25 :type '(choice integer boolean))
26
27(def-doom-theme la-ninpre
28 "Color theme by la-ninpre."
29
30 ;; bg gui 256 16
31 ((bg '("#19191a" nil nil))
32 (bg-alt '("#141414" nil nil))
33 (base0 '("#232324" "black" "black"))
34 (base1 '("#363638" "#363638" ))
35 (base2 '("#3f3f42" "#3f3f42" ))
36 (base3 '("#49494c" "#49494c" "brightblack"))
37 (base4 '("#535356" "#535356" "brightblack"))
38 (base5 '("#66666a" "#66666a" "brightblack"))
39 (base6 '("#ceced2" "#ceced2" "brightblack"))
40 (base7 '("#d3d3d7" "#d3d3d7" "brightblack"))
41 (base8 '("#dddde1" "#dddde1" "white"))
42 (fg '("#cadcde" "#cadcde" "white"))
43 (fg-alt (doom-darken fg 0.4))
44
45 (grey '("#393838" "#393838" "brightblack"))
46 (red '("#ed7c68" "#ed7c68" "red"))
47 (orange '("#f9a776" "#f9a776" "brightred"))
48 (yellow '("#ffdb9d" "#ffdb9d" "yellow"))
49 (green '("#c7ea76" "#c7ea76" "green"))
50 (teal '("#7f9848" "#7f9848" "teal"))
51 (blue '("#a6d5fe" "#a6d5fe" "brightblue"))
52 (dark-blue '("#4e96d5" "#4e96d5" "blue"))
53 (violet '("#edbbe9" "#edbbe9" "brightmagenta"))
54 (magenta '("#bc5fa7" "#edbbe9" "magenta"))
55 (dark-cyan '("#7fe2c5" "#7fe2c5" "cyan"))
56 (cyan '("#55b795" "#55b795" "brightcyan"))
57
58 (highlight blue)
59 (vertical-bar base0)
60 (selection `(,(car (doom-lighten bg 0.1)) ,@(cdr base4)))
61 (builtin blue)
62 (comments grey)
63 (doc-comments (doom-lighten grey 0.14))
64 (constants orange)
65 (functions blue)
66 (keywords violet)
67 (methods blue)
68 (operators fg)
69 (type yellow)
70 (strings green)
71 (variables red)
72 (numbers orange)
73 (region selection)
74 (error red)
75 (warning yellow)
76 (success green)
77 (vc-modified fg-alt)
78 (vc-added green)
79 (vc-deleted red)
80
81 ;; custom categories
82 (modeline-bg `(,(doom-darken (car bg-alt) 0.3) ,@(cdr base3)))
83 (modeline-bg-alt `(,(car bg) ,@(cdr base1)))
84 (modeline-fg base8)
85 (modeline-fg-alt comments)
86 (-modeline-pad
87 (when la-ninpre-padded-modeline
88 (if (integerp la-ninpre-padded-modeline)
89 la-ninpre-padded-modeline
90 4))))
91
92 ;; --- faces ------------------------------
93 (((line-number &override) :foreground base4)
94 ((line-number-current-line &override) :foreground blue :bold bold)
95 (mode-line
96 :background modeline-bg :foreground modeline-fg
97 :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg)))
98 (mode-line-inactive
99 :background modeline-bg-alt :foreground modeline-fg-alt
100 :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-alt)))
101
102 ;;;; rainbow-delimiters
103 (rainbow-delimiters-depth-1-face :foreground violet)
104 (rainbow-delimiters-depth-2-face :foreground blue)
105 (rainbow-delimiters-depth-3-face :foreground orange)
106 (rainbow-delimiters-depth-4-face :foreground green)
107 (rainbow-delimiters-depth-5-face :foreground magenta)
108 (rainbow-delimiters-depth-6-face :foreground yellow)
109 (rainbow-delimiters-depth-7-face :foreground teal)
110 ;;;; doom-modeline
111 (doom-modeline-buffer-path :foreground violet :bold bold)
112 (doom-modeline-buffer-major-mode :inherit 'doom-modeline-buffer-path))
113
114 ;; --- variables --------------------------
115 ;; ()
116 )
117
118;;; la-ninpre-theme.el ends here