-
Notifications
You must be signed in to change notification settings - Fork 0
/
hanami-theme.el
125 lines (112 loc) · 5.62 KB
/
hanami-theme.el
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
;; hanami-theme.el --- A kawaii theme that reminds you of sakura
;; Author: Dereck Smith Elijah
;; URL: https://github.com/ridiculouswaffle/hanami-emacs
;; Version: 0.1
;; Package-Requires: ((emacs "24"))
;; Keywords: themes
;; License: BSD 2-clause
;; This file is not part of GNU Emacs
;;; Commentary:
;;; Hanami is a kawaii theme that reminds you of sakura.
;;; Code:
(deftheme hanami
"A kawaii theme that reminds you of sakura (and Sakura)")
(let ((background "#22172d")
(foreground "#f4e3ef")
(pink "#fc9fe1")
(purple "#e89ffc")
(red "#fc9fb3")
(darkred "#ce8494")
(blue "#9fc2fc")
(green "#91cc8a")
(darkgreen "#648960")
(yellow "#dae28e")
(darkyellow "#babf8b")
(lightpink "#4a2d4f")
(lighterpink "#56355b")
(lightestpink "#ad66a5")
(darkpink "#361d3f"))
(custom-theme-set-faces
'hanami
;; Emacs UI faces...
`(default ((t (:background ,background :foreground ,foreground))))
`(fringe ((t (:background ,background))))
`(region ((t (:background ,lighterpink))))
`(link ((t (:foreground ,pink :slant italic))))
`(highlight ((t (:background ,lighterpink))))
`(mode-line ((t (:background ,lighterpink))))
`(header-line ((t (:background ,lighterpink))))
`(mode-line-inactive ((t (:background ,lightpink))))
`(custom-button ((t (:background ,lighterpink))))
`(cursor ((t (:background ,pink))))
`(match ((t (:background ,lightpink))))
`(show-paren-match ((t (:background ,lightpink))))
`(show-paren-match-expression ((t (:background ,lightpink))))
`(show-paren-mismatch ((t (:background ,red))))
`(isearch-group-1 ((t (:background ,lightpink))))
`(isearch-group-2 ((t (:background ,lighterpink))))
`(isearch-fail ((t (:background ,red))))
`(lazy-highlight ((t (:background ,lighterpink))))
`(minibuffer-prompt ((t (:foreground ,pink))))
`(vertical-border ((t (:foreground ,pink))))
`(hl-line ((t (:background ,darkpink))))
`(line-number ((t (:foreground ,lightestpink))))
`(line-number-current-line ((t (:background ,darkpink :foreground ,pink))))
`(error ((t (:foreground ,red))))
`(warning ((t (:foreground ,yellow))))
`(help-key-binding ((t (:background ,lightpink :foreground ,pink))))
`(widget-field ((t (:background ,lightpink :foreground ,foreground))))
;; Font lock faces...
`(font-lock-keyword-face ((t (:foreground ,pink :slant italic))))
`(font-lock-string-face ((t (:foreground ,green))))
`(font-lock-comment-face ((t (:foreground ,lightestpink :slant italic))))
`(font-lock-builtin-face ((t (:foreground ,blue))))
`(font-lock-constant-face ((t (:foreground ,blue))))
`(font-lock-type-face ((t (:foreground ,blue))))
`(font-lock-function-name-face ((t (:foreground ,purple))))
`(font-lock-function-call-face ((t (:foreground ,purple))))
`(font-lock-variable-name-face ((t (:foreground ,yellow))))
`(font-lock-variable-call-face ((t (:foreground ,yellow))))
;; ANSI colors, used in terminal emulators such as VTerm, Eat and eshell/ansi-term/term
`(ansi-color-black ((t (:background ,background :foreground ,background))))
`(ansi-color-white ((t (:background ,foreground :foreground ,foreground))))
`(ansi-color-red ((t (:background ,red :foreground ,red))))
`(ansi-color-yellow ((t (:background ,yellow :foreground ,yellow))))
`(ansi-color-blue ((t (:background ,blue :foreground ,blue))))
`(ansi-color-cyan ((t (:background ,blue :foreground ,blue))))
`(ansi-color-magenta ((t (:background ,purple :foreground ,purple))))
`(ansi-color-green ((t (:background ,green :foreground ,green))))
`(ansi-color-invert ((t (:background ,foreground :foreground ,background))))
`(ansi-color-bright-black ((t (:background ,background :foreground ,background))))
`(ansi-color-bright-white ((t (:background ,foreground :foreground ,foreground))))
`(ansi-color-bright-red ((t (:background ,red :foreground ,red))))
`(ansi-color-bright-yellow ((t (:background ,yellow :foreground ,yellow))))
`(ansi-color-bright-blue ((t (:background ,blue :foreground ,blue))))
`(ansi-color-bright-cyan ((t (:background ,blue :foreground ,blue))))
`(ansi-color-bright-magenta ((t (:background ,purple :foreground ,purple))))
`(ansi-color-bright-green ((t (:background ,green :foreground ,green))))
;; Diff colors, the version control one
`(diff-added ((t (:background ,darkgreen :foreground ,foreground))))
`(diff-indicator-changed ((t (:foreground ,yellow))))
`(diff-refine-added ((t (:background ,darkgreen :foreground ,foreground))))
`(diff-refine-changed ((t (:background ,darkyellow :foreground ,foreground))))
`(diff-refine-removed ((t (:background ,darkred :foreground ,foreground))))
`(diff-error ((t (:background ,background :foreground ,red))))
;; Orderless
`(orderless-match-face-0 ((t (:foreground ,pink))))
`(orderless-match-face-1 ((t (:foreground ,purple))))
`(orderless-match-face-2 ((t (:foreground ,blue))))
`(orderless-match-face-3 ((t (:foreground ,yellow))))
;; Corfu
`(corfu-default ((t (:background ,lightpink :foreground ,foreground))))
`(corfu-current ((t (:background ,lighterpink :foreground ,foreground))))
`(corfu-bar ((t (:background ,pink :foreground ,pink))))
;; Company
`(company-tooltip ((t (:background ,lightpink :foreground ,foreground))))
`(company-tooltip-selection ((t (:background ,lighterpink :foreground ,foreground))))
`(company-tooltip-common ((t (:foreground ,pink))))
`(company-preview ((t (:foreground ,foreground))))
`(company-scrollbar-bg ((t (:background ,lighterpink))))
`(company-scrollbar-fg ((t (:background ,lightestpink))))))
(provide-theme 'hanami)
;;; hanami.el ends here