1use ratatui::style::Color;
2
3#[derive(Debug, Clone, Copy)]
8pub struct Theme {
9 pub name: &'static str,
10 #[allow(dead_code)]
11 pub bg: Color,
12 pub fg: Color,
13 pub keyword: Color,
14 pub string: Color,
15 pub comment: Color,
16 pub number: Color,
17 pub type_name: Color,
18 pub function: Color,
19 pub macro_name: Color,
20 pub namespace: Color,
21 pub parameter: Color,
22 pub property: Color,
23 pub constant: Color,
24 pub operator: Color,
25 pub punctuation: Color,
26 pub line_no: Color,
27 pub editor_bg: Color,
28 pub status_bg: Color,
29 pub status_fg: Color,
30 pub border: Color,
31 pub selection_bg: Color,
32 pub search_bg: Color,
33 pub mode_normal: Color,
34 pub mode_insert: Color,
35 pub mode_visual: Color,
36 pub mode_xlc: Color,
37 pub completion_bg: Color,
38 pub completion_selected: Color,
39 pub completion_border: Color,
40 pub explorer_bg: Color,
41 pub explorer_fg: Color,
42 pub explorer_dir: Color,
43 pub explorer_selected: Color,
44 pub terminal_bg: Color,
45 #[allow(dead_code)]
46 pub terminal_fg: Color,
47 #[allow(dead_code)]
48 pub terminal_prompt: Color,
49 pub xlc_bg: Color,
50 pub xlc_fg: Color,
51 pub xlc_prompt: Color,
52 pub xlc_border: Color,
53 pub cursor: Color,
54 pub accent: Color,
57 pub accent_fg: Color,
59 pub muted: Color,
61 pub success: Color,
63 pub warning: Color,
65 pub error: Color,
67 pub panel_bg: Color,
69 pub panel_border: Color,
70 pub panel_sel_bg: Color,
72 pub panel_sel_fg: Color,
73 pub mode_git: Color,
75 pub mode_term: Color,
76 pub mode_preview: Color,
77 pub mode_settings: Color,
78 pub mode_search: Color,
79 pub mode_find: Color,
80 pub git_add_bg: Color,
82 pub git_del_bg: Color,
83 pub git_hunk: Color,
84}
85
86static THEMES: &[Theme] = &[OCEAN, MONOKAI, NORD, SOLARIZED, GRUVBOX, EVERFOREST, SAKURA, NEWSPAPER, MONO, MONO_DARK];
87
88pub fn all_themes() -> &'static [Theme] {
89 THEMES
90}
91
92pub fn find(name: &str) -> Option<&'static Theme> {
93 THEMES
94 .iter()
95 .find(|t| t.name.to_lowercase() == name.to_lowercase())
96}
97
98pub static OCEAN: Theme = Theme {
100 name: "ocean",
101 bg: Color::Rgb(15, 17, 26),
102 fg: Color::Rgb(200, 210, 220),
103 keyword: Color::Rgb(0, 220, 255),
104 string: Color::Rgb(150, 230, 180),
105 comment: Color::Rgb(96, 108, 122),
106 number: Color::Rgb(255, 180, 130),
107 type_name: Color::Rgb(100, 200, 255),
108 function: Color::Rgb(255, 220, 120),
109 macro_name: Color::Rgb(255, 160, 220),
110 namespace: Color::Rgb(140, 180, 255),
111 parameter: Color::Rgb(200, 180, 140),
112 property: Color::Rgb(130, 210, 200),
113 constant: Color::Rgb(255, 180, 100),
114 operator: Color::Rgb(180, 190, 200),
115 punctuation: Color::Rgb(120, 130, 150),
116 line_no: Color::Rgb(82, 92, 114),
117 editor_bg: Color::Rgb(15, 17, 26),
118 status_bg: Color::Rgb(10, 12, 20),
119 status_fg: Color::Rgb(180, 190, 200),
120 border: Color::Rgb(58, 66, 88),
121 selection_bg: Color::Rgb(52, 66, 110),
122 search_bg: Color::Rgb(104, 88, 26),
123 mode_normal: Color::Rgb(60, 100, 200),
124 mode_insert: Color::Rgb(60, 180, 80),
125 mode_visual: Color::Rgb(180, 80, 200),
126 mode_xlc: Color::Rgb(0, 180, 200),
127 completion_bg: Color::Rgb(25, 28, 38),
128 completion_selected: Color::Rgb(0, 220, 255),
129 completion_border: Color::Rgb(0, 220, 255),
130 explorer_bg: Color::Rgb(12, 14, 22),
131 explorer_fg: Color::Rgb(190, 200, 210),
132 explorer_dir: Color::Rgb(100, 150, 255),
133 explorer_selected: Color::Rgb(0, 220, 255),
134 terminal_bg: Color::Rgb(8, 12, 8),
135 terminal_fg: Color::Rgb(180, 255, 180),
136 terminal_prompt: Color::Green,
137 xlc_bg: Color::Rgb(18, 20, 28),
138 xlc_fg: Color::Gray,
139 xlc_prompt: Color::Green,
140 xlc_border: Color::Rgb(0, 220, 255),
141 cursor: Color::Rgb(200, 200, 220),
142 accent: Color::Rgb(70, 130, 200),
143 accent_fg: Color::Rgb(0, 0, 0),
144 muted: Color::Rgb(100, 110, 130),
145 success: Color::Rgb(100, 200, 140),
146 warning: Color::Rgb(220, 180, 80),
147 error: Color::Rgb(240, 120, 120),
148 panel_bg: Color::Rgb(25, 28, 38),
149 panel_border: Color::Rgb(70, 130, 200),
150 panel_sel_bg: Color::Rgb(45, 70, 100),
151 panel_sel_fg: Color::Rgb(230, 235, 255),
152 mode_git: Color::Rgb(80, 200, 140),
153 mode_term: Color::Rgb(80, 200, 120),
154 mode_preview: Color::Rgb(140, 190, 255),
155 mode_settings: Color::Rgb(160, 150, 220),
156 mode_search: Color::Rgb(230, 200, 80),
157 mode_find: Color::Rgb(100, 180, 255),
158 git_add_bg: Color::Rgb(20, 40, 28),
159 git_del_bg: Color::Rgb(45, 22, 24),
160 git_hunk: Color::Rgb(100, 180, 255),
161};
162
163pub static MONOKAI: Theme = Theme {
165 name: "monokai",
166 bg: Color::Rgb(39, 40, 34),
167 fg: Color::Rgb(248, 248, 242),
168 keyword: Color::Rgb(249, 38, 114),
169 string: Color::Rgb(230, 219, 116),
170 comment: Color::Rgb(117, 113, 94),
171 number: Color::Rgb(174, 129, 255),
172 type_name: Color::Rgb(166, 226, 46),
173 function: Color::Rgb(166, 226, 46),
174 macro_name: Color::Rgb(102, 217, 239),
175 namespace: Color::Rgb(174, 129, 255),
176 parameter: Color::Rgb(253, 151, 31),
177 property: Color::Rgb(248, 248, 242),
178 constant: Color::Rgb(174, 129, 255),
179 operator: Color::Rgb(249, 38, 114),
180 punctuation: Color::Rgb(117, 113, 94),
181 line_no: Color::Rgb(80, 80, 70),
182 editor_bg: Color::Rgb(39, 40, 34),
183 status_bg: Color::Rgb(30, 31, 26),
184 status_fg: Color::Rgb(200, 200, 195),
185 border: Color::Rgb(70, 70, 60),
186 selection_bg: Color::Rgb(70, 65, 55),
187 search_bg: Color::Rgb(100, 90, 40),
188 mode_normal: Color::Rgb(102, 217, 239),
189 mode_insert: Color::Rgb(166, 226, 46),
190 mode_visual: Color::Rgb(174, 129, 255),
191 mode_xlc: Color::Rgb(249, 38, 114),
192 completion_bg: Color::Rgb(45, 46, 40),
193 completion_selected: Color::Rgb(249, 38, 114),
194 completion_border: Color::Rgb(249, 38, 114),
195 explorer_bg: Color::Rgb(32, 33, 28),
196 explorer_fg: Color::Rgb(240, 240, 235),
197 explorer_dir: Color::Rgb(102, 217, 239),
198 explorer_selected: Color::Rgb(249, 38, 114),
199 terminal_bg: Color::Rgb(30, 31, 26),
200 terminal_fg: Color::Rgb(230, 219, 116),
201 terminal_prompt: Color::Rgb(166, 226, 46),
202 xlc_bg: Color::Rgb(35, 36, 30),
203 xlc_fg: Color::Rgb(180, 180, 170),
204 xlc_prompt: Color::Rgb(166, 226, 46),
205 xlc_border: Color::Rgb(249, 38, 114),
206 cursor: Color::Rgb(248, 248, 242),
207 accent: Color::Rgb(249, 38, 114),
208 accent_fg: Color::Rgb(0, 0, 0),
209 muted: Color::Rgb(117, 113, 94),
210 success: Color::Rgb(166, 226, 46),
211 warning: Color::Rgb(253, 151, 31),
212 error: Color::Rgb(249, 38, 114),
213 panel_bg: Color::Rgb(45, 46, 40),
214 panel_border: Color::Rgb(249, 38, 114),
215 panel_sel_bg: Color::Rgb(70, 45, 55),
216 panel_sel_fg: Color::Rgb(248, 248, 242),
217 mode_git: Color::Rgb(166, 226, 46),
218 mode_term: Color::Rgb(166, 226, 46),
219 mode_preview: Color::Rgb(102, 217, 239),
220 mode_settings: Color::Rgb(174, 129, 255),
221 mode_search: Color::Rgb(230, 219, 116),
222 mode_find: Color::Rgb(102, 217, 239),
223 git_add_bg: Color::Rgb(40, 50, 30),
224 git_del_bg: Color::Rgb(55, 30, 35),
225 git_hunk: Color::Rgb(102, 217, 239),
226};
227
228pub static NORD: Theme = Theme {
230 name: "nord",
231 bg: Color::Rgb(46, 52, 64),
232 fg: Color::Rgb(216, 222, 233),
233 keyword: Color::Rgb(129, 161, 193),
234 string: Color::Rgb(163, 190, 140),
235 comment: Color::Rgb(97, 110, 124),
236 number: Color::Rgb(180, 142, 173),
237 type_name: Color::Rgb(143, 188, 187),
238 function: Color::Rgb(136, 192, 208),
239 macro_name: Color::Rgb(235, 203, 139),
240 namespace: Color::Rgb(129, 161, 193),
241 parameter: Color::Rgb(208, 135, 112),
242 property: Color::Rgb(216, 222, 233),
243 constant: Color::Rgb(180, 142, 173),
244 operator: Color::Rgb(129, 161, 193),
245 punctuation: Color::Rgb(76, 86, 106),
246 line_no: Color::Rgb(76, 86, 106),
247 editor_bg: Color::Rgb(46, 52, 64),
248 status_bg: Color::Rgb(36, 41, 51),
249 status_fg: Color::Rgb(200, 207, 218),
250 border: Color::Rgb(67, 76, 94),
251 selection_bg: Color::Rgb(60, 68, 88),
252 search_bg: Color::Rgb(100, 90, 50),
253 mode_normal: Color::Rgb(94, 129, 172),
254 mode_insert: Color::Rgb(163, 190, 140),
255 mode_visual: Color::Rgb(180, 142, 173),
256 mode_xlc: Color::Rgb(136, 192, 208),
257 completion_bg: Color::Rgb(52, 58, 70),
258 completion_selected: Color::Rgb(129, 161, 193),
259 completion_border: Color::Rgb(129, 161, 193),
260 explorer_bg: Color::Rgb(40, 45, 56),
261 explorer_fg: Color::Rgb(210, 216, 228),
262 explorer_dir: Color::Rgb(94, 129, 172),
263 explorer_selected: Color::Rgb(129, 161, 193),
264 terminal_bg: Color::Rgb(35, 40, 50),
265 terminal_fg: Color::Rgb(163, 190, 140),
266 terminal_prompt: Color::Rgb(143, 188, 187),
267 xlc_bg: Color::Rgb(42, 48, 58),
268 xlc_fg: Color::Rgb(180, 187, 200),
269 xlc_prompt: Color::Rgb(163, 190, 140),
270 xlc_border: Color::Rgb(129, 161, 193),
271 cursor: Color::Rgb(216, 222, 233),
272 accent: Color::Rgb(129, 161, 193),
273 accent_fg: Color::Rgb(0, 0, 0),
274 muted: Color::Rgb(97, 110, 124),
275 success: Color::Rgb(163, 190, 140),
276 warning: Color::Rgb(235, 203, 139),
277 error: Color::Rgb(191, 97, 106),
278 panel_bg: Color::Rgb(52, 58, 70),
279 panel_border: Color::Rgb(129, 161, 193),
280 panel_sel_bg: Color::Rgb(67, 76, 94),
281 panel_sel_fg: Color::Rgb(236, 239, 244),
282 mode_git: Color::Rgb(163, 190, 140),
283 mode_term: Color::Rgb(143, 188, 187),
284 mode_preview: Color::Rgb(136, 192, 208),
285 mode_settings: Color::Rgb(180, 142, 173),
286 mode_search: Color::Rgb(235, 203, 139),
287 mode_find: Color::Rgb(94, 129, 172),
288 git_add_bg: Color::Rgb(40, 55, 48),
289 git_del_bg: Color::Rgb(55, 40, 45),
290 git_hunk: Color::Rgb(136, 192, 208),
291};
292
293pub static SOLARIZED: Theme = Theme {
295 name: "solarized",
296 bg: Color::Rgb(0, 43, 54),
297 fg: Color::Rgb(131, 148, 150),
298 keyword: Color::Rgb(38, 139, 210),
299 string: Color::Rgb(42, 161, 152),
300 comment: Color::Rgb(88, 110, 117),
301 number: Color::Rgb(203, 75, 22),
302 type_name: Color::Rgb(181, 137, 0),
303 function: Color::Rgb(38, 139, 210),
304 macro_name: Color::Rgb(211, 54, 130),
305 namespace: Color::Rgb(42, 161, 152),
306 parameter: Color::Rgb(203, 75, 22),
307 property: Color::Rgb(131, 148, 150),
308 constant: Color::Rgb(203, 75, 22),
309 operator: Color::Rgb(38, 139, 210),
310 punctuation: Color::Rgb(88, 110, 117),
311 line_no: Color::Rgb(50, 75, 85),
312 editor_bg: Color::Rgb(0, 43, 54),
313 status_bg: Color::Rgb(0, 35, 44),
314 status_fg: Color::Rgb(120, 135, 138),
315 border: Color::Rgb(0, 55, 70),
316 selection_bg: Color::Rgb(7, 54, 66),
317 search_bg: Color::Rgb(80, 60, 20),
318 mode_normal: Color::Rgb(38, 139, 210),
319 mode_insert: Color::Rgb(133, 153, 0),
320 mode_visual: Color::Rgb(211, 54, 130),
321 mode_xlc: Color::Rgb(42, 161, 152),
322 completion_bg: Color::Rgb(5, 48, 60),
323 completion_selected: Color::Rgb(38, 139, 210),
324 completion_border: Color::Rgb(38, 139, 210),
325 explorer_bg: Color::Rgb(0, 38, 48),
326 explorer_fg: Color::Rgb(125, 140, 143),
327 explorer_dir: Color::Rgb(38, 139, 210),
328 explorer_selected: Color::Rgb(133, 153, 0),
329 terminal_bg: Color::Rgb(0, 35, 44),
330 terminal_fg: Color::Rgb(133, 153, 0),
331 terminal_prompt: Color::Rgb(42, 161, 152),
332 xlc_bg: Color::Rgb(0, 40, 50),
333 xlc_fg: Color::Rgb(110, 125, 128),
334 xlc_prompt: Color::Rgb(133, 153, 0),
335 xlc_border: Color::Rgb(38, 139, 210),
336 cursor: Color::Rgb(131, 148, 150),
337 accent: Color::Rgb(38, 139, 210),
338 accent_fg: Color::Rgb(0, 43, 54),
339 muted: Color::Rgb(88, 110, 117),
340 success: Color::Rgb(133, 153, 0),
341 warning: Color::Rgb(181, 137, 0),
342 error: Color::Rgb(220, 50, 47),
343 panel_bg: Color::Rgb(5, 48, 60),
344 panel_border: Color::Rgb(38, 139, 210),
345 panel_sel_bg: Color::Rgb(7, 54, 66),
346 panel_sel_fg: Color::Rgb(253, 246, 227),
347 mode_git: Color::Rgb(133, 153, 0),
348 mode_term: Color::Rgb(42, 161, 152),
349 mode_preview: Color::Rgb(38, 139, 210),
350 mode_settings: Color::Rgb(211, 54, 130),
351 mode_search: Color::Rgb(181, 137, 0),
352 mode_find: Color::Rgb(38, 139, 210),
353 git_add_bg: Color::Rgb(0, 50, 40),
354 git_del_bg: Color::Rgb(50, 25, 25),
355 git_hunk: Color::Rgb(38, 139, 210),
356};
357
358pub static GRUVBOX: Theme = Theme {
360 name: "gruvbox",
361 bg: Color::Rgb(40, 40, 40),
362 fg: Color::Rgb(235, 219, 178),
363 keyword: Color::Rgb(211, 134, 155),
364 string: Color::Rgb(184, 187, 38),
365 comment: Color::Rgb(146, 131, 116),
366 number: Color::Rgb(177, 98, 134),
367 type_name: Color::Rgb(142, 192, 124),
368 function: Color::Rgb(250, 189, 47),
369 macro_name: Color::Rgb(254, 128, 25),
370 namespace: Color::Rgb(69, 133, 136),
371 parameter: Color::Rgb(211, 134, 155),
372 property: Color::Rgb(235, 219, 178),
373 constant: Color::Rgb(211, 134, 155),
374 operator: Color::Rgb(254, 128, 25),
375 punctuation: Color::Rgb(146, 131, 116),
376 line_no: Color::Rgb(80, 73, 64),
377 editor_bg: Color::Rgb(40, 40, 40),
378 status_bg: Color::Rgb(32, 32, 32),
379 status_fg: Color::Rgb(220, 205, 165),
380 border: Color::Rgb(60, 56, 50),
381 selection_bg: Color::Rgb(60, 56, 50),
382 search_bg: Color::Rgb(90, 80, 40),
383 mode_normal: Color::Rgb(69, 133, 136),
384 mode_insert: Color::Rgb(184, 187, 38),
385 mode_visual: Color::Rgb(211, 134, 155),
386 mode_xlc: Color::Rgb(131, 165, 152),
387 completion_bg: Color::Rgb(48, 48, 48),
388 completion_selected: Color::Rgb(254, 128, 25),
389 completion_border: Color::Rgb(254, 128, 25),
390 explorer_bg: Color::Rgb(34, 34, 34),
391 explorer_fg: Color::Rgb(228, 212, 170),
392 explorer_dir: Color::Rgb(69, 133, 136),
393 explorer_selected: Color::Rgb(254, 128, 25),
394 terminal_bg: Color::Rgb(30, 30, 30),
395 terminal_fg: Color::Rgb(184, 187, 38),
396 terminal_prompt: Color::Rgb(142, 192, 124),
397 xlc_bg: Color::Rgb(36, 36, 36),
398 xlc_fg: Color::Rgb(190, 178, 150),
399 xlc_prompt: Color::Rgb(184, 187, 38),
400 xlc_border: Color::Rgb(254, 128, 25),
401 cursor: Color::Rgb(235, 219, 178),
402 accent: Color::Rgb(254, 128, 25),
403 accent_fg: Color::Rgb(0, 0, 0),
404 muted: Color::Rgb(146, 131, 116),
405 success: Color::Rgb(142, 192, 124),
406 warning: Color::Rgb(250, 189, 47),
407 error: Color::Rgb(251, 73, 52),
408 panel_bg: Color::Rgb(48, 48, 48),
409 panel_border: Color::Rgb(254, 128, 25),
410 panel_sel_bg: Color::Rgb(60, 56, 50),
411 panel_sel_fg: Color::Rgb(251, 241, 199),
412 mode_git: Color::Rgb(142, 192, 124),
413 mode_term: Color::Rgb(184, 187, 38),
414 mode_preview: Color::Rgb(69, 133, 136),
415 mode_settings: Color::Rgb(211, 134, 155),
416 mode_search: Color::Rgb(250, 189, 47),
417 mode_find: Color::Rgb(69, 133, 136),
418 git_add_bg: Color::Rgb(35, 45, 30),
419 git_del_bg: Color::Rgb(50, 30, 28),
420 git_hunk: Color::Rgb(131, 165, 152),
421};
422
423pub static EVERFOREST: Theme = Theme {
425 name: "everforest",
426 bg: Color::Rgb(39, 46, 44),
427 fg: Color::Rgb(211, 198, 170),
428 keyword: Color::Rgb(230, 126, 128),
429 string: Color::Rgb(167, 192, 128),
430 comment: Color::Rgb(134, 140, 122),
431 number: Color::Rgb(223, 164, 126),
432 type_name: Color::Rgb(130, 202, 157),
433 function: Color::Rgb(219, 188, 127),
434 macro_name: Color::Rgb(214, 153, 182),
435 namespace: Color::Rgb(130, 170, 162),
436 parameter: Color::Rgb(223, 164, 126),
437 property: Color::Rgb(211, 198, 170),
438 constant: Color::Rgb(230, 126, 128),
439 operator: Color::Rgb(131, 180, 175),
440 punctuation: Color::Rgb(134, 140, 122),
441 line_no: Color::Rgb(75, 84, 68),
442 editor_bg: Color::Rgb(39, 46, 44),
443 status_bg: Color::Rgb(31, 37, 35),
444 status_fg: Color::Rgb(200, 188, 160),
445 border: Color::Rgb(58, 66, 60),
446 selection_bg: Color::Rgb(55, 64, 58),
447 search_bg: Color::Rgb(90, 80, 40),
448 mode_normal: Color::Rgb(130, 170, 162),
449 mode_insert: Color::Rgb(167, 192, 128),
450 mode_visual: Color::Rgb(223, 164, 126),
451 mode_xlc: Color::Rgb(131, 180, 175),
452 completion_bg: Color::Rgb(46, 52, 50),
453 completion_selected: Color::Rgb(230, 126, 128),
454 completion_border: Color::Rgb(230, 126, 128),
455 explorer_bg: Color::Rgb(33, 40, 38),
456 explorer_fg: Color::Rgb(205, 193, 165),
457 explorer_dir: Color::Rgb(130, 170, 162),
458 explorer_selected: Color::Rgb(230, 126, 128),
459 terminal_bg: Color::Rgb(28, 35, 33),
460 terminal_fg: Color::Rgb(167, 192, 128),
461 terminal_prompt: Color::Rgb(130, 202, 157),
462 xlc_bg: Color::Rgb(35, 41, 39),
463 xlc_fg: Color::Rgb(185, 173, 148),
464 xlc_prompt: Color::Rgb(167, 192, 128),
465 xlc_border: Color::Rgb(230, 126, 128),
466 cursor: Color::Rgb(211, 198, 170),
467 accent: Color::Rgb(130, 170, 162),
468 accent_fg: Color::Rgb(0, 0, 0),
469 muted: Color::Rgb(134, 140, 122),
470 success: Color::Rgb(167, 192, 128),
471 warning: Color::Rgb(219, 188, 127),
472 error: Color::Rgb(230, 126, 128),
473 panel_bg: Color::Rgb(46, 52, 50),
474 panel_border: Color::Rgb(130, 170, 162),
475 panel_sel_bg: Color::Rgb(55, 64, 58),
476 panel_sel_fg: Color::Rgb(230, 220, 195),
477 mode_git: Color::Rgb(167, 192, 128),
478 mode_term: Color::Rgb(130, 202, 157),
479 mode_preview: Color::Rgb(131, 180, 175),
480 mode_settings: Color::Rgb(214, 153, 182),
481 mode_search: Color::Rgb(219, 188, 127),
482 mode_find: Color::Rgb(130, 170, 162),
483 git_add_bg: Color::Rgb(35, 48, 40),
484 git_del_bg: Color::Rgb(50, 35, 35),
485 git_hunk: Color::Rgb(131, 180, 175),
486};
487
488pub static SAKURA: Theme = Theme {
490 name: "sakura",
491 bg: Color::Rgb(255, 240, 245),
492 fg: Color::Rgb(60, 20, 40),
493 keyword: Color::Rgb(190, 60, 100),
494 string: Color::Rgb(100, 160, 120),
495 comment: Color::Rgb(200, 180, 190),
496 number: Color::Rgb(180, 100, 80),
497 type_name: Color::Rgb(160, 100, 140),
498 function: Color::Rgb(180, 80, 120),
499 macro_name: Color::Rgb(140, 100, 160),
500 namespace: Color::Rgb(200, 130, 160),
501 parameter: Color::Rgb(180, 100, 80),
502 property: Color::Rgb(60, 20, 40),
503 constant: Color::Rgb(190, 60, 100),
504 operator: Color::Rgb(190, 60, 100),
505 punctuation: Color::Rgb(200, 180, 190),
506 line_no: Color::Rgb(200, 170, 185),
507 editor_bg: Color::Rgb(255, 240, 245),
508 status_bg: Color::Rgb(255, 225, 235),
509 status_fg: Color::Rgb(60, 20, 40),
510 border: Color::Rgb(240, 200, 215),
511 selection_bg: Color::Rgb(255, 210, 225),
512 search_bg: Color::Rgb(255, 230, 200),
513 mode_normal: Color::Rgb(219, 112, 147),
514 mode_insert: Color::Rgb(150, 190, 140),
515 mode_visual: Color::Rgb(200, 150, 180),
516 mode_xlc: Color::Rgb(180, 140, 160),
517 completion_bg: Color::Rgb(255, 235, 242),
518 completion_selected: Color::Rgb(219, 112, 147),
519 completion_border: Color::Rgb(219, 112, 147),
520 explorer_bg: Color::Rgb(255, 230, 238),
521 explorer_fg: Color::Rgb(60, 20, 40),
522 explorer_dir: Color::Rgb(200, 130, 160),
523 explorer_selected: Color::Rgb(219, 112, 147),
524 terminal_bg: Color::Rgb(255, 235, 242),
525 terminal_fg: Color::Rgb(60, 20, 40),
526 terminal_prompt: Color::Rgb(219, 112, 147),
527 xlc_bg: Color::Rgb(255, 235, 242),
528 xlc_fg: Color::Rgb(60, 20, 40),
529 xlc_prompt: Color::Rgb(219, 112, 147),
530 xlc_border: Color::Rgb(219, 112, 147),
531 cursor: Color::Rgb(136, 34, 56),
532 accent: Color::Rgb(219, 112, 147),
533 accent_fg: Color::Rgb(255, 255, 255),
534 muted: Color::Rgb(180, 150, 165),
535 success: Color::Rgb(100, 160, 120),
536 warning: Color::Rgb(200, 140, 80),
537 error: Color::Rgb(200, 60, 80),
538 panel_bg: Color::Rgb(255, 235, 242),
539 panel_border: Color::Rgb(219, 112, 147),
540 panel_sel_bg: Color::Rgb(255, 210, 225),
541 panel_sel_fg: Color::Rgb(60, 20, 40),
542 mode_git: Color::Rgb(150, 190, 140),
543 mode_term: Color::Rgb(150, 190, 140),
544 mode_preview: Color::Rgb(200, 130, 160),
545 mode_settings: Color::Rgb(180, 140, 160),
546 mode_search: Color::Rgb(200, 140, 80),
547 mode_find: Color::Rgb(219, 112, 147),
548 git_add_bg: Color::Rgb(230, 245, 235),
549 git_del_bg: Color::Rgb(255, 230, 235),
550 git_hunk: Color::Rgb(200, 130, 160),
551};
552
553pub static NEWSPAPER: Theme = Theme {
555 name: "newspaper",
556 bg: Color::Rgb(255, 243, 229),
557 fg: Color::Rgb(125, 130, 172),
558 keyword: Color::Rgb(125, 130, 172),
559 string: Color::Rgb(140, 145, 185),
560 comment: Color::Rgb(190, 185, 195),
561 number: Color::Rgb(150, 140, 175),
562 type_name: Color::Rgb(172, 176, 214),
563 function: Color::Rgb(100, 110, 160),
564 macro_name: Color::Rgb(140, 120, 170),
565 namespace: Color::Rgb(125, 130, 172),
566 parameter: Color::Rgb(150, 140, 175),
567 property: Color::Rgb(125, 130, 172),
568 constant: Color::Rgb(140, 145, 185),
569 operator: Color::Rgb(125, 130, 172),
570 punctuation: Color::Rgb(190, 185, 195),
571 line_no: Color::Rgb(200, 195, 200),
572 editor_bg: Color::Rgb(255, 243, 229),
573 status_bg: Color::Rgb(254, 249, 244),
574 status_fg: Color::Rgb(125, 130, 172),
575 border: Color::Rgb(228, 223, 225),
576 selection_bg: Color::Rgb(228, 223, 225),
577 search_bg: Color::Rgb(220, 215, 210),
578 mode_normal: Color::Rgb(125, 130, 172),
579 mode_insert: Color::Rgb(172, 176, 214),
580 mode_visual: Color::Rgb(140, 135, 175),
581 mode_xlc: Color::Rgb(172, 176, 214),
582 completion_bg: Color::Rgb(254, 249, 244),
583 completion_selected: Color::Rgb(125, 130, 172),
584 completion_border: Color::Rgb(172, 176, 214),
585 explorer_bg: Color::Rgb(254, 249, 244),
586 explorer_fg: Color::Rgb(125, 130, 172),
587 explorer_dir: Color::Rgb(125, 130, 172),
588 explorer_selected: Color::Rgb(172, 176, 214),
589 terminal_bg: Color::Rgb(254, 249, 244),
590 terminal_fg: Color::Rgb(125, 130, 172),
591 terminal_prompt: Color::Rgb(172, 176, 214),
592 xlc_bg: Color::Rgb(254, 249, 244),
593 xlc_fg: Color::Rgb(125, 130, 172),
594 xlc_prompt: Color::Rgb(172, 176, 214),
595 xlc_border: Color::Rgb(228, 223, 225),
596 cursor: Color::Rgb(125, 130, 172),
597 accent: Color::Rgb(125, 130, 172),
598 accent_fg: Color::Rgb(255, 255, 255),
599 muted: Color::Rgb(170, 165, 180),
600 success: Color::Rgb(100, 150, 110),
601 warning: Color::Rgb(180, 140, 80),
602 error: Color::Rgb(180, 80, 90),
603 panel_bg: Color::Rgb(254, 249, 244),
604 panel_border: Color::Rgb(172, 176, 214),
605 panel_sel_bg: Color::Rgb(228, 223, 225),
606 panel_sel_fg: Color::Rgb(80, 85, 120),
607 mode_git: Color::Rgb(100, 150, 110),
608 mode_term: Color::Rgb(100, 150, 110),
609 mode_preview: Color::Rgb(140, 145, 185),
610 mode_settings: Color::Rgb(140, 120, 170),
611 mode_search: Color::Rgb(180, 140, 80),
612 mode_find: Color::Rgb(125, 130, 172),
613 git_add_bg: Color::Rgb(235, 245, 235),
614 git_del_bg: Color::Rgb(250, 235, 235),
615 git_hunk: Color::Rgb(125, 130, 172),
616};
617
618pub static MONO: Theme = Theme {
620 name: "mono",
621 bg: Color::Rgb(255, 255, 255),
622 fg: Color::Rgb(30, 30, 30),
623 keyword: Color::Rgb(0, 0, 0),
624 string: Color::Rgb(80, 80, 80),
625 comment: Color::Rgb(170, 170, 170),
626 number: Color::Rgb(50, 50, 50),
627 type_name: Color::Rgb(60, 60, 60),
628 function: Color::Rgb(20, 20, 20),
629 macro_name: Color::Rgb(40, 40, 40),
630 namespace: Color::Rgb(50, 50, 50),
631 parameter: Color::Rgb(70, 70, 70),
632 property: Color::Rgb(30, 30, 30),
633 constant: Color::Rgb(40, 40, 40),
634 operator: Color::Rgb(0, 0, 0),
635 punctuation: Color::Rgb(150, 150, 150),
636 line_no: Color::Rgb(190, 190, 190),
637 editor_bg: Color::Rgb(255, 255, 255),
638 status_bg: Color::Rgb(245, 245, 245),
639 status_fg: Color::Rgb(30, 30, 30),
640 border: Color::Rgb(220, 220, 220),
641 selection_bg: Color::Rgb(230, 230, 230),
642 search_bg: Color::Rgb(255, 255, 200),
643 mode_normal: Color::Rgb(60, 60, 60),
644 mode_insert: Color::Rgb(120, 120, 120),
645 mode_visual: Color::Rgb(80, 80, 80),
646 mode_xlc: Color::Rgb(100, 100, 100),
647 completion_bg: Color::Rgb(250, 250, 250),
648 completion_selected: Color::Rgb(60, 60, 60),
649 completion_border: Color::Rgb(200, 200, 200),
650 explorer_bg: Color::Rgb(248, 248, 248),
651 explorer_fg: Color::Rgb(30, 30, 30),
652 explorer_dir: Color::Rgb(50, 50, 50),
653 explorer_selected: Color::Rgb(220, 220, 220),
654 terminal_bg: Color::Rgb(250, 250, 250),
655 terminal_fg: Color::Rgb(30, 30, 30),
656 terminal_prompt: Color::Rgb(80, 80, 80),
657 xlc_bg: Color::Rgb(248, 248, 248),
658 xlc_fg: Color::Rgb(50, 50, 50),
659 xlc_prompt: Color::Rgb(80, 80, 80),
660 xlc_border: Color::Rgb(200, 200, 200),
661 cursor: Color::Rgb(0, 0, 0),
662 accent: Color::Rgb(40, 40, 40),
663 accent_fg: Color::Rgb(255, 255, 255),
664 muted: Color::Rgb(140, 140, 140),
665 success: Color::Rgb(40, 120, 40),
666 warning: Color::Rgb(140, 110, 20),
667 error: Color::Rgb(160, 40, 40),
668 panel_bg: Color::Rgb(250, 250, 250),
669 panel_border: Color::Rgb(180, 180, 180),
670 panel_sel_bg: Color::Rgb(230, 230, 230),
671 panel_sel_fg: Color::Rgb(0, 0, 0),
672 mode_git: Color::Rgb(40, 120, 40),
673 mode_term: Color::Rgb(40, 120, 40),
674 mode_preview: Color::Rgb(60, 60, 60),
675 mode_settings: Color::Rgb(80, 80, 80),
676 mode_search: Color::Rgb(140, 110, 20),
677 mode_find: Color::Rgb(60, 60, 60),
678 git_add_bg: Color::Rgb(235, 250, 235),
679 git_del_bg: Color::Rgb(255, 235, 235),
680 git_hunk: Color::Rgb(80, 80, 80),
681};
682
683pub static MONO_DARK: Theme = Theme {
685 name: "mono_dark",
686 bg: Color::Rgb(20, 20, 20),
687 fg: Color::Rgb(230, 230, 230),
688 keyword: Color::Rgb(255, 255, 255),
689 string: Color::Rgb(190, 190, 190),
690 comment: Color::Rgb(100, 100, 100),
691 number: Color::Rgb(210, 210, 210),
692 type_name: Color::Rgb(200, 200, 200),
693 function: Color::Rgb(240, 240, 240),
694 macro_name: Color::Rgb(220, 220, 220),
695 namespace: Color::Rgb(210, 210, 210),
696 parameter: Color::Rgb(200, 200, 200),
697 property: Color::Rgb(230, 230, 230),
698 constant: Color::Rgb(220, 220, 220),
699 operator: Color::Rgb(255, 255, 255),
700 punctuation: Color::Rgb(120, 120, 120),
701 line_no: Color::Rgb(70, 70, 70),
702 editor_bg: Color::Rgb(20, 20, 20),
703 status_bg: Color::Rgb(28, 28, 28),
704 status_fg: Color::Rgb(230, 230, 230),
705 border: Color::Rgb(50, 50, 50),
706 selection_bg: Color::Rgb(60, 60, 60),
707 search_bg: Color::Rgb(50, 50, 30),
708 mode_normal: Color::Rgb(200, 200, 200),
709 mode_insert: Color::Rgb(150, 150, 150),
710 mode_visual: Color::Rgb(180, 180, 180),
711 mode_xlc: Color::Rgb(170, 170, 170),
712 completion_bg: Color::Rgb(30, 30, 30),
713 completion_selected: Color::Rgb(200, 200, 200),
714 completion_border: Color::Rgb(80, 80, 80),
715 explorer_bg: Color::Rgb(16, 16, 16),
716 explorer_fg: Color::Rgb(230, 230, 230),
717 explorer_dir: Color::Rgb(210, 210, 210),
718 explorer_selected: Color::Rgb(60, 60, 60),
719 terminal_bg: Color::Rgb(24, 24, 24),
720 terminal_fg: Color::Rgb(230, 230, 230),
721 terminal_prompt: Color::Rgb(190, 190, 190),
722 xlc_bg: Color::Rgb(26, 26, 26),
723 xlc_fg: Color::Rgb(210, 210, 210),
724 xlc_prompt: Color::Rgb(190, 190, 190),
725 xlc_border: Color::Rgb(70, 70, 70),
726 cursor: Color::Rgb(255, 255, 255),
727 accent: Color::Rgb(200, 200, 200),
728 accent_fg: Color::Rgb(0, 0, 0),
729 muted: Color::Rgb(100, 100, 100),
730 success: Color::Rgb(140, 200, 140),
731 warning: Color::Rgb(200, 180, 100),
732 error: Color::Rgb(220, 120, 120),
733 panel_bg: Color::Rgb(30, 30, 30),
734 panel_border: Color::Rgb(80, 80, 80),
735 panel_sel_bg: Color::Rgb(55, 55, 55),
736 panel_sel_fg: Color::Rgb(245, 245, 245),
737 mode_git: Color::Rgb(140, 200, 140),
738 mode_term: Color::Rgb(140, 200, 140),
739 mode_preview: Color::Rgb(180, 180, 180),
740 mode_settings: Color::Rgb(170, 170, 170),
741 mode_search: Color::Rgb(200, 180, 100),
742 mode_find: Color::Rgb(180, 180, 180),
743 git_add_bg: Color::Rgb(25, 35, 25),
744 git_del_bg: Color::Rgb(40, 22, 22),
745 git_hunk: Color::Rgb(180, 180, 180),
746};
747