diff options
-rw-r--r-- | emacs.d/bob-theme.el | 171 |
1 files changed, 171 insertions, 0 deletions
diff --git a/emacs.d/bob-theme.el b/emacs.d/bob-theme.el new file mode 100644 index 0000000..63c84db --- /dev/null +++ b/emacs.d/bob-theme.el | |||
@@ -0,0 +1,171 @@ | |||
1 | ;;; bob-theme -*- lexical-binding: t; -*- | ||
2 | ;; a little windows-y theme by acdw | ||
3 | ;; (and named by, idk, Bill Gates? who can say truly) | ||
4 | |||
5 | (deftheme bob | ||
6 | "A little windows-y theme by acdw" | ||
7 | :background-mode 'light) | ||
8 | |||
9 | ;; (custom-theme-set-variables 'bob) | ||
10 | |||
11 | (defvar fclear | ||
12 | '((t ())) | ||
13 | "Specification to clear a given face.") | ||
14 | |||
15 | (defface bob-prompt '((t (:weight bold))) | ||
16 | "A face for prompts.") | ||
17 | |||
18 | (defface bob-input-field '((t ( :background "white" | ||
19 | :box (:line-width (1 . -1))))) | ||
20 | "A face for input fields.") | ||
21 | |||
22 | (custom-theme-set-faces | ||
23 | 'bob | ||
24 | ;; Default | ||
25 | '(default ((t ( :foreground "black" | ||
26 | :background "#c0c0c0")))) | ||
27 | |||
28 | ;; Font lock -- clear | ||
29 | `(font-lock-bracket-face ,fclear) | ||
30 | `(font-lock-builtin-face ,fclear) | ||
31 | ;; `(font-lock-comment-delimiter-face ,fclear) | ||
32 | ;; `(font-lock-comment-face ,fclear) | ||
33 | `(font-lock-constant-face ,fclear) | ||
34 | `(font-lock-delimiter-face ,fclear) | ||
35 | ;; `(font-lock-doc-face ,fclear) | ||
36 | `(font-lock-doc-markup-face ,fclear) | ||
37 | `(font-lock-escape-face ,fclear) | ||
38 | `(font-lock-function-call-face ,fclear) | ||
39 | `(font-lock-function-name-face ,fclear) | ||
40 | ;; `(font-lock-keyword-face ,fclear) | ||
41 | `(font-lock-misc-punctuation-face ,fclear) | ||
42 | `(font-lock-negation-char-face ,fclear) | ||
43 | `(font-lock-number-face ,fclear) | ||
44 | `(font-lock-operator-face ,fclear) | ||
45 | `(font-lock-preprocessor-face ,fclear) | ||
46 | `(font-lock-property-name-face ,fclear) | ||
47 | `(font-lock-property-use-face ,fclear) | ||
48 | `(font-lock-punctuation-face ,fclear) | ||
49 | `(font-lock-regexp-face ,fclear) | ||
50 | `(font-lock-regexp-grouping-backslash ,fclear) | ||
51 | `(font-lock-regexp-grouping-construct ,fclear) | ||
52 | `(font-lock-string-face ,fclear) | ||
53 | `(font-lock-type-face ,fclear) | ||
54 | `(font-lock-variable-name-face ,fclear) | ||
55 | `(font-lock-variable-use-face ,fclear) | ||
56 | `(font-lock-warning-face ,fclear) | ||
57 | |||
58 | ;; Font lock | ||
59 | '(font-lock-comment-delimiter-face ((t (:slant italic)))) | ||
60 | '(font-lock-comment-face ((t (:slant italic)))) | ||
61 | '(font-lock-doc-face ((t (:slant italic)))) | ||
62 | '(font-lock-keyword-face ((t (:weight bold)))) | ||
63 | |||
64 | ;; Propertized text | ||
65 | '(bold ((t (:weight bold)))) | ||
66 | '(error ((t (:foreground "red" :slant italic)))) | ||
67 | '(highlight ((t (:background "yellow")))) | ||
68 | '(isearch ((t (:background "yellow")))) | ||
69 | '(isearch-fail ((t (:inherit error)))) | ||
70 | '(italic ((t (:slant italic)))) | ||
71 | '(lazy-highlight ((t (:background "#808080")))) | ||
72 | '(link ((t (:foreground "000080" :underline t)))) | ||
73 | '(match ((t (:background "yellow")))) | ||
74 | '(pulse-highlight-start-face ((t (:background "#000080")))) | ||
75 | '(query-replace ((t (:background "yellow")))) | ||
76 | '(region ((t (:background "#808080")))) | ||
77 | '(shadow ((t (:foreground "#808080")))) | ||
78 | '(show-paren-match ((t (:background "yellow")))) | ||
79 | '(show-paren-mismatch ((t (:foreground "red" :slant italic)))) | ||
80 | '(success ((t (:foreground "#808080" :slant italic)))) | ||
81 | '(trailing-whitespace ((t (:background "red")))) | ||
82 | '(underline ((t (:underline t)))) | ||
83 | '(warning ((t (:foreground "yellow" :slant italic)))) | ||
84 | |||
85 | ;; User interface | ||
86 | '(completions-annotations ((t (:inherit 'italic)))) | ||
87 | '(completions-highlight ((t (:background "yellow")))) | ||
88 | '(fringe ((t ()))) | ||
89 | '(header-line ((t ( :foreground "white" :background "#808080" | ||
90 | :inherit variable-pitch)))) | ||
91 | '(minibuffer-prompt ((t (:inherit bob-prompt)))) | ||
92 | '(mode-line ((t (:background "#808080" :inherit variable-pitch)))) | ||
93 | '(mode-line-active ((t ( :foreground "white" :background "#000080" | ||
94 | :inherit mode-line)))) | ||
95 | '(mode-line-inactive ((t ( :box "#808080" :background "#808080" | ||
96 | :inherit mode-line)))) | ||
97 | '(tab-bar ((t ( :background "#008080" :foreground "white")))) | ||
98 | '(tab-bar-tab ((t (:weight bold :underline t)))) | ||
99 | '(tab-bar-tab-inactive ((t ()))) | ||
100 | '(vertical-border ((t (:foreground "gray")))) | ||
101 | |||
102 | ;;; Specific modes &c | ||
103 | ;; Dired | ||
104 | '(dired-header ((t (:underline t :extend t)))) | ||
105 | ;; Elastic indent | ||
106 | '(elastic-indent ((t ()))) | ||
107 | ;; Eshell | ||
108 | '(eshell-prompt ((t (:inherit bob-prompt)))) | ||
109 | ;; Eww | ||
110 | '(eww-form-text ((t (:inherit bob-input-field)))) | ||
111 | ;; Gemtext mode | ||
112 | '(gemtext-face-heading1 ((t ( :weight bold | ||
113 | :inherit variable-pitch)))) | ||
114 | '(gemtext-face-heading2 ((t ( :weight bold | ||
115 | :inherit variable-pitch)))) | ||
116 | '(gemtext-face-heading3 ((t ( :weight bold | ||
117 | :inherit variable-pitch)))) | ||
118 | ;; Info | ||
119 | '(info-title-1 ((t (:inherit variable-pitch)))) | ||
120 | '(info-title-2 ((t (:inherit variable-pitch)))) | ||
121 | '(info-title-3 ((t (:inherit variable-pitch)))) | ||
122 | '(info-title-4 ((t (:inherit variable-pitch)))) | ||
123 | ;; Jabber | ||
124 | '(jabber-activity-face ((t (:inherit italic)))) | ||
125 | '(jabber-activity-personal-face ((t (:inherit rcirc-track-nick)))) | ||
126 | '(jabber-chat-error ((t (:inherit error)))) | ||
127 | '(jabber-chat-prompt-foreign ((t (:inherit bob-prompt)))) | ||
128 | '(jabber-chat-prompt-local ((t (:inherit bob-prompt)))) | ||
129 | '(jabber-chat-prompt-system ((t (:inherit bob-prompt)))) | ||
130 | '(jabber-chat-text-foreign ((t (:inherit default)))) | ||
131 | '(jabber-chat-text-local ((t (:inherit default)))) | ||
132 | '(jabber-muc-presence-dim ((t (:inherit shadow)))) | ||
133 | '(jabber-rare-time-face ((t (:inherit shadow)))) | ||
134 | '(jabber-title-large ((t (:inherit (variable-pitch outline-1))))) | ||
135 | '(jabber-title-medium ((t (:inherit (variable-pitch outline-2))))) | ||
136 | '(jabber-title-small ((t (:inherit (variable-pitch outline-3))))) | ||
137 | ;; Outline | ||
138 | '(outline-1 ((t (:inherit (bold underline italic) :extend t)))) | ||
139 | '(outline-2 ((t (:inherit (bold underline))))) | ||
140 | '(outline-3 ((t (:inherit (italic underline))))) | ||
141 | '(outline-3 ((t (:inherit (italic underline))))) | ||
142 | '(outline-4 ((t (:inherit (italic underline))))) | ||
143 | '(outline-5 ((t (:inherit (italic underline))))) | ||
144 | '(outline-6 ((t (:inherit (italic underline))))) | ||
145 | '(outline-7 ((t (:inherit (italic underline))))) | ||
146 | '(outline-8 ((t (:inherit (italic underline))))) | ||
147 | ;; Org | ||
148 | '(org-document-info-keyword ((t (:inherit default)))) | ||
149 | '(org-document-info ((t (:foreground "000080")))) | ||
150 | '(org-document-title ((t (:inherit org-document-info)))) | ||
151 | '(org-drawer ((t (:inherit font-lock-comment-face)))) | ||
152 | ;; RCIRC | ||
153 | '(rcirc-my-nick ((t (:weight bold :slant italic)))) | ||
154 | '(rcirc-nick-in-message ((t (:weight bold :slant italic)))) | ||
155 | '(rcirc-other-nick ((t (:slant italic)))) | ||
156 | '(rcirc-prompt ((t (:inherit bob-prompt)))) | ||
157 | '(rcirc-timestamp ((t (:inherit shadow)))) | ||
158 | '(rcirc-server ((t (:inherit shadow)))) | ||
159 | '(rcirc-track-nick ((t (:weight bold :slant italic :inverse-video nil)))) | ||
160 | ;; Sh | ||
161 | '(sh-heredoc ((t ( :foreground "000080" :extend t | ||
162 | :inherit font-lock-string-face)))) | ||
163 | '(sh-quoted-exec ((t ()))) | ||
164 | ;; Widgets | ||
165 | '(widget-field ((t (:inherit bob-input-field)))) | ||
166 | '(widget-single-line-field ((t (:inherit bob-input-field)))) | ||
167 | ;; Whitespace-mode | ||
168 | '(whitespace-tab ((t (:foreground "#808080")))) | ||
169 | ) | ||
170 | |||
171 | (provide-theme 'bob) | ||