arborium_theme/
builtin_generated.rs

1// Generated theme definitions - DO NOT EDIT MANUALLY.
2// This file is generated by xtask from TOML theme files.
3
4use super::{Color, Style, Theme};
5
6/// Alabaster theme.
7///
8/// Source: https://github.com/tonsky/vscode-theme-alabaster
9pub fn alabaster() -> Theme {
10    Theme {
11        name: "Alabaster".to_string(),
12        is_dark: false,
13        source_url: Some("https://github.com/tonsky/vscode-theme-alabaster".to_string()),
14        background: Some(Color::new(247, 247, 247)),
15        foreground: Some(Color::new(0, 0, 0)),
16        styles: [
17            Style::new().fg(Color::new(122, 62, 157)),
18            Style::new().fg(Color::new(122, 62, 157)),
19            Style::new(),
20            Style::new(),
21            Style::new().fg(Color::new(50, 92, 192)),
22            Style::new().fg(Color::new(50, 92, 192)),
23            Style::new(),
24            Style::new().fg(Color::new(0, 0, 0)),
25            Style::new(),
26            Style::new(),
27            Style::new(),
28            Style::new(),
29            Style::new(),
30            Style::new(),
31            Style::new(),
32            Style::new(),
33            Style::new(),
34            Style::new(),
35            Style::new().fg(Color::new(119, 119, 119)),
36            Style::new().fg(Color::new(0, 0, 0)),
37            Style::new().fg(Color::new(119, 119, 119)),
38            Style::new().fg(Color::new(119, 119, 119)),
39            Style::new().fg(Color::new(119, 119, 119)),
40            Style::new().fg(Color::new(119, 119, 119)),
41            Style::new().fg(Color::new(68, 140, 39)),
42            Style::new().fg(Color::new(119, 119, 119)),
43            Style::new().fg(Color::new(50, 92, 192)),
44            Style::new(),
45            Style::new(),
46            Style::new().fg(Color::new(50, 92, 192)),
47            Style::new().fg(Color::new(50, 92, 192)),
48            Style::new(),
49            Style::new().fg(Color::new(0, 0, 0)),
50            Style::new().fg(Color::new(122, 62, 157)),
51            Style::new().fg(Color::new(0, 0, 0)),
52            Style::new().fg(Color::new(170, 55, 49)),
53            Style::new(),
54            Style::new().fg(Color::new(50, 92, 192)),
55            Style::new().fg(Color::new(50, 92, 192)),
56            Style::new().fg(Color::new(68, 140, 39)),
57            Style::new().fg(Color::new(170, 55, 49)),
58            Style::new().fg(Color::new(122, 62, 157)),
59            Style::new().fg(Color::new(0, 0, 0)),
60            Style::new().italic(),
61            Style::new().bold(),
62            Style::new().fg(Color::new(50, 92, 192)).underline(),
63            Style::new().fg(Color::new(50, 92, 192)),
64            Style::new().fg(Color::new(119, 119, 119)),
65            Style::new().fg(Color::new(50, 92, 192)).bold(),
66            Style::new().strikethrough(),
67            Style::new().fg(Color::new(0, 0, 0)),
68            Style::new(),
69            Style::new(),
70            Style::new(),
71            Style::new(),
72            Style::new(),
73            Style::new(),
74            Style::new(),
75            Style::new(),
76            Style::new(),
77            Style::new(),
78            Style::new(),
79            Style::new(),
80            Style::new(),
81            Style::new(),
82            Style::new(),
83            Style::new(),
84            Style::new(),
85            Style::new(),
86            Style::new(),
87            Style::new(),
88            Style::new(),
89            Style::new()
90        ],
91    }
92}
93
94/// Ayu Dark theme.
95///
96/// Source: https://github.com/ayu-theme/ayu-colors
97pub fn ayu_dark() -> Theme {
98    Theme {
99        name: "Ayu Dark".to_string(),
100        is_dark: true,
101        source_url: Some("https://github.com/ayu-theme/ayu-colors".to_string()),
102        background: Some(Color::new(13, 16, 23)),
103        foreground: Some(Color::new(191, 189, 182)),
104        styles: [
105            Style::new(),
106            Style::new().fg(Color::new(210, 166, 255)),
107            Style::new(),
108            Style::new(),
109            Style::new().fg(Color::new(255, 180, 84)),
110            Style::new().fg(Color::new(255, 180, 84)),
111            Style::new(),
112            Style::new().fg(Color::new(255, 143, 64)),
113            Style::new(),
114            Style::new(),
115            Style::new(),
116            Style::new(),
117            Style::new(),
118            Style::new(),
119            Style::new(),
120            Style::new(),
121            Style::new(),
122            Style::new(),
123            Style::new().fg(Color::new(242, 150, 104)),
124            Style::new().fg(Color::new(89, 194, 255)),
125            Style::new(),
126            Style::new(),
127            Style::new(),
128            Style::new().fg(Color::new(230, 182, 115)),
129            Style::new().fg(Color::new(170, 217, 76)),
130            Style::new().fg(Color::new(149, 230, 203)),
131            Style::new().fg(Color::new(57, 186, 230)),
132            Style::new(),
133            Style::new(),
134            Style::new().fg(Color::new(89, 194, 255)),
135            Style::new().fg(Color::new(89, 194, 255)),
136            Style::new(),
137            Style::new().fg(Color::new(191, 189, 182)),
138            Style::new().fg(Color::new(255, 143, 64)),
139            Style::new().fg(Color::new(191, 189, 182)),
140            Style::new().fg(Color::new(98, 106, 115)).italic(),
141            Style::new(),
142            Style::new().fg(Color::new(255, 180, 84)),
143            Style::new().fg(Color::new(57, 186, 230)),
144            Style::new().fg(Color::new(170, 217, 76)),
145            Style::new().fg(Color::new(217, 87, 87)),
146            Style::new().fg(Color::new(210, 166, 255)),
147            Style::new().fg(Color::new(191, 189, 182)),
148            Style::new().italic(),
149            Style::new().bold(),
150            Style::new().fg(Color::new(57, 186, 230)).underline(),
151            Style::new().fg(Color::new(89, 194, 255)),
152            Style::new().fg(Color::new(149, 230, 203)),
153            Style::new().fg(Color::new(89, 194, 255)).bold(),
154            Style::new().strikethrough(),
155            Style::new().fg(Color::new(191, 189, 182)),
156            Style::new(),
157            Style::new(),
158            Style::new(),
159            Style::new(),
160            Style::new(),
161            Style::new(),
162            Style::new(),
163            Style::new(),
164            Style::new(),
165            Style::new(),
166            Style::new(),
167            Style::new(),
168            Style::new(),
169            Style::new(),
170            Style::new(),
171            Style::new(),
172            Style::new(),
173            Style::new(),
174            Style::new(),
175            Style::new(),
176            Style::new(),
177            Style::new()
178        ],
179    }
180}
181
182/// Ayu Light theme.
183///
184/// Source: https://github.com/ayu-theme/ayu-colors
185pub fn ayu_light() -> Theme {
186    Theme {
187        name: "Ayu Light".to_string(),
188        is_dark: false,
189        source_url: Some("https://github.com/ayu-theme/ayu-colors".to_string()),
190        background: Some(Color::new(250, 250, 250)),
191        foreground: Some(Color::new(92, 97, 102)),
192        styles: [
193            Style::new(),
194            Style::new().fg(Color::new(163, 122, 204)),
195            Style::new(),
196            Style::new(),
197            Style::new().fg(Color::new(242, 174, 73)),
198            Style::new().fg(Color::new(242, 174, 73)),
199            Style::new(),
200            Style::new().fg(Color::new(250, 141, 62)),
201            Style::new(),
202            Style::new(),
203            Style::new(),
204            Style::new(),
205            Style::new(),
206            Style::new(),
207            Style::new(),
208            Style::new(),
209            Style::new(),
210            Style::new(),
211            Style::new().fg(Color::new(237, 147, 102)),
212            Style::new().fg(Color::new(57, 158, 230)),
213            Style::new(),
214            Style::new(),
215            Style::new(),
216            Style::new().fg(Color::new(230, 186, 126)),
217            Style::new().fg(Color::new(134, 179, 0)),
218            Style::new().fg(Color::new(76, 191, 153)),
219            Style::new().fg(Color::new(85, 180, 212)),
220            Style::new(),
221            Style::new(),
222            Style::new().fg(Color::new(57, 158, 230)),
223            Style::new().fg(Color::new(57, 158, 230)),
224            Style::new(),
225            Style::new().fg(Color::new(92, 97, 102)),
226            Style::new().fg(Color::new(250, 141, 62)),
227            Style::new().fg(Color::new(92, 97, 102)),
228            Style::new().fg(Color::new(138, 145, 153)).italic(),
229            Style::new(),
230            Style::new().fg(Color::new(242, 174, 73)),
231            Style::new().fg(Color::new(85, 180, 212)),
232            Style::new().fg(Color::new(134, 179, 0)),
233            Style::new().fg(Color::new(245, 24, 24)),
234            Style::new().fg(Color::new(163, 122, 204)),
235            Style::new().fg(Color::new(92, 97, 102)),
236            Style::new().italic(),
237            Style::new().bold(),
238            Style::new().fg(Color::new(85, 180, 212)).underline(),
239            Style::new().fg(Color::new(57, 158, 230)),
240            Style::new().fg(Color::new(76, 191, 153)),
241            Style::new().fg(Color::new(57, 158, 230)).bold(),
242            Style::new().strikethrough(),
243            Style::new().fg(Color::new(92, 97, 102)),
244            Style::new(),
245            Style::new(),
246            Style::new(),
247            Style::new(),
248            Style::new(),
249            Style::new(),
250            Style::new(),
251            Style::new(),
252            Style::new(),
253            Style::new(),
254            Style::new(),
255            Style::new(),
256            Style::new(),
257            Style::new(),
258            Style::new(),
259            Style::new(),
260            Style::new(),
261            Style::new(),
262            Style::new(),
263            Style::new(),
264            Style::new(),
265            Style::new()
266        ],
267    }
268}
269
270/// Catppuccin Frappé theme.
271///
272/// Source: https://github.com/catppuccin/catppuccin
273pub fn catppuccin_frappe() -> Theme {
274    Theme {
275        name: "Catppuccin Frappé".to_string(),
276        is_dark: true,
277        source_url: Some("https://github.com/catppuccin/catppuccin".to_string()),
278        background: Some(Color::new(48, 52, 70)),
279        foreground: Some(Color::new(198, 208, 245)),
280        styles: [
281            Style::new().fg(Color::new(229, 200, 144)),
282            Style::new().fg(Color::new(239, 159, 118)),
283            Style::new(),
284            Style::new(),
285            Style::new().fg(Color::new(153, 209, 219)),
286            Style::new().fg(Color::new(140, 170, 238)),
287            Style::new(),
288            Style::new().fg(Color::new(202, 158, 230)),
289            Style::new(),
290            Style::new(),
291            Style::new(),
292            Style::new(),
293            Style::new(),
294            Style::new(),
295            Style::new(),
296            Style::new(),
297            Style::new(),
298            Style::new(),
299            Style::new().fg(Color::new(129, 200, 190)),
300            Style::new().fg(Color::new(140, 170, 238)),
301            Style::new().fg(Color::new(148, 156, 187)),
302            Style::new().fg(Color::new(148, 156, 187)),
303            Style::new().fg(Color::new(148, 156, 187)),
304            Style::new().fg(Color::new(244, 184, 228)),
305            Style::new().fg(Color::new(166, 209, 137)),
306            Style::new().fg(Color::new(231, 130, 132)),
307            Style::new().fg(Color::new(140, 170, 238)),
308            Style::new(),
309            Style::new(),
310            Style::new().fg(Color::new(229, 200, 144)),
311            Style::new().fg(Color::new(229, 200, 144)),
312            Style::new(),
313            Style::new().fg(Color::new(198, 208, 245)),
314            Style::new().fg(Color::new(231, 130, 132)),
315            Style::new().fg(Color::new(239, 159, 118)),
316            Style::new().fg(Color::new(115, 121, 148)),
317            Style::new(),
318            Style::new().fg(Color::new(129, 200, 190)),
319            Style::new().fg(Color::new(244, 184, 228)),
320            Style::new().fg(Color::new(166, 209, 137)),
321            Style::new().fg(Color::new(231, 130, 132)),
322            Style::new().fg(Color::new(239, 159, 118)),
323            Style::new().fg(Color::new(198, 208, 245)),
324            Style::new().italic(),
325            Style::new().bold(),
326            Style::new().fg(Color::new(140, 170, 238)).underline(),
327            Style::new().fg(Color::new(153, 209, 219)),
328            Style::new().fg(Color::new(239, 159, 118)),
329            Style::new().fg(Color::new(202, 158, 230)).bold(),
330            Style::new().strikethrough(),
331            Style::new().fg(Color::new(198, 208, 245)),
332            Style::new(),
333            Style::new(),
334            Style::new(),
335            Style::new(),
336            Style::new(),
337            Style::new(),
338            Style::new(),
339            Style::new(),
340            Style::new(),
341            Style::new(),
342            Style::new(),
343            Style::new(),
344            Style::new(),
345            Style::new(),
346            Style::new(),
347            Style::new(),
348            Style::new(),
349            Style::new(),
350            Style::new(),
351            Style::new(),
352            Style::new(),
353            Style::new()
354        ],
355    }
356}
357
358/// Catppuccin Latte theme.
359///
360/// Source: https://github.com/catppuccin/catppuccin
361pub fn catppuccin_latte() -> Theme {
362    Theme {
363        name: "Catppuccin Latte".to_string(),
364        is_dark: false,
365        source_url: Some("https://github.com/catppuccin/catppuccin".to_string()),
366        background: Some(Color::new(239, 241, 245)),
367        foreground: Some(Color::new(76, 79, 105)),
368        styles: [
369            Style::new().fg(Color::new(223, 142, 29)),
370            Style::new().fg(Color::new(254, 100, 11)),
371            Style::new(),
372            Style::new(),
373            Style::new().fg(Color::new(4, 165, 229)),
374            Style::new().fg(Color::new(30, 102, 245)),
375            Style::new(),
376            Style::new().fg(Color::new(136, 57, 239)),
377            Style::new(),
378            Style::new(),
379            Style::new(),
380            Style::new(),
381            Style::new(),
382            Style::new(),
383            Style::new(),
384            Style::new(),
385            Style::new(),
386            Style::new(),
387            Style::new().fg(Color::new(23, 146, 153)),
388            Style::new().fg(Color::new(30, 102, 245)),
389            Style::new().fg(Color::new(124, 127, 147)),
390            Style::new().fg(Color::new(124, 127, 147)),
391            Style::new().fg(Color::new(124, 127, 147)),
392            Style::new().fg(Color::new(234, 118, 203)),
393            Style::new().fg(Color::new(64, 160, 43)),
394            Style::new().fg(Color::new(210, 15, 57)),
395            Style::new().fg(Color::new(30, 102, 245)),
396            Style::new(),
397            Style::new(),
398            Style::new().fg(Color::new(223, 142, 29)),
399            Style::new().fg(Color::new(223, 142, 29)),
400            Style::new(),
401            Style::new().fg(Color::new(76, 79, 105)),
402            Style::new().fg(Color::new(210, 15, 57)),
403            Style::new().fg(Color::new(254, 100, 11)),
404            Style::new().fg(Color::new(156, 160, 176)),
405            Style::new(),
406            Style::new().fg(Color::new(23, 146, 153)),
407            Style::new().fg(Color::new(234, 118, 203)),
408            Style::new().fg(Color::new(64, 160, 43)),
409            Style::new().fg(Color::new(210, 15, 57)),
410            Style::new().fg(Color::new(254, 100, 11)),
411            Style::new().fg(Color::new(76, 79, 105)),
412            Style::new().italic(),
413            Style::new().bold(),
414            Style::new().fg(Color::new(30, 102, 245)).underline(),
415            Style::new().fg(Color::new(4, 165, 229)),
416            Style::new().fg(Color::new(254, 100, 11)),
417            Style::new().fg(Color::new(136, 57, 239)).bold(),
418            Style::new().strikethrough(),
419            Style::new().fg(Color::new(76, 79, 105)),
420            Style::new(),
421            Style::new(),
422            Style::new(),
423            Style::new(),
424            Style::new(),
425            Style::new(),
426            Style::new(),
427            Style::new(),
428            Style::new(),
429            Style::new(),
430            Style::new(),
431            Style::new(),
432            Style::new(),
433            Style::new(),
434            Style::new(),
435            Style::new(),
436            Style::new(),
437            Style::new(),
438            Style::new(),
439            Style::new(),
440            Style::new(),
441            Style::new()
442        ],
443    }
444}
445
446/// Catppuccin Macchiato theme.
447///
448/// Source: https://github.com/catppuccin/catppuccin
449pub fn catppuccin_macchiato() -> Theme {
450    Theme {
451        name: "Catppuccin Macchiato".to_string(),
452        is_dark: true,
453        source_url: Some("https://github.com/catppuccin/catppuccin".to_string()),
454        background: Some(Color::new(36, 39, 58)),
455        foreground: Some(Color::new(202, 211, 245)),
456        styles: [
457            Style::new().fg(Color::new(238, 212, 159)),
458            Style::new().fg(Color::new(245, 169, 127)),
459            Style::new(),
460            Style::new(),
461            Style::new().fg(Color::new(145, 215, 227)),
462            Style::new().fg(Color::new(138, 173, 244)),
463            Style::new(),
464            Style::new().fg(Color::new(198, 160, 246)),
465            Style::new(),
466            Style::new(),
467            Style::new(),
468            Style::new(),
469            Style::new(),
470            Style::new(),
471            Style::new(),
472            Style::new(),
473            Style::new(),
474            Style::new(),
475            Style::new().fg(Color::new(139, 213, 202)),
476            Style::new().fg(Color::new(138, 173, 244)),
477            Style::new().fg(Color::new(147, 154, 183)),
478            Style::new().fg(Color::new(147, 154, 183)),
479            Style::new().fg(Color::new(147, 154, 183)),
480            Style::new().fg(Color::new(245, 189, 230)),
481            Style::new().fg(Color::new(166, 218, 149)),
482            Style::new().fg(Color::new(237, 135, 150)),
483            Style::new().fg(Color::new(138, 173, 244)),
484            Style::new(),
485            Style::new(),
486            Style::new().fg(Color::new(238, 212, 159)),
487            Style::new().fg(Color::new(238, 212, 159)),
488            Style::new(),
489            Style::new().fg(Color::new(202, 211, 245)),
490            Style::new().fg(Color::new(237, 135, 150)),
491            Style::new().fg(Color::new(245, 169, 127)),
492            Style::new().fg(Color::new(110, 115, 141)),
493            Style::new(),
494            Style::new().fg(Color::new(139, 213, 202)),
495            Style::new().fg(Color::new(245, 189, 230)),
496            Style::new().fg(Color::new(166, 218, 149)),
497            Style::new().fg(Color::new(237, 135, 150)),
498            Style::new().fg(Color::new(245, 169, 127)),
499            Style::new().fg(Color::new(202, 211, 245)),
500            Style::new().italic(),
501            Style::new().bold(),
502            Style::new().fg(Color::new(138, 173, 244)).underline(),
503            Style::new().fg(Color::new(145, 215, 227)),
504            Style::new().fg(Color::new(245, 169, 127)),
505            Style::new().fg(Color::new(198, 160, 246)).bold(),
506            Style::new().strikethrough(),
507            Style::new().fg(Color::new(202, 211, 245)),
508            Style::new(),
509            Style::new(),
510            Style::new(),
511            Style::new(),
512            Style::new(),
513            Style::new(),
514            Style::new(),
515            Style::new(),
516            Style::new(),
517            Style::new(),
518            Style::new(),
519            Style::new(),
520            Style::new(),
521            Style::new(),
522            Style::new(),
523            Style::new(),
524            Style::new(),
525            Style::new(),
526            Style::new(),
527            Style::new(),
528            Style::new(),
529            Style::new()
530        ],
531    }
532}
533
534/// Catppuccin Mocha theme.
535///
536/// Source: https://github.com/catppuccin/catppuccin
537pub fn catppuccin_mocha() -> Theme {
538    Theme {
539        name: "Catppuccin Mocha".to_string(),
540        is_dark: true,
541        source_url: Some("https://github.com/catppuccin/catppuccin".to_string()),
542        background: Some(Color::new(30, 30, 46)),
543        foreground: Some(Color::new(205, 214, 244)),
544        styles: [
545            Style::new().fg(Color::new(249, 226, 175)),
546            Style::new().fg(Color::new(250, 179, 135)),
547            Style::new(),
548            Style::new(),
549            Style::new().fg(Color::new(137, 220, 235)),
550            Style::new().fg(Color::new(137, 180, 250)),
551            Style::new(),
552            Style::new().fg(Color::new(203, 166, 247)),
553            Style::new(),
554            Style::new(),
555            Style::new(),
556            Style::new(),
557            Style::new(),
558            Style::new(),
559            Style::new(),
560            Style::new(),
561            Style::new(),
562            Style::new(),
563            Style::new().fg(Color::new(148, 226, 213)),
564            Style::new().fg(Color::new(137, 180, 250)),
565            Style::new().fg(Color::new(147, 153, 178)),
566            Style::new().fg(Color::new(147, 153, 178)),
567            Style::new().fg(Color::new(147, 153, 178)),
568            Style::new().fg(Color::new(245, 194, 231)),
569            Style::new().fg(Color::new(166, 227, 161)),
570            Style::new().fg(Color::new(243, 139, 168)),
571            Style::new().fg(Color::new(137, 180, 250)),
572            Style::new(),
573            Style::new(),
574            Style::new().fg(Color::new(249, 226, 175)),
575            Style::new().fg(Color::new(249, 226, 175)),
576            Style::new(),
577            Style::new().fg(Color::new(205, 214, 244)),
578            Style::new().fg(Color::new(243, 139, 168)),
579            Style::new().fg(Color::new(250, 179, 135)),
580            Style::new().fg(Color::new(108, 112, 134)),
581            Style::new(),
582            Style::new().fg(Color::new(148, 226, 213)),
583            Style::new().fg(Color::new(245, 194, 231)),
584            Style::new().fg(Color::new(166, 227, 161)),
585            Style::new().fg(Color::new(243, 139, 168)),
586            Style::new().fg(Color::new(250, 179, 135)),
587            Style::new().fg(Color::new(205, 214, 244)),
588            Style::new().italic(),
589            Style::new().bold(),
590            Style::new().fg(Color::new(137, 180, 250)).underline(),
591            Style::new().fg(Color::new(137, 220, 235)),
592            Style::new().fg(Color::new(250, 179, 135)),
593            Style::new().fg(Color::new(203, 166, 247)).bold(),
594            Style::new().strikethrough(),
595            Style::new().fg(Color::new(205, 214, 244)),
596            Style::new(),
597            Style::new(),
598            Style::new(),
599            Style::new(),
600            Style::new(),
601            Style::new(),
602            Style::new(),
603            Style::new(),
604            Style::new(),
605            Style::new(),
606            Style::new(),
607            Style::new(),
608            Style::new(),
609            Style::new(),
610            Style::new(),
611            Style::new(),
612            Style::new(),
613            Style::new(),
614            Style::new(),
615            Style::new(),
616            Style::new(),
617            Style::new()
618        ],
619    }
620}
621
622/// Cobalt2 theme.
623///
624/// Source: https://github.com/wesbos/cobalt2-vscode
625pub fn cobalt2() -> Theme {
626    Theme {
627        name: "Cobalt2".to_string(),
628        is_dark: true,
629        source_url: Some("https://github.com/wesbos/cobalt2-vscode".to_string()),
630        background: Some(Color::new(25, 53, 73)),
631        foreground: Some(Color::new(255, 255, 255)),
632        styles: [
633            Style::new().fg(Color::new(255, 198, 0)),
634            Style::new().fg(Color::new(255, 98, 140)),
635            Style::new(),
636            Style::new(),
637            Style::new().fg(Color::new(255, 157, 0)),
638            Style::new().fg(Color::new(255, 198, 0)),
639            Style::new(),
640            Style::new().fg(Color::new(255, 157, 0)),
641            Style::new(),
642            Style::new(),
643            Style::new(),
644            Style::new(),
645            Style::new(),
646            Style::new(),
647            Style::new(),
648            Style::new(),
649            Style::new(),
650            Style::new(),
651            Style::new().fg(Color::new(255, 255, 255)),
652            Style::new().fg(Color::new(158, 255, 255)),
653            Style::new().fg(Color::new(255, 255, 255)),
654            Style::new().fg(Color::new(255, 255, 255)),
655            Style::new().fg(Color::new(255, 255, 255)),
656            Style::new().fg(Color::new(158, 255, 255)),
657            Style::new().fg(Color::new(165, 255, 144)),
658            Style::new().fg(Color::new(58, 217, 0)),
659            Style::new().fg(Color::new(255, 198, 0)),
660            Style::new(),
661            Style::new(),
662            Style::new().fg(Color::new(255, 104, 184)),
663            Style::new().fg(Color::new(255, 104, 184)),
664            Style::new(),
665            Style::new().fg(Color::new(225, 239, 255)),
666            Style::new().fg(Color::new(255, 98, 140)),
667            Style::new().fg(Color::new(225, 239, 255)),
668            Style::new().fg(Color::new(0, 136, 255)).italic(),
669            Style::new(),
670            Style::new().fg(Color::new(255, 157, 0)),
671            Style::new().fg(Color::new(158, 255, 255)),
672            Style::new().fg(Color::new(165, 255, 144)),
673            Style::new().fg(Color::new(255, 98, 140)),
674            Style::new().fg(Color::new(255, 98, 140)),
675            Style::new().fg(Color::new(255, 255, 255)),
676            Style::new().italic(),
677            Style::new().bold(),
678            Style::new().fg(Color::new(0, 136, 255)).underline(),
679            Style::new().fg(Color::new(158, 255, 255)),
680            Style::new().fg(Color::new(255, 98, 140)),
681            Style::new().fg(Color::new(255, 198, 0)).bold(),
682            Style::new().strikethrough(),
683            Style::new().fg(Color::new(255, 255, 255)),
684            Style::new(),
685            Style::new(),
686            Style::new(),
687            Style::new(),
688            Style::new(),
689            Style::new(),
690            Style::new(),
691            Style::new(),
692            Style::new(),
693            Style::new(),
694            Style::new(),
695            Style::new(),
696            Style::new(),
697            Style::new(),
698            Style::new(),
699            Style::new(),
700            Style::new(),
701            Style::new(),
702            Style::new(),
703            Style::new(),
704            Style::new(),
705            Style::new()
706        ],
707    }
708}
709
710/// Dayfox theme.
711///
712/// Source: https://github.com/EdenEast/nightfox.nvim
713pub fn dayfox() -> Theme {
714    Theme {
715        name: "Dayfox".to_string(),
716        is_dark: false,
717        source_url: Some("https://github.com/EdenEast/nightfox.nvim".to_string()),
718        background: Some(Color::new(246, 242, 238)),
719        foreground: Some(Color::new(61, 43, 90)),
720        styles: [
721            Style::new().fg(Color::new(149, 95, 97)),
722            Style::new().fg(Color::new(40, 121, 128)),
723            Style::new(),
724            Style::new(),
725            Style::new().fg(Color::new(40, 121, 128)),
726            Style::new().fg(Color::new(40, 72, 169)),
727            Style::new(),
728            Style::new().fg(Color::new(110, 51, 206)),
729            Style::new(),
730            Style::new(),
731            Style::new(),
732            Style::new(),
733            Style::new(),
734            Style::new(),
735            Style::new(),
736            Style::new(),
737            Style::new(),
738            Style::new(),
739            Style::new().fg(Color::new(61, 43, 90)),
740            Style::new().fg(Color::new(40, 121, 128)),
741            Style::new().fg(Color::new(130, 77, 91)),
742            Style::new().fg(Color::new(130, 77, 91)),
743            Style::new().fg(Color::new(130, 77, 91)),
744            Style::new().fg(Color::new(164, 64, 181)),
745            Style::new().fg(Color::new(57, 104, 71)),
746            Style::new().fg(Color::new(149, 95, 97)),
747            Style::new().fg(Color::new(110, 51, 206)),
748            Style::new(),
749            Style::new(),
750            Style::new().fg(Color::new(172, 84, 2)),
751            Style::new().fg(Color::new(172, 84, 2)),
752            Style::new(),
753            Style::new().fg(Color::new(61, 43, 90)),
754            Style::new().fg(Color::new(165, 34, 47)),
755            Style::new().fg(Color::new(100, 63, 97)),
756            Style::new().fg(Color::new(131, 122, 114)),
757            Style::new(),
758            Style::new().fg(Color::new(40, 121, 128)),
759            Style::new().fg(Color::new(164, 64, 181)),
760            Style::new().fg(Color::new(57, 104, 71)),
761            Style::new().fg(Color::new(165, 34, 47)),
762            Style::new().fg(Color::new(149, 95, 97)),
763            Style::new().fg(Color::new(61, 43, 90)),
764            Style::new().italic(),
765            Style::new().bold(),
766            Style::new().fg(Color::new(40, 72, 169)).underline(),
767            Style::new().fg(Color::new(40, 121, 128)),
768            Style::new().fg(Color::new(164, 64, 181)),
769            Style::new().fg(Color::new(40, 72, 169)).bold(),
770            Style::new().strikethrough(),
771            Style::new().fg(Color::new(61, 43, 90)),
772            Style::new(),
773            Style::new(),
774            Style::new(),
775            Style::new(),
776            Style::new(),
777            Style::new(),
778            Style::new(),
779            Style::new(),
780            Style::new(),
781            Style::new(),
782            Style::new(),
783            Style::new(),
784            Style::new(),
785            Style::new(),
786            Style::new(),
787            Style::new(),
788            Style::new(),
789            Style::new(),
790            Style::new(),
791            Style::new(),
792            Style::new(),
793            Style::new()
794        ],
795    }
796}
797
798/// Desert256 theme.
799///
800/// Source: https://github.com/vim-scripts/desert256.vim
801pub fn desert256() -> Theme {
802    Theme {
803        name: "Desert256".to_string(),
804        is_dark: true,
805        source_url: Some("https://github.com/vim-scripts/desert256.vim".to_string()),
806        background: Some(Color::new(0, 0, 0)),
807        foreground: Some(Color::new(204, 204, 204)),
808        styles: [
809            Style::new().fg(Color::new(205, 92, 92)),
810            Style::new().fg(Color::new(255, 160, 160)),
811            Style::new(),
812            Style::new(),
813            Style::new().fg(Color::new(240, 230, 140)),
814            Style::new().fg(Color::new(240, 230, 140)),
815            Style::new(),
816            Style::new().fg(Color::new(240, 230, 140)).bold(),
817            Style::new(),
818            Style::new(),
819            Style::new(),
820            Style::new(),
821            Style::new(),
822            Style::new(),
823            Style::new(),
824            Style::new(),
825            Style::new(),
826            Style::new(),
827            Style::new().fg(Color::new(204, 204, 204)),
828            Style::new().fg(Color::new(152, 251, 152)),
829            Style::new().fg(Color::new(204, 204, 204)),
830            Style::new().fg(Color::new(204, 204, 204)),
831            Style::new().fg(Color::new(204, 204, 204)),
832            Style::new().fg(Color::new(255, 222, 173)),
833            Style::new().fg(Color::new(255, 160, 160)),
834            Style::new().fg(Color::new(255, 222, 173)),
835            Style::new().fg(Color::new(240, 230, 140)),
836            Style::new(),
837            Style::new(),
838            Style::new().fg(Color::new(189, 183, 107)).bold(),
839            Style::new().fg(Color::new(189, 183, 107)),
840            Style::new(),
841            Style::new().fg(Color::new(152, 251, 152)),
842            Style::new().fg(Color::new(255, 160, 160)),
843            Style::new().fg(Color::new(152, 251, 152)),
844            Style::new().fg(Color::new(135, 206, 235)),
845            Style::new(),
846            Style::new().fg(Color::new(205, 92, 92)),
847            Style::new().fg(Color::new(240, 230, 140)),
848            Style::new().fg(Color::new(152, 251, 152)),
849            Style::new().fg(Color::new(255, 160, 160)),
850            Style::new().fg(Color::new(255, 160, 160)),
851            Style::new().fg(Color::new(204, 204, 204)),
852            Style::new().italic(),
853            Style::new().bold(),
854            Style::new().fg(Color::new(135, 206, 235)).underline(),
855            Style::new().fg(Color::new(135, 206, 235)),
856            Style::new().fg(Color::new(255, 222, 173)),
857            Style::new().fg(Color::new(240, 230, 140)).bold(),
858            Style::new().strikethrough(),
859            Style::new().fg(Color::new(204, 204, 204)),
860            Style::new(),
861            Style::new(),
862            Style::new(),
863            Style::new(),
864            Style::new(),
865            Style::new(),
866            Style::new(),
867            Style::new(),
868            Style::new(),
869            Style::new(),
870            Style::new(),
871            Style::new(),
872            Style::new(),
873            Style::new(),
874            Style::new(),
875            Style::new(),
876            Style::new(),
877            Style::new(),
878            Style::new(),
879            Style::new(),
880            Style::new(),
881            Style::new()
882        ],
883    }
884}
885
886/// Dracula theme.
887///
888/// Source: https://draculatheme.com
889pub fn dracula() -> Theme {
890    Theme {
891        name: "Dracula".to_string(),
892        is_dark: true,
893        source_url: Some("https://draculatheme.com".to_string()),
894        background: Some(Color::new(40, 42, 54)),
895        foreground: Some(Color::new(248, 248, 242)),
896        styles: [
897            Style::new().fg(Color::new(80, 250, 123)),
898            Style::new().fg(Color::new(189, 147, 249)),
899            Style::new(),
900            Style::new(),
901            Style::new().fg(Color::new(139, 233, 253)),
902            Style::new().fg(Color::new(80, 250, 123)),
903            Style::new(),
904            Style::new().fg(Color::new(255, 121, 198)),
905            Style::new(),
906            Style::new(),
907            Style::new(),
908            Style::new(),
909            Style::new(),
910            Style::new(),
911            Style::new(),
912            Style::new(),
913            Style::new(),
914            Style::new(),
915            Style::new().fg(Color::new(255, 121, 198)),
916            Style::new().fg(Color::new(139, 233, 253)),
917            Style::new().fg(Color::new(248, 248, 242)),
918            Style::new().fg(Color::new(248, 248, 242)),
919            Style::new().fg(Color::new(248, 248, 242)),
920            Style::new().fg(Color::new(255, 121, 198)),
921            Style::new().fg(Color::new(241, 250, 140)),
922            Style::new().fg(Color::new(255, 85, 85)),
923            Style::new().fg(Color::new(255, 121, 198)),
924            Style::new(),
925            Style::new(),
926            Style::new().fg(Color::new(139, 233, 253)),
927            Style::new().fg(Color::new(139, 233, 253)),
928            Style::new(),
929            Style::new().fg(Color::new(248, 248, 242)),
930            Style::new().fg(Color::new(189, 147, 249)),
931            Style::new().fg(Color::new(255, 184, 108)),
932            Style::new().fg(Color::new(98, 114, 164)),
933            Style::new(),
934            Style::new().fg(Color::new(80, 250, 123)),
935            Style::new().fg(Color::new(139, 233, 253)),
936            Style::new().fg(Color::new(80, 250, 123)),
937            Style::new().fg(Color::new(255, 85, 85)),
938            Style::new().fg(Color::new(189, 147, 249)),
939            Style::new().fg(Color::new(248, 248, 242)),
940            Style::new().italic(),
941            Style::new().bold(),
942            Style::new().fg(Color::new(139, 233, 253)).underline(),
943            Style::new().fg(Color::new(139, 233, 253)),
944            Style::new().fg(Color::new(255, 121, 198)),
945            Style::new().fg(Color::new(189, 147, 249)).bold(),
946            Style::new().strikethrough(),
947            Style::new().fg(Color::new(248, 248, 242)),
948            Style::new(),
949            Style::new(),
950            Style::new(),
951            Style::new(),
952            Style::new(),
953            Style::new(),
954            Style::new(),
955            Style::new(),
956            Style::new(),
957            Style::new(),
958            Style::new(),
959            Style::new(),
960            Style::new(),
961            Style::new(),
962            Style::new(),
963            Style::new(),
964            Style::new(),
965            Style::new(),
966            Style::new(),
967            Style::new(),
968            Style::new(),
969            Style::new()
970        ],
971    }
972}
973
974/// EF Melissa Dark theme.
975///
976/// Source: https://protesilaos.com/emacs/ef-themes
977pub fn ef_melissa_dark() -> Theme {
978    Theme {
979        name: "EF Melissa Dark".to_string(),
980        is_dark: true,
981        source_url: Some("https://protesilaos.com/emacs/ef-themes".to_string()),
982        background: Some(Color::new(53, 39, 24)),
983        foreground: Some(Color::new(232, 228, 177)),
984        styles: [
985            Style::new().fg(Color::new(228, 181, 63)),
986            Style::new().fg(Color::new(111, 202, 208)),
987            Style::new(),
988            Style::new(),
989            Style::new().fg(Color::new(240, 170, 197)),
990            Style::new().fg(Color::new(198, 162, 254)),
991            Style::new(),
992            Style::new().fg(Color::new(255, 162, 31)),
993            Style::new(),
994            Style::new(),
995            Style::new(),
996            Style::new(),
997            Style::new(),
998            Style::new(),
999            Style::new(),
1000            Style::new(),
1001            Style::new(),
1002            Style::new(),
1003            Style::new().fg(Color::new(204, 170, 112)),
1004            Style::new().fg(Color::new(127, 197, 223)),
1005            Style::new().fg(Color::new(144, 145, 138)),
1006            Style::new().fg(Color::new(144, 145, 138)),
1007            Style::new().fg(Color::new(144, 145, 138)),
1008            Style::new().fg(Color::new(255, 127, 127)),
1009            Style::new().fg(Color::new(160, 209, 58)),
1010            Style::new().fg(Color::new(101, 213, 144)),
1011            Style::new().fg(Color::new(231, 160, 111)),
1012            Style::new(),
1013            Style::new(),
1014            Style::new().fg(Color::new(112, 224, 207)),
1015            Style::new().fg(Color::new(111, 202, 208)),
1016            Style::new(),
1017            Style::new().fg(Color::new(232, 228, 177)),
1018            Style::new().fg(Color::new(255, 143, 152)),
1019            Style::new().fg(Color::new(223, 207, 224)),
1020            Style::new().fg(Color::new(144, 145, 138)).italic(),
1021            Style::new(),
1022            Style::new().fg(Color::new(250, 144, 170)),
1023            Style::new().fg(Color::new(152, 191, 255)),
1024            Style::new().fg(Color::new(160, 224, 160)),
1025            Style::new().fg(Color::new(255, 191, 191)),
1026            Style::new().fg(Color::new(98, 207, 239)),
1027            Style::new().fg(Color::new(232, 228, 177)),
1028            Style::new().italic(),
1029            Style::new().bold(),
1030            Style::new().fg(Color::new(87, 175, 246)).underline(),
1031            Style::new().fg(Color::new(127, 197, 223)),
1032            Style::new().fg(Color::new(234, 183, 128)),
1033            Style::new().fg(Color::new(228, 181, 63)).bold(),
1034            Style::new().strikethrough(),
1035            Style::new().fg(Color::new(232, 228, 177)),
1036            Style::new(),
1037            Style::new(),
1038            Style::new(),
1039            Style::new(),
1040            Style::new(),
1041            Style::new(),
1042            Style::new(),
1043            Style::new(),
1044            Style::new(),
1045            Style::new(),
1046            Style::new(),
1047            Style::new(),
1048            Style::new(),
1049            Style::new(),
1050            Style::new(),
1051            Style::new(),
1052            Style::new(),
1053            Style::new(),
1054            Style::new(),
1055            Style::new(),
1056            Style::new(),
1057            Style::new()
1058        ],
1059    }
1060}
1061
1062/// GitHub Dark theme.
1063///
1064/// Source: https://github.com/primer/github-vscode-theme
1065pub fn github_dark() -> Theme {
1066    Theme {
1067        name: "GitHub Dark".to_string(),
1068        is_dark: true,
1069        source_url: Some("https://github.com/primer/github-vscode-theme".to_string()),
1070        background: Some(Color::new(13, 17, 23)),
1071        foreground: Some(Color::new(201, 209, 217)),
1072        styles: [
1073            Style::new().fg(Color::new(121, 192, 255)),
1074            Style::new().fg(Color::new(121, 192, 255)),
1075            Style::new(),
1076            Style::new(),
1077            Style::new().fg(Color::new(210, 168, 255)),
1078            Style::new().fg(Color::new(210, 168, 255)),
1079            Style::new(),
1080            Style::new().fg(Color::new(255, 123, 114)),
1081            Style::new(),
1082            Style::new(),
1083            Style::new(),
1084            Style::new(),
1085            Style::new(),
1086            Style::new(),
1087            Style::new(),
1088            Style::new(),
1089            Style::new(),
1090            Style::new(),
1091            Style::new().fg(Color::new(255, 123, 114)),
1092            Style::new().fg(Color::new(121, 192, 255)),
1093            Style::new().fg(Color::new(201, 209, 217)),
1094            Style::new().fg(Color::new(201, 209, 217)),
1095            Style::new().fg(Color::new(201, 209, 217)),
1096            Style::new().fg(Color::new(121, 192, 255)),
1097            Style::new().fg(Color::new(165, 214, 255)),
1098            Style::new().fg(Color::new(255, 123, 114)),
1099            Style::new().fg(Color::new(126, 231, 135)),
1100            Style::new(),
1101            Style::new(),
1102            Style::new().fg(Color::new(255, 166, 87)),
1103            Style::new().fg(Color::new(255, 166, 87)),
1104            Style::new(),
1105            Style::new().fg(Color::new(201, 209, 217)),
1106            Style::new().fg(Color::new(255, 166, 87)),
1107            Style::new().fg(Color::new(255, 166, 87)),
1108            Style::new().fg(Color::new(139, 148, 158)),
1109            Style::new(),
1110            Style::new().fg(Color::new(121, 192, 255)),
1111            Style::new().fg(Color::new(210, 168, 255)),
1112            Style::new().fg(Color::new(126, 231, 135)),
1113            Style::new().fg(Color::new(255, 123, 114)),
1114            Style::new().fg(Color::new(121, 192, 255)),
1115            Style::new().fg(Color::new(201, 209, 217)),
1116            Style::new().italic(),
1117            Style::new().bold(),
1118            Style::new().fg(Color::new(88, 166, 255)).underline(),
1119            Style::new().fg(Color::new(210, 168, 255)),
1120            Style::new().fg(Color::new(121, 192, 255)),
1121            Style::new().fg(Color::new(210, 168, 255)).bold(),
1122            Style::new().strikethrough(),
1123            Style::new().fg(Color::new(201, 209, 217)),
1124            Style::new(),
1125            Style::new(),
1126            Style::new(),
1127            Style::new(),
1128            Style::new(),
1129            Style::new(),
1130            Style::new(),
1131            Style::new(),
1132            Style::new(),
1133            Style::new(),
1134            Style::new(),
1135            Style::new(),
1136            Style::new(),
1137            Style::new(),
1138            Style::new(),
1139            Style::new(),
1140            Style::new(),
1141            Style::new(),
1142            Style::new(),
1143            Style::new(),
1144            Style::new(),
1145            Style::new()
1146        ],
1147    }
1148}
1149
1150/// GitHub Light theme.
1151///
1152/// Source: https://github.com/primer/github-vscode-theme
1153pub fn github_light() -> Theme {
1154    Theme {
1155        name: "GitHub Light".to_string(),
1156        is_dark: false,
1157        source_url: Some("https://github.com/primer/github-vscode-theme".to_string()),
1158        background: Some(Color::new(255, 255, 255)),
1159        foreground: Some(Color::new(36, 41, 47)),
1160        styles: [
1161            Style::new().fg(Color::new(5, 80, 174)),
1162            Style::new().fg(Color::new(5, 80, 174)),
1163            Style::new(),
1164            Style::new(),
1165            Style::new().fg(Color::new(130, 80, 223)),
1166            Style::new().fg(Color::new(130, 80, 223)),
1167            Style::new(),
1168            Style::new().fg(Color::new(207, 34, 46)),
1169            Style::new(),
1170            Style::new(),
1171            Style::new(),
1172            Style::new(),
1173            Style::new(),
1174            Style::new(),
1175            Style::new(),
1176            Style::new(),
1177            Style::new(),
1178            Style::new(),
1179            Style::new().fg(Color::new(207, 34, 46)),
1180            Style::new().fg(Color::new(5, 80, 174)),
1181            Style::new().fg(Color::new(36, 41, 47)),
1182            Style::new().fg(Color::new(36, 41, 47)),
1183            Style::new().fg(Color::new(36, 41, 47)),
1184            Style::new().fg(Color::new(5, 80, 174)),
1185            Style::new().fg(Color::new(10, 48, 105)),
1186            Style::new().fg(Color::new(207, 34, 46)),
1187            Style::new().fg(Color::new(17, 99, 41)),
1188            Style::new(),
1189            Style::new(),
1190            Style::new().fg(Color::new(149, 56, 0)),
1191            Style::new().fg(Color::new(149, 56, 0)),
1192            Style::new(),
1193            Style::new().fg(Color::new(36, 41, 47)),
1194            Style::new().fg(Color::new(149, 56, 0)),
1195            Style::new().fg(Color::new(149, 56, 0)),
1196            Style::new().fg(Color::new(110, 119, 129)),
1197            Style::new(),
1198            Style::new().fg(Color::new(5, 80, 174)),
1199            Style::new().fg(Color::new(130, 80, 223)),
1200            Style::new().fg(Color::new(17, 99, 41)),
1201            Style::new().fg(Color::new(207, 34, 46)),
1202            Style::new().fg(Color::new(5, 80, 174)),
1203            Style::new().fg(Color::new(36, 41, 47)),
1204            Style::new().italic(),
1205            Style::new().bold(),
1206            Style::new().fg(Color::new(9, 105, 218)).underline(),
1207            Style::new().fg(Color::new(130, 80, 223)),
1208            Style::new().fg(Color::new(5, 80, 174)),
1209            Style::new().fg(Color::new(130, 80, 223)).bold(),
1210            Style::new().strikethrough(),
1211            Style::new().fg(Color::new(36, 41, 47)),
1212            Style::new(),
1213            Style::new(),
1214            Style::new(),
1215            Style::new(),
1216            Style::new(),
1217            Style::new(),
1218            Style::new(),
1219            Style::new(),
1220            Style::new(),
1221            Style::new(),
1222            Style::new(),
1223            Style::new(),
1224            Style::new(),
1225            Style::new(),
1226            Style::new(),
1227            Style::new(),
1228            Style::new(),
1229            Style::new(),
1230            Style::new(),
1231            Style::new(),
1232            Style::new(),
1233            Style::new()
1234        ],
1235    }
1236}
1237
1238/// Gruvbox Dark theme.
1239///
1240/// Source: https://github.com/morhetz/gruvbox
1241pub fn gruvbox_dark() -> Theme {
1242    Theme {
1243        name: "Gruvbox Dark".to_string(),
1244        is_dark: true,
1245        source_url: Some("https://github.com/morhetz/gruvbox".to_string()),
1246        background: Some(Color::new(40, 40, 40)),
1247        foreground: Some(Color::new(235, 219, 178)),
1248        styles: [
1249            Style::new().fg(Color::new(250, 189, 47)),
1250            Style::new().fg(Color::new(211, 134, 155)),
1251            Style::new(),
1252            Style::new(),
1253            Style::new().fg(Color::new(142, 192, 124)),
1254            Style::new().fg(Color::new(142, 192, 124)),
1255            Style::new(),
1256            Style::new().fg(Color::new(251, 73, 52)),
1257            Style::new(),
1258            Style::new(),
1259            Style::new(),
1260            Style::new(),
1261            Style::new(),
1262            Style::new(),
1263            Style::new(),
1264            Style::new(),
1265            Style::new(),
1266            Style::new(),
1267            Style::new().fg(Color::new(235, 219, 178)),
1268            Style::new().fg(Color::new(131, 165, 152)),
1269            Style::new().fg(Color::new(235, 219, 178)),
1270            Style::new().fg(Color::new(235, 219, 178)),
1271            Style::new().fg(Color::new(235, 219, 178)),
1272            Style::new().fg(Color::new(254, 128, 25)),
1273            Style::new().fg(Color::new(184, 187, 38)),
1274            Style::new().fg(Color::new(254, 128, 25)),
1275            Style::new().fg(Color::new(251, 73, 52)),
1276            Style::new(),
1277            Style::new(),
1278            Style::new().fg(Color::new(250, 189, 47)),
1279            Style::new().fg(Color::new(250, 189, 47)),
1280            Style::new(),
1281            Style::new().fg(Color::new(235, 219, 178)),
1282            Style::new().fg(Color::new(254, 128, 25)),
1283            Style::new().fg(Color::new(131, 165, 152)),
1284            Style::new().fg(Color::new(146, 131, 116)),
1285            Style::new(),
1286            Style::new().fg(Color::new(142, 192, 124)),
1287            Style::new().fg(Color::new(251, 73, 52)),
1288            Style::new().fg(Color::new(184, 187, 38)),
1289            Style::new().fg(Color::new(251, 73, 52)),
1290            Style::new().fg(Color::new(211, 134, 155)),
1291            Style::new().fg(Color::new(235, 219, 178)),
1292            Style::new().italic(),
1293            Style::new().bold(),
1294            Style::new().fg(Color::new(131, 165, 152)).underline(),
1295            Style::new().fg(Color::new(142, 192, 124)),
1296            Style::new().fg(Color::new(254, 128, 25)),
1297            Style::new().fg(Color::new(184, 187, 38)).bold(),
1298            Style::new().strikethrough(),
1299            Style::new().fg(Color::new(235, 219, 178)),
1300            Style::new(),
1301            Style::new(),
1302            Style::new(),
1303            Style::new(),
1304            Style::new(),
1305            Style::new(),
1306            Style::new(),
1307            Style::new(),
1308            Style::new(),
1309            Style::new(),
1310            Style::new(),
1311            Style::new(),
1312            Style::new(),
1313            Style::new(),
1314            Style::new(),
1315            Style::new(),
1316            Style::new(),
1317            Style::new(),
1318            Style::new(),
1319            Style::new(),
1320            Style::new(),
1321            Style::new()
1322        ],
1323    }
1324}
1325
1326/// Gruvbox Light theme.
1327///
1328/// Source: https://github.com/morhetz/gruvbox
1329pub fn gruvbox_light() -> Theme {
1330    Theme {
1331        name: "Gruvbox Light".to_string(),
1332        is_dark: false,
1333        source_url: Some("https://github.com/morhetz/gruvbox".to_string()),
1334        background: Some(Color::new(251, 241, 199)),
1335        foreground: Some(Color::new(60, 56, 54)),
1336        styles: [
1337            Style::new().fg(Color::new(181, 118, 20)),
1338            Style::new().fg(Color::new(143, 63, 113)),
1339            Style::new(),
1340            Style::new(),
1341            Style::new().fg(Color::new(66, 123, 88)),
1342            Style::new().fg(Color::new(66, 123, 88)),
1343            Style::new(),
1344            Style::new().fg(Color::new(157, 0, 6)),
1345            Style::new(),
1346            Style::new(),
1347            Style::new(),
1348            Style::new(),
1349            Style::new(),
1350            Style::new(),
1351            Style::new(),
1352            Style::new(),
1353            Style::new(),
1354            Style::new(),
1355            Style::new().fg(Color::new(60, 56, 54)),
1356            Style::new().fg(Color::new(7, 102, 120)),
1357            Style::new().fg(Color::new(60, 56, 54)),
1358            Style::new().fg(Color::new(60, 56, 54)),
1359            Style::new().fg(Color::new(60, 56, 54)),
1360            Style::new().fg(Color::new(175, 58, 3)),
1361            Style::new().fg(Color::new(121, 116, 14)),
1362            Style::new().fg(Color::new(175, 58, 3)),
1363            Style::new().fg(Color::new(157, 0, 6)),
1364            Style::new(),
1365            Style::new(),
1366            Style::new().fg(Color::new(181, 118, 20)),
1367            Style::new().fg(Color::new(181, 118, 20)),
1368            Style::new(),
1369            Style::new().fg(Color::new(60, 56, 54)),
1370            Style::new().fg(Color::new(175, 58, 3)),
1371            Style::new().fg(Color::new(7, 102, 120)),
1372            Style::new().fg(Color::new(146, 131, 116)),
1373            Style::new(),
1374            Style::new().fg(Color::new(66, 123, 88)),
1375            Style::new().fg(Color::new(157, 0, 6)),
1376            Style::new().fg(Color::new(121, 116, 14)),
1377            Style::new().fg(Color::new(157, 0, 6)),
1378            Style::new().fg(Color::new(143, 63, 113)),
1379            Style::new().fg(Color::new(60, 56, 54)),
1380            Style::new().italic(),
1381            Style::new().bold(),
1382            Style::new().fg(Color::new(7, 102, 120)).underline(),
1383            Style::new().fg(Color::new(66, 123, 88)),
1384            Style::new().fg(Color::new(175, 58, 3)),
1385            Style::new().fg(Color::new(121, 116, 14)).bold(),
1386            Style::new().strikethrough(),
1387            Style::new().fg(Color::new(60, 56, 54)),
1388            Style::new(),
1389            Style::new(),
1390            Style::new(),
1391            Style::new(),
1392            Style::new(),
1393            Style::new(),
1394            Style::new(),
1395            Style::new(),
1396            Style::new(),
1397            Style::new(),
1398            Style::new(),
1399            Style::new(),
1400            Style::new(),
1401            Style::new(),
1402            Style::new(),
1403            Style::new(),
1404            Style::new(),
1405            Style::new(),
1406            Style::new(),
1407            Style::new(),
1408            Style::new(),
1409            Style::new()
1410        ],
1411    }
1412}
1413
1414/// Kanagawa Dragon theme.
1415///
1416/// Source: https://github.com/rebelot/kanagawa.nvim
1417pub fn kanagawa_dragon() -> Theme {
1418    Theme {
1419        name: "Kanagawa Dragon".to_string(),
1420        is_dark: true,
1421        source_url: Some("https://github.com/rebelot/kanagawa.nvim".to_string()),
1422        background: Some(Color::new(24, 22, 22)),
1423        foreground: Some(Color::new(197, 201, 197)),
1424        styles: [
1425            Style::new().fg(Color::new(196, 178, 138)),
1426            Style::new().fg(Color::new(182, 146, 123)),
1427            Style::new(),
1428            Style::new(),
1429            Style::new().fg(Color::new(122, 168, 159)),
1430            Style::new().fg(Color::new(139, 164, 176)),
1431            Style::new(),
1432            Style::new().fg(Color::new(196, 116, 110)),
1433            Style::new(),
1434            Style::new(),
1435            Style::new(),
1436            Style::new(),
1437            Style::new(),
1438            Style::new(),
1439            Style::new(),
1440            Style::new(),
1441            Style::new(),
1442            Style::new(),
1443            Style::new().fg(Color::new(196, 116, 110)),
1444            Style::new().fg(Color::new(196, 178, 138)),
1445            Style::new().fg(Color::new(197, 201, 197)),
1446            Style::new().fg(Color::new(197, 201, 197)),
1447            Style::new().fg(Color::new(197, 201, 197)),
1448            Style::new().fg(Color::new(122, 168, 159)),
1449            Style::new().fg(Color::new(138, 154, 123)),
1450            Style::new().fg(Color::new(162, 146, 163)),
1451            Style::new().fg(Color::new(196, 116, 110)),
1452            Style::new(),
1453            Style::new(),
1454            Style::new().fg(Color::new(142, 164, 162)),
1455            Style::new().fg(Color::new(142, 164, 162)),
1456            Style::new(),
1457            Style::new().fg(Color::new(197, 201, 197)),
1458            Style::new().fg(Color::new(196, 116, 110)),
1459            Style::new().fg(Color::new(156, 156, 156)),
1460            Style::new().fg(Color::new(98, 94, 90)),
1461            Style::new(),
1462            Style::new().fg(Color::new(122, 168, 159)),
1463            Style::new().fg(Color::new(162, 146, 163)),
1464            Style::new().fg(Color::new(138, 154, 123)),
1465            Style::new().fg(Color::new(196, 116, 110)),
1466            Style::new().fg(Color::new(162, 146, 163)),
1467            Style::new().fg(Color::new(197, 201, 197)),
1468            Style::new().italic(),
1469            Style::new().bold(),
1470            Style::new().fg(Color::new(139, 164, 176)).underline(),
1471            Style::new().fg(Color::new(122, 168, 159)),
1472            Style::new().fg(Color::new(162, 146, 163)),
1473            Style::new().fg(Color::new(142, 164, 162)).bold(),
1474            Style::new().strikethrough(),
1475            Style::new().fg(Color::new(197, 201, 197)),
1476            Style::new(),
1477            Style::new(),
1478            Style::new(),
1479            Style::new(),
1480            Style::new(),
1481            Style::new(),
1482            Style::new(),
1483            Style::new(),
1484            Style::new(),
1485            Style::new(),
1486            Style::new(),
1487            Style::new(),
1488            Style::new(),
1489            Style::new(),
1490            Style::new(),
1491            Style::new(),
1492            Style::new(),
1493            Style::new(),
1494            Style::new(),
1495            Style::new(),
1496            Style::new(),
1497            Style::new()
1498        ],
1499    }
1500}
1501
1502/// Light Owl theme.
1503///
1504/// Source: https://github.com/sdras/night-owl-vscode-theme
1505pub fn light_owl() -> Theme {
1506    Theme {
1507        name: "Light Owl".to_string(),
1508        is_dark: false,
1509        source_url: Some("https://github.com/sdras/night-owl-vscode-theme".to_string()),
1510        background: Some(Color::new(251, 251, 251)),
1511        foreground: Some(Color::new(64, 63, 83)),
1512        styles: [
1513            Style::new().fg(Color::new(72, 118, 214)).italic(),
1514            Style::new().fg(Color::new(72, 118, 214)),
1515            Style::new(),
1516            Style::new(),
1517            Style::new().fg(Color::new(72, 118, 214)).italic(),
1518            Style::new().fg(Color::new(72, 118, 214)).italic(),
1519            Style::new(),
1520            Style::new().fg(Color::new(153, 76, 195)).italic(),
1521            Style::new(),
1522            Style::new(),
1523            Style::new(),
1524            Style::new(),
1525            Style::new(),
1526            Style::new(),
1527            Style::new(),
1528            Style::new(),
1529            Style::new(),
1530            Style::new(),
1531            Style::new().fg(Color::new(12, 150, 155)),
1532            Style::new().fg(Color::new(72, 118, 214)),
1533            Style::new().fg(Color::new(64, 63, 83)),
1534            Style::new().fg(Color::new(64, 63, 83)),
1535            Style::new().fg(Color::new(64, 63, 83)),
1536            Style::new().fg(Color::new(12, 150, 155)),
1537            Style::new().fg(Color::new(201, 103, 101)),
1538            Style::new().fg(Color::new(92, 167, 228)),
1539            Style::new().fg(Color::new(153, 76, 195)),
1540            Style::new(),
1541            Style::new(),
1542            Style::new().fg(Color::new(17, 17, 17)),
1543            Style::new().fg(Color::new(17, 17, 17)),
1544            Style::new(),
1545            Style::new().fg(Color::new(64, 63, 83)),
1546            Style::new().fg(Color::new(188, 84, 84)),
1547            Style::new().fg(Color::new(64, 63, 83)),
1548            Style::new().fg(Color::new(152, 159, 177)).italic(),
1549            Style::new(),
1550            Style::new().fg(Color::new(153, 76, 195)),
1551            Style::new().fg(Color::new(12, 150, 155)),
1552            Style::new().fg(Color::new(12, 150, 155)),
1553            Style::new().fg(Color::new(230, 77, 73)),
1554            Style::new().fg(Color::new(170, 9, 130)),
1555            Style::new().fg(Color::new(64, 63, 83)),
1556            Style::new().italic(),
1557            Style::new().bold(),
1558            Style::new().fg(Color::new(72, 118, 214)).underline(),
1559            Style::new().fg(Color::new(72, 118, 214)),
1560            Style::new().fg(Color::new(12, 150, 155)),
1561            Style::new().fg(Color::new(153, 76, 195)).bold(),
1562            Style::new().strikethrough(),
1563            Style::new().fg(Color::new(64, 63, 83)),
1564            Style::new(),
1565            Style::new(),
1566            Style::new(),
1567            Style::new(),
1568            Style::new(),
1569            Style::new(),
1570            Style::new(),
1571            Style::new(),
1572            Style::new(),
1573            Style::new(),
1574            Style::new(),
1575            Style::new(),
1576            Style::new(),
1577            Style::new(),
1578            Style::new(),
1579            Style::new(),
1580            Style::new(),
1581            Style::new(),
1582            Style::new(),
1583            Style::new(),
1584            Style::new(),
1585            Style::new()
1586        ],
1587    }
1588}
1589
1590/// Lucius Light theme.
1591///
1592/// Source: https://github.com/jonathanfilip/vim-lucius
1593pub fn lucius_light() -> Theme {
1594    Theme {
1595        name: "Lucius Light".to_string(),
1596        is_dark: false,
1597        source_url: Some("https://github.com/jonathanfilip/vim-lucius".to_string()),
1598        background: Some(Color::new(238, 238, 238)),
1599        foreground: Some(Color::new(68, 68, 68)),
1600        styles: [
1601            Style::new().fg(Color::new(0, 135, 135)),
1602            Style::new().fg(Color::new(175, 95, 0)),
1603            Style::new(),
1604            Style::new(),
1605            Style::new().fg(Color::new(0, 135, 0)),
1606            Style::new().fg(Color::new(0, 135, 0)),
1607            Style::new(),
1608            Style::new().fg(Color::new(0, 95, 175)),
1609            Style::new(),
1610            Style::new(),
1611            Style::new(),
1612            Style::new(),
1613            Style::new(),
1614            Style::new(),
1615            Style::new(),
1616            Style::new(),
1617            Style::new(),
1618            Style::new(),
1619            Style::new().fg(Color::new(0, 95, 175)),
1620            Style::new().fg(Color::new(0, 135, 0)),
1621            Style::new().fg(Color::new(68, 68, 68)),
1622            Style::new().fg(Color::new(68, 68, 68)),
1623            Style::new().fg(Color::new(68, 68, 68)),
1624            Style::new().fg(Color::new(135, 0, 135)),
1625            Style::new().fg(Color::new(175, 95, 0)),
1626            Style::new().fg(Color::new(135, 0, 135)),
1627            Style::new().fg(Color::new(0, 95, 175)),
1628            Style::new(),
1629            Style::new(),
1630            Style::new().fg(Color::new(0, 95, 135)),
1631            Style::new().fg(Color::new(0, 95, 135)),
1632            Style::new(),
1633            Style::new().fg(Color::new(68, 68, 68)),
1634            Style::new().fg(Color::new(135, 0, 135)),
1635            Style::new().fg(Color::new(68, 68, 68)),
1636            Style::new().fg(Color::new(128, 128, 128)).italic(),
1637            Style::new(),
1638            Style::new().fg(Color::new(0, 135, 135)),
1639            Style::new().fg(Color::new(0, 135, 135)),
1640            Style::new().fg(Color::new(0, 135, 0)),
1641            Style::new().fg(Color::new(175, 0, 0)),
1642            Style::new().fg(Color::new(175, 95, 0)),
1643            Style::new().fg(Color::new(68, 68, 68)),
1644            Style::new().italic(),
1645            Style::new().bold(),
1646            Style::new().fg(Color::new(0, 95, 175)).underline(),
1647            Style::new().fg(Color::new(0, 95, 175)),
1648            Style::new().fg(Color::new(0, 135, 135)),
1649            Style::new().fg(Color::new(0, 95, 175)).bold(),
1650            Style::new().strikethrough(),
1651            Style::new().fg(Color::new(68, 68, 68)),
1652            Style::new(),
1653            Style::new(),
1654            Style::new(),
1655            Style::new(),
1656            Style::new(),
1657            Style::new(),
1658            Style::new(),
1659            Style::new(),
1660            Style::new(),
1661            Style::new(),
1662            Style::new(),
1663            Style::new(),
1664            Style::new(),
1665            Style::new(),
1666            Style::new(),
1667            Style::new(),
1668            Style::new(),
1669            Style::new(),
1670            Style::new(),
1671            Style::new(),
1672            Style::new(),
1673            Style::new()
1674        ],
1675    }
1676}
1677
1678/// Melange Dark theme.
1679///
1680/// Source: https://github.com/savq/melange-nvim
1681pub fn melange_dark() -> Theme {
1682    Theme {
1683        name: "Melange Dark".to_string(),
1684        is_dark: true,
1685        source_url: Some("https://github.com/savq/melange-nvim".to_string()),
1686        background: Some(Color::new(41, 37, 34)),
1687        foreground: Some(Color::new(236, 225, 215)),
1688        styles: [
1689            Style::new().fg(Color::new(193, 167, 142)),
1690            Style::new().fg(Color::new(207, 155, 194)),
1691            Style::new(),
1692            Style::new(),
1693            Style::new().fg(Color::new(163, 169, 206)),
1694            Style::new().fg(Color::new(163, 169, 206)),
1695            Style::new(),
1696            Style::new().fg(Color::new(189, 129, 131)),
1697            Style::new(),
1698            Style::new(),
1699            Style::new(),
1700            Style::new(),
1701            Style::new(),
1702            Style::new(),
1703            Style::new(),
1704            Style::new(),
1705            Style::new(),
1706            Style::new(),
1707            Style::new().fg(Color::new(189, 129, 131)),
1708            Style::new().fg(Color::new(193, 167, 142)),
1709            Style::new().fg(Color::new(236, 225, 215)),
1710            Style::new().fg(Color::new(236, 225, 215)),
1711            Style::new().fg(Color::new(236, 225, 215)),
1712            Style::new().fg(Color::new(207, 155, 194)),
1713            Style::new().fg(Color::new(133, 182, 149)),
1714            Style::new().fg(Color::new(212, 119, 102)),
1715            Style::new().fg(Color::new(189, 129, 131)),
1716            Style::new(),
1717            Style::new(),
1718            Style::new().fg(Color::new(193, 167, 142)),
1719            Style::new().fg(Color::new(193, 167, 142)),
1720            Style::new(),
1721            Style::new().fg(Color::new(236, 225, 215)),
1722            Style::new().fg(Color::new(212, 119, 102)),
1723            Style::new().fg(Color::new(193, 167, 142)),
1724            Style::new().fg(Color::new(134, 116, 98)).italic(),
1725            Style::new(),
1726            Style::new().fg(Color::new(163, 169, 206)),
1727            Style::new().fg(Color::new(207, 155, 194)),
1728            Style::new().fg(Color::new(133, 182, 149)),
1729            Style::new().fg(Color::new(212, 119, 102)),
1730            Style::new().fg(Color::new(207, 155, 194)),
1731            Style::new().fg(Color::new(236, 225, 215)),
1732            Style::new().italic(),
1733            Style::new().bold(),
1734            Style::new().fg(Color::new(163, 169, 206)).underline(),
1735            Style::new().fg(Color::new(163, 169, 206)),
1736            Style::new().fg(Color::new(235, 192, 109)),
1737            Style::new().fg(Color::new(193, 167, 142)).bold(),
1738            Style::new().strikethrough(),
1739            Style::new().fg(Color::new(236, 225, 215)),
1740            Style::new(),
1741            Style::new(),
1742            Style::new(),
1743            Style::new(),
1744            Style::new(),
1745            Style::new(),
1746            Style::new(),
1747            Style::new(),
1748            Style::new(),
1749            Style::new(),
1750            Style::new(),
1751            Style::new(),
1752            Style::new(),
1753            Style::new(),
1754            Style::new(),
1755            Style::new(),
1756            Style::new(),
1757            Style::new(),
1758            Style::new(),
1759            Style::new(),
1760            Style::new(),
1761            Style::new()
1762        ],
1763    }
1764}
1765
1766/// Melange Light theme.
1767///
1768/// Source: https://github.com/savq/melange-nvim
1769pub fn melange_light() -> Theme {
1770    Theme {
1771        name: "Melange Light".to_string(),
1772        is_dark: false,
1773        source_url: Some("https://github.com/savq/melange-nvim".to_string()),
1774        background: Some(Color::new(241, 241, 241)),
1775        foreground: Some(Color::new(84, 67, 58)),
1776        styles: [
1777            Style::new().fg(Color::new(188, 92, 0)),
1778            Style::new().fg(Color::new(144, 65, 128)),
1779            Style::new(),
1780            Style::new(),
1781            Style::new().fg(Color::new(70, 90, 164)),
1782            Style::new().fg(Color::new(70, 90, 164)),
1783            Style::new(),
1784            Style::new().fg(Color::new(188, 92, 0)),
1785            Style::new(),
1786            Style::new(),
1787            Style::new(),
1788            Style::new(),
1789            Style::new(),
1790            Style::new(),
1791            Style::new(),
1792            Style::new(),
1793            Style::new(),
1794            Style::new(),
1795            Style::new().fg(Color::new(188, 92, 0)),
1796            Style::new().fg(Color::new(188, 92, 0)),
1797            Style::new().fg(Color::new(84, 67, 58)),
1798            Style::new().fg(Color::new(84, 67, 58)),
1799            Style::new().fg(Color::new(84, 67, 58)),
1800            Style::new().fg(Color::new(144, 65, 128)),
1801            Style::new().fg(Color::new(58, 104, 74)),
1802            Style::new().fg(Color::new(191, 0, 33)),
1803            Style::new().fg(Color::new(188, 92, 0)),
1804            Style::new(),
1805            Style::new(),
1806            Style::new().fg(Color::new(188, 92, 0)),
1807            Style::new().fg(Color::new(188, 92, 0)),
1808            Style::new(),
1809            Style::new().fg(Color::new(84, 67, 58)),
1810            Style::new().fg(Color::new(191, 0, 33)),
1811            Style::new().fg(Color::new(188, 92, 0)),
1812            Style::new().fg(Color::new(125, 102, 88)).italic(),
1813            Style::new(),
1814            Style::new().fg(Color::new(70, 90, 164)),
1815            Style::new().fg(Color::new(144, 65, 128)),
1816            Style::new().fg(Color::new(58, 104, 74)),
1817            Style::new().fg(Color::new(191, 0, 33)),
1818            Style::new().fg(Color::new(144, 65, 128)),
1819            Style::new().fg(Color::new(84, 67, 58)),
1820            Style::new().italic(),
1821            Style::new().bold(),
1822            Style::new().fg(Color::new(70, 90, 164)).underline(),
1823            Style::new().fg(Color::new(70, 90, 164)),
1824            Style::new().fg(Color::new(160, 109, 0)),
1825            Style::new().fg(Color::new(188, 92, 0)).bold(),
1826            Style::new().strikethrough(),
1827            Style::new().fg(Color::new(84, 67, 58)),
1828            Style::new(),
1829            Style::new(),
1830            Style::new(),
1831            Style::new(),
1832            Style::new(),
1833            Style::new(),
1834            Style::new(),
1835            Style::new(),
1836            Style::new(),
1837            Style::new(),
1838            Style::new(),
1839            Style::new(),
1840            Style::new(),
1841            Style::new(),
1842            Style::new(),
1843            Style::new(),
1844            Style::new(),
1845            Style::new(),
1846            Style::new(),
1847            Style::new(),
1848            Style::new(),
1849            Style::new()
1850        ],
1851    }
1852}
1853
1854/// Monokai theme.
1855///
1856/// Source: https://monokai.pro
1857pub fn monokai() -> Theme {
1858    Theme {
1859        name: "Monokai".to_string(),
1860        is_dark: true,
1861        source_url: Some("https://monokai.pro".to_string()),
1862        background: Some(Color::new(45, 42, 46)),
1863        foreground: Some(Color::new(252, 252, 250)),
1864        styles: [
1865            Style::new().fg(Color::new(169, 220, 118)),
1866            Style::new().fg(Color::new(171, 157, 242)),
1867            Style::new(),
1868            Style::new(),
1869            Style::new().fg(Color::new(120, 220, 232)),
1870            Style::new().fg(Color::new(169, 220, 118)),
1871            Style::new(),
1872            Style::new().fg(Color::new(255, 97, 136)),
1873            Style::new(),
1874            Style::new(),
1875            Style::new(),
1876            Style::new(),
1877            Style::new(),
1878            Style::new(),
1879            Style::new(),
1880            Style::new(),
1881            Style::new(),
1882            Style::new(),
1883            Style::new().fg(Color::new(255, 97, 136)),
1884            Style::new().fg(Color::new(120, 220, 232)),
1885            Style::new().fg(Color::new(252, 252, 250)),
1886            Style::new().fg(Color::new(252, 252, 250)),
1887            Style::new().fg(Color::new(252, 252, 250)),
1888            Style::new().fg(Color::new(255, 97, 136)),
1889            Style::new().fg(Color::new(255, 216, 102)),
1890            Style::new().fg(Color::new(171, 157, 242)),
1891            Style::new().fg(Color::new(255, 97, 136)),
1892            Style::new(),
1893            Style::new(),
1894            Style::new().fg(Color::new(120, 220, 232)),
1895            Style::new().fg(Color::new(120, 220, 232)),
1896            Style::new(),
1897            Style::new().fg(Color::new(252, 252, 250)),
1898            Style::new().fg(Color::new(171, 157, 242)),
1899            Style::new().fg(Color::new(252, 152, 103)),
1900            Style::new().fg(Color::new(114, 112, 114)),
1901            Style::new(),
1902            Style::new().fg(Color::new(120, 220, 232)),
1903            Style::new().fg(Color::new(255, 97, 136)),
1904            Style::new().fg(Color::new(169, 220, 118)),
1905            Style::new().fg(Color::new(255, 97, 136)),
1906            Style::new().fg(Color::new(171, 157, 242)),
1907            Style::new().fg(Color::new(252, 252, 250)),
1908            Style::new().italic(),
1909            Style::new().bold(),
1910            Style::new().fg(Color::new(120, 220, 232)).underline(),
1911            Style::new().fg(Color::new(120, 220, 232)),
1912            Style::new().fg(Color::new(171, 157, 242)),
1913            Style::new().fg(Color::new(255, 216, 102)).bold(),
1914            Style::new().strikethrough(),
1915            Style::new().fg(Color::new(252, 252, 250)),
1916            Style::new(),
1917            Style::new(),
1918            Style::new(),
1919            Style::new(),
1920            Style::new(),
1921            Style::new(),
1922            Style::new(),
1923            Style::new(),
1924            Style::new(),
1925            Style::new(),
1926            Style::new(),
1927            Style::new(),
1928            Style::new(),
1929            Style::new(),
1930            Style::new(),
1931            Style::new(),
1932            Style::new(),
1933            Style::new(),
1934            Style::new(),
1935            Style::new(),
1936            Style::new(),
1937            Style::new()
1938        ],
1939    }
1940}
1941
1942/// Nord theme.
1943///
1944/// Source: https://www.nordtheme.com
1945pub fn nord() -> Theme {
1946    Theme {
1947        name: "Nord".to_string(),
1948        is_dark: true,
1949        source_url: Some("https://www.nordtheme.com".to_string()),
1950        background: Some(Color::new(46, 52, 64)),
1951        foreground: Some(Color::new(236, 239, 244)),
1952        styles: [
1953            Style::new().fg(Color::new(143, 188, 187)),
1954            Style::new().fg(Color::new(180, 142, 173)),
1955            Style::new(),
1956            Style::new(),
1957            Style::new().fg(Color::new(136, 192, 208)),
1958            Style::new().fg(Color::new(136, 192, 208)),
1959            Style::new(),
1960            Style::new().fg(Color::new(129, 161, 193)),
1961            Style::new(),
1962            Style::new(),
1963            Style::new(),
1964            Style::new(),
1965            Style::new(),
1966            Style::new(),
1967            Style::new(),
1968            Style::new(),
1969            Style::new(),
1970            Style::new(),
1971            Style::new().fg(Color::new(129, 161, 193)),
1972            Style::new().fg(Color::new(136, 192, 208)),
1973            Style::new().fg(Color::new(236, 239, 244)),
1974            Style::new().fg(Color::new(236, 239, 244)),
1975            Style::new().fg(Color::new(236, 239, 244)),
1976            Style::new().fg(Color::new(208, 135, 112)),
1977            Style::new().fg(Color::new(163, 190, 140)),
1978            Style::new().fg(Color::new(191, 97, 106)),
1979            Style::new().fg(Color::new(129, 161, 193)),
1980            Style::new(),
1981            Style::new(),
1982            Style::new().fg(Color::new(143, 188, 187)),
1983            Style::new().fg(Color::new(143, 188, 187)),
1984            Style::new(),
1985            Style::new().fg(Color::new(236, 239, 244)),
1986            Style::new().fg(Color::new(191, 97, 106)),
1987            Style::new().fg(Color::new(208, 135, 112)),
1988            Style::new().fg(Color::new(97, 110, 136)),
1989            Style::new(),
1990            Style::new().fg(Color::new(94, 129, 172)),
1991            Style::new().fg(Color::new(208, 135, 112)),
1992            Style::new().fg(Color::new(163, 190, 140)),
1993            Style::new().fg(Color::new(191, 97, 106)),
1994            Style::new().fg(Color::new(180, 142, 173)),
1995            Style::new().fg(Color::new(236, 239, 244)),
1996            Style::new().italic(),
1997            Style::new().bold(),
1998            Style::new().fg(Color::new(136, 192, 208)).underline(),
1999            Style::new().fg(Color::new(136, 192, 208)),
2000            Style::new().fg(Color::new(235, 203, 139)),
2001            Style::new().fg(Color::new(129, 161, 193)).bold(),
2002            Style::new().strikethrough(),
2003            Style::new().fg(Color::new(236, 239, 244)),
2004            Style::new(),
2005            Style::new(),
2006            Style::new(),
2007            Style::new(),
2008            Style::new(),
2009            Style::new(),
2010            Style::new(),
2011            Style::new(),
2012            Style::new(),
2013            Style::new(),
2014            Style::new(),
2015            Style::new(),
2016            Style::new(),
2017            Style::new(),
2018            Style::new(),
2019            Style::new(),
2020            Style::new(),
2021            Style::new(),
2022            Style::new(),
2023            Style::new(),
2024            Style::new(),
2025            Style::new()
2026        ],
2027    }
2028}
2029
2030/// One Dark theme.
2031///
2032/// Source: https://github.com/atom/one-dark-syntax
2033pub fn one_dark() -> Theme {
2034    Theme {
2035        name: "One Dark".to_string(),
2036        is_dark: true,
2037        source_url: Some("https://github.com/atom/one-dark-syntax".to_string()),
2038        background: Some(Color::new(40, 44, 52)),
2039        foreground: Some(Color::new(171, 178, 191)),
2040        styles: [
2041            Style::new().fg(Color::new(209, 154, 102)),
2042            Style::new().fg(Color::new(209, 154, 102)),
2043            Style::new(),
2044            Style::new(),
2045            Style::new().fg(Color::new(86, 182, 194)),
2046            Style::new().fg(Color::new(97, 175, 239)),
2047            Style::new(),
2048            Style::new().fg(Color::new(198, 120, 221)),
2049            Style::new(),
2050            Style::new(),
2051            Style::new(),
2052            Style::new(),
2053            Style::new(),
2054            Style::new(),
2055            Style::new(),
2056            Style::new(),
2057            Style::new(),
2058            Style::new(),
2059            Style::new().fg(Color::new(86, 182, 194)),
2060            Style::new().fg(Color::new(224, 108, 117)),
2061            Style::new().fg(Color::new(171, 178, 191)),
2062            Style::new().fg(Color::new(171, 178, 191)),
2063            Style::new().fg(Color::new(171, 178, 191)),
2064            Style::new().fg(Color::new(198, 120, 221)),
2065            Style::new().fg(Color::new(152, 195, 121)),
2066            Style::new().fg(Color::new(224, 108, 117)),
2067            Style::new().fg(Color::new(224, 108, 117)),
2068            Style::new(),
2069            Style::new(),
2070            Style::new().fg(Color::new(229, 192, 123)),
2071            Style::new().fg(Color::new(229, 192, 123)),
2072            Style::new(),
2073            Style::new().fg(Color::new(171, 178, 191)),
2074            Style::new().fg(Color::new(224, 108, 117)),
2075            Style::new().fg(Color::new(209, 154, 102)),
2076            Style::new().fg(Color::new(92, 99, 112)),
2077            Style::new(),
2078            Style::new().fg(Color::new(86, 182, 194)),
2079            Style::new().fg(Color::new(224, 108, 117)),
2080            Style::new().fg(Color::new(152, 195, 121)),
2081            Style::new().fg(Color::new(224, 108, 117)),
2082            Style::new().fg(Color::new(209, 154, 102)),
2083            Style::new().fg(Color::new(171, 178, 191)),
2084            Style::new().italic(),
2085            Style::new().bold(),
2086            Style::new().fg(Color::new(97, 175, 239)).underline(),
2087            Style::new().fg(Color::new(86, 182, 194)),
2088            Style::new().fg(Color::new(86, 182, 194)),
2089            Style::new().fg(Color::new(224, 108, 117)).bold(),
2090            Style::new().strikethrough(),
2091            Style::new().fg(Color::new(171, 178, 191)),
2092            Style::new(),
2093            Style::new(),
2094            Style::new(),
2095            Style::new(),
2096            Style::new(),
2097            Style::new(),
2098            Style::new(),
2099            Style::new(),
2100            Style::new(),
2101            Style::new(),
2102            Style::new(),
2103            Style::new(),
2104            Style::new(),
2105            Style::new(),
2106            Style::new(),
2107            Style::new(),
2108            Style::new(),
2109            Style::new(),
2110            Style::new(),
2111            Style::new(),
2112            Style::new(),
2113            Style::new()
2114        ],
2115    }
2116}
2117
2118/// Rosé Pine Moon theme.
2119///
2120/// Source: https://rosepinetheme.com
2121pub fn rose_pine_moon() -> Theme {
2122    Theme {
2123        name: "Rosé Pine Moon".to_string(),
2124        is_dark: true,
2125        source_url: Some("https://rosepinetheme.com".to_string()),
2126        background: Some(Color::new(35, 33, 54)),
2127        foreground: Some(Color::new(224, 222, 244)),
2128        styles: [
2129            Style::new().fg(Color::new(246, 193, 119)),
2130            Style::new().fg(Color::new(246, 193, 119)),
2131            Style::new(),
2132            Style::new(),
2133            Style::new().fg(Color::new(156, 207, 216)),
2134            Style::new().fg(Color::new(234, 154, 151)),
2135            Style::new(),
2136            Style::new().fg(Color::new(62, 143, 176)),
2137            Style::new(),
2138            Style::new(),
2139            Style::new(),
2140            Style::new(),
2141            Style::new(),
2142            Style::new(),
2143            Style::new(),
2144            Style::new(),
2145            Style::new(),
2146            Style::new(),
2147            Style::new().fg(Color::new(144, 140, 170)),
2148            Style::new().fg(Color::new(156, 207, 216)),
2149            Style::new().fg(Color::new(144, 140, 170)),
2150            Style::new().fg(Color::new(144, 140, 170)),
2151            Style::new().fg(Color::new(144, 140, 170)),
2152            Style::new().fg(Color::new(144, 140, 170)),
2153            Style::new().fg(Color::new(246, 193, 119)),
2154            Style::new().fg(Color::new(235, 111, 146)),
2155            Style::new().fg(Color::new(156, 207, 216)),
2156            Style::new(),
2157            Style::new(),
2158            Style::new().fg(Color::new(196, 167, 231)),
2159            Style::new().fg(Color::new(196, 167, 231)),
2160            Style::new(),
2161            Style::new().fg(Color::new(224, 222, 244)),
2162            Style::new().fg(Color::new(235, 111, 146)),
2163            Style::new().fg(Color::new(196, 167, 231)),
2164            Style::new().fg(Color::new(110, 106, 134)).italic(),
2165            Style::new(),
2166            Style::new().fg(Color::new(156, 207, 216)),
2167            Style::new().fg(Color::new(156, 207, 216)),
2168            Style::new().fg(Color::new(156, 207, 216)),
2169            Style::new().fg(Color::new(235, 111, 146)),
2170            Style::new().fg(Color::new(246, 193, 119)),
2171            Style::new().fg(Color::new(224, 222, 244)),
2172            Style::new().italic(),
2173            Style::new().bold(),
2174            Style::new().fg(Color::new(196, 167, 231)).underline(),
2175            Style::new().fg(Color::new(156, 207, 216)),
2176            Style::new().fg(Color::new(62, 143, 176)),
2177            Style::new().fg(Color::new(246, 193, 119)).bold(),
2178            Style::new().strikethrough(),
2179            Style::new().fg(Color::new(224, 222, 244)),
2180            Style::new(),
2181            Style::new(),
2182            Style::new(),
2183            Style::new(),
2184            Style::new(),
2185            Style::new(),
2186            Style::new(),
2187            Style::new(),
2188            Style::new(),
2189            Style::new(),
2190            Style::new(),
2191            Style::new(),
2192            Style::new(),
2193            Style::new(),
2194            Style::new(),
2195            Style::new(),
2196            Style::new(),
2197            Style::new(),
2198            Style::new(),
2199            Style::new(),
2200            Style::new(),
2201            Style::new()
2202        ],
2203    }
2204}
2205
2206/// Rustdoc Ayu theme.
2207///
2208/// Source: https://github.com/rust-lang/rust/blob/master/src/librustdoc/html/static/css/themes/ayu.css
2209pub fn rustdoc_ayu() -> Theme {
2210    Theme {
2211        name: "Rustdoc Ayu".to_string(),
2212        is_dark: true,
2213        source_url: Some("https://github.com/rust-lang/rust/blob/master/src/librustdoc/html/static/css/themes/ayu.css".to_string()),
2214        background: Some(Color::new(25, 31, 38)),
2215        foreground: Some(Color::new(197, 197, 197)),
2216        styles: [
2217            Style::new().fg(Color::new(230, 225, 207)),
2218            Style::new().fg(Color::new(255, 119, 51)),
2219            Style::new(),
2220            Style::new(),
2221            Style::new().fg(Color::new(105, 242, 223)),
2222            Style::new().fg(Color::new(253, 214, 135)),
2223            Style::new(),
2224            Style::new().fg(Color::new(255, 119, 51)),
2225            Style::new(),
2226            Style::new(),
2227            Style::new(),
2228            Style::new(),
2229            Style::new(),
2230            Style::new(),
2231            Style::new(),
2232            Style::new(),
2233            Style::new(),
2234            Style::new(),
2235            Style::new().fg(Color::new(255, 119, 51)),
2236            Style::new().fg(Color::new(105, 242, 223)),
2237            Style::new().fg(Color::new(197, 197, 197)),
2238            Style::new().fg(Color::new(197, 197, 197)),
2239            Style::new().fg(Color::new(197, 197, 197)),
2240            Style::new().fg(Color::new(255, 144, 17)),
2241            Style::new().fg(Color::new(184, 204, 82)),
2242            Style::new().fg(Color::new(184, 204, 82)),
2243            Style::new().fg(Color::new(163, 122, 204)),
2244            Style::new(),
2245            Style::new(),
2246            Style::new().fg(Color::new(255, 160, 165)),
2247            Style::new().fg(Color::new(105, 242, 223)),
2248            Style::new(),
2249            Style::new().fg(Color::new(197, 197, 197)),
2250            Style::new().fg(Color::new(54, 163, 217)),
2251            Style::new().fg(Color::new(197, 197, 197)),
2252            Style::new().fg(Color::new(120, 135, 151)),
2253            Style::new(),
2254            Style::new().fg(Color::new(163, 122, 204)),
2255            Style::new().fg(Color::new(255, 119, 51)),
2256            Style::new().fg(Color::new(184, 204, 82)),
2257            Style::new().fg(Color::new(255, 119, 51)),
2258            Style::new().fg(Color::new(184, 204, 82)),
2259            Style::new().fg(Color::new(197, 197, 197)),
2260            Style::new().italic(),
2261            Style::new().bold(),
2262            Style::new().fg(Color::new(105, 242, 223)).underline(),
2263            Style::new().fg(Color::new(255, 160, 165)),
2264            Style::new().fg(Color::new(255, 119, 51)),
2265            Style::new().fg(Color::new(255, 160, 165)).bold(),
2266            Style::new().strikethrough(),
2267            Style::new().fg(Color::new(197, 197, 197)),
2268            Style::new(),
2269            Style::new(),
2270            Style::new(),
2271            Style::new(),
2272            Style::new(),
2273            Style::new(),
2274            Style::new(),
2275            Style::new(),
2276            Style::new(),
2277            Style::new(),
2278            Style::new(),
2279            Style::new(),
2280            Style::new(),
2281            Style::new(),
2282            Style::new(),
2283            Style::new(),
2284            Style::new(),
2285            Style::new(),
2286            Style::new(),
2287            Style::new(),
2288            Style::new(),
2289            Style::new()
2290        ],
2291    }
2292}
2293
2294/// Rustdoc Dark theme.
2295///
2296/// Source: https://github.com/rust-lang/rust/blob/master/src/librustdoc/html/static/css/themes/dark.css
2297pub fn rustdoc_dark() -> Theme {
2298    Theme {
2299        name: "Rustdoc Dark".to_string(),
2300        is_dark: true,
2301        source_url: Some("https://github.com/rust-lang/rust/blob/master/src/librustdoc/html/static/css/themes/dark.css".to_string()),
2302        background: Some(Color::new(42, 42, 42)),
2303        foreground: Some(Color::new(221, 221, 221)),
2304        styles: [
2305            Style::new().fg(Color::new(238, 104, 104)),
2306            Style::new().fg(Color::new(238, 104, 104)),
2307            Style::new(),
2308            Style::new(),
2309            Style::new().fg(Color::new(118, 154, 203)),
2310            Style::new().fg(Color::new(43, 171, 99)),
2311            Style::new(),
2312            Style::new().fg(Color::new(171, 138, 193)),
2313            Style::new(),
2314            Style::new(),
2315            Style::new(),
2316            Style::new(),
2317            Style::new(),
2318            Style::new(),
2319            Style::new(),
2320            Style::new(),
2321            Style::new(),
2322            Style::new(),
2323            Style::new().fg(Color::new(171, 138, 193)),
2324            Style::new().fg(Color::new(118, 154, 203)),
2325            Style::new().fg(Color::new(221, 221, 221)),
2326            Style::new().fg(Color::new(221, 221, 221)),
2327            Style::new().fg(Color::new(221, 221, 221)),
2328            Style::new().fg(Color::new(255, 144, 17)),
2329            Style::new().fg(Color::new(131, 163, 0)),
2330            Style::new().fg(Color::new(131, 163, 0)),
2331            Style::new().fg(Color::new(62, 153, 159)),
2332            Style::new(),
2333            Style::new(),
2334            Style::new().fg(Color::new(45, 191, 184)),
2335            Style::new().fg(Color::new(118, 154, 203)),
2336            Style::new(),
2337            Style::new().fg(Color::new(221, 221, 221)),
2338            Style::new().fg(Color::new(238, 104, 104)),
2339            Style::new().fg(Color::new(221, 221, 221)),
2340            Style::new().fg(Color::new(141, 141, 139)),
2341            Style::new(),
2342            Style::new().fg(Color::new(62, 153, 159)),
2343            Style::new().fg(Color::new(217, 127, 38)),
2344            Style::new().fg(Color::new(131, 163, 0)),
2345            Style::new().fg(Color::new(238, 104, 104)),
2346            Style::new().fg(Color::new(131, 163, 0)),
2347            Style::new().fg(Color::new(221, 221, 221)),
2348            Style::new().italic(),
2349            Style::new().bold(),
2350            Style::new().fg(Color::new(118, 154, 203)).underline(),
2351            Style::new().fg(Color::new(45, 191, 184)),
2352            Style::new().fg(Color::new(217, 127, 38)),
2353            Style::new().fg(Color::new(45, 191, 184)).bold(),
2354            Style::new().strikethrough(),
2355            Style::new().fg(Color::new(221, 221, 221)),
2356            Style::new(),
2357            Style::new(),
2358            Style::new(),
2359            Style::new(),
2360            Style::new(),
2361            Style::new(),
2362            Style::new(),
2363            Style::new(),
2364            Style::new(),
2365            Style::new(),
2366            Style::new(),
2367            Style::new(),
2368            Style::new(),
2369            Style::new(),
2370            Style::new(),
2371            Style::new(),
2372            Style::new(),
2373            Style::new(),
2374            Style::new(),
2375            Style::new(),
2376            Style::new(),
2377            Style::new()
2378        ],
2379    }
2380}
2381
2382/// Rustdoc Light theme.
2383///
2384/// Source: https://github.com/rust-lang/rust/blob/master/src/librustdoc/html/static/css/themes/light.css
2385pub fn rustdoc_light() -> Theme {
2386    Theme {
2387        name: "Rustdoc Light".to_string(),
2388        is_dark: false,
2389        source_url: Some("https://github.com/rust-lang/rust/blob/master/src/librustdoc/html/static/css/themes/light.css".to_string()),
2390        background: Some(Color::new(245, 245, 245)),
2391        foreground: Some(Color::new(36, 41, 46)),
2392        styles: [
2393            Style::new().fg(Color::new(200, 40, 41)),
2394            Style::new().fg(Color::new(200, 40, 41)),
2395            Style::new(),
2396            Style::new(),
2397            Style::new().fg(Color::new(66, 113, 174)),
2398            Style::new().fg(Color::new(173, 124, 55)),
2399            Style::new(),
2400            Style::new().fg(Color::new(137, 89, 168)),
2401            Style::new(),
2402            Style::new(),
2403            Style::new(),
2404            Style::new(),
2405            Style::new(),
2406            Style::new(),
2407            Style::new(),
2408            Style::new(),
2409            Style::new(),
2410            Style::new(),
2411            Style::new().fg(Color::new(137, 89, 168)),
2412            Style::new().fg(Color::new(66, 113, 174)),
2413            Style::new().fg(Color::new(36, 41, 46)),
2414            Style::new().fg(Color::new(36, 41, 46)),
2415            Style::new().fg(Color::new(36, 41, 46)),
2416            Style::new().fg(Color::new(255, 144, 17)),
2417            Style::new().fg(Color::new(113, 140, 0)),
2418            Style::new().fg(Color::new(113, 140, 0)),
2419            Style::new().fg(Color::new(62, 153, 159)),
2420            Style::new(),
2421            Style::new(),
2422            Style::new().fg(Color::new(173, 55, 138)),
2423            Style::new().fg(Color::new(66, 113, 174)),
2424            Style::new(),
2425            Style::new().fg(Color::new(36, 41, 46)),
2426            Style::new().fg(Color::new(200, 40, 41)),
2427            Style::new().fg(Color::new(36, 41, 46)),
2428            Style::new().fg(Color::new(142, 144, 140)),
2429            Style::new(),
2430            Style::new().fg(Color::new(62, 153, 159)),
2431            Style::new().fg(Color::new(183, 101, 20)),
2432            Style::new().fg(Color::new(113, 140, 0)),
2433            Style::new().fg(Color::new(200, 40, 41)),
2434            Style::new().fg(Color::new(113, 140, 0)),
2435            Style::new().fg(Color::new(36, 41, 46)),
2436            Style::new().italic(),
2437            Style::new().bold(),
2438            Style::new().fg(Color::new(66, 113, 174)).underline(),
2439            Style::new().fg(Color::new(173, 55, 138)),
2440            Style::new().fg(Color::new(183, 101, 20)),
2441            Style::new().fg(Color::new(173, 55, 138)).bold(),
2442            Style::new().strikethrough(),
2443            Style::new().fg(Color::new(36, 41, 46)),
2444            Style::new(),
2445            Style::new(),
2446            Style::new(),
2447            Style::new(),
2448            Style::new(),
2449            Style::new(),
2450            Style::new(),
2451            Style::new(),
2452            Style::new(),
2453            Style::new(),
2454            Style::new(),
2455            Style::new(),
2456            Style::new(),
2457            Style::new(),
2458            Style::new(),
2459            Style::new(),
2460            Style::new(),
2461            Style::new(),
2462            Style::new(),
2463            Style::new(),
2464            Style::new(),
2465            Style::new()
2466        ],
2467    }
2468}
2469
2470/// Solarized Dark theme.
2471///
2472/// Source: https://ethanschoonover.com/solarized/
2473pub fn solarized_dark() -> Theme {
2474    Theme {
2475        name: "Solarized Dark".to_string(),
2476        is_dark: true,
2477        source_url: Some("https://ethanschoonover.com/solarized/".to_string()),
2478        background: Some(Color::new(0, 43, 54)),
2479        foreground: Some(Color::new(131, 148, 150)),
2480        styles: [
2481            Style::new().fg(Color::new(181, 137, 0)),
2482            Style::new().fg(Color::new(42, 161, 152)),
2483            Style::new(),
2484            Style::new(),
2485            Style::new().fg(Color::new(38, 139, 210)),
2486            Style::new().fg(Color::new(38, 139, 210)),
2487            Style::new(),
2488            Style::new().fg(Color::new(133, 153, 0)),
2489            Style::new(),
2490            Style::new(),
2491            Style::new(),
2492            Style::new(),
2493            Style::new(),
2494            Style::new(),
2495            Style::new(),
2496            Style::new(),
2497            Style::new(),
2498            Style::new(),
2499            Style::new().fg(Color::new(147, 161, 161)),
2500            Style::new().fg(Color::new(38, 139, 210)),
2501            Style::new().fg(Color::new(147, 161, 161)),
2502            Style::new().fg(Color::new(147, 161, 161)),
2503            Style::new().fg(Color::new(147, 161, 161)),
2504            Style::new().fg(Color::new(220, 50, 47)),
2505            Style::new().fg(Color::new(42, 161, 152)),
2506            Style::new().fg(Color::new(203, 75, 22)),
2507            Style::new().fg(Color::new(38, 139, 210)),
2508            Style::new(),
2509            Style::new(),
2510            Style::new().fg(Color::new(181, 137, 0)),
2511            Style::new().fg(Color::new(181, 137, 0)),
2512            Style::new(),
2513            Style::new().fg(Color::new(131, 148, 150)),
2514            Style::new().fg(Color::new(211, 54, 130)),
2515            Style::new().fg(Color::new(131, 148, 150)),
2516            Style::new().fg(Color::new(88, 110, 117)).italic(),
2517            Style::new(),
2518            Style::new().fg(Color::new(203, 75, 22)),
2519            Style::new().fg(Color::new(108, 113, 196)),
2520            Style::new().fg(Color::new(133, 153, 0)),
2521            Style::new().fg(Color::new(220, 50, 47)),
2522            Style::new().fg(Color::new(211, 54, 130)),
2523            Style::new().fg(Color::new(131, 148, 150)),
2524            Style::new().italic(),
2525            Style::new().bold(),
2526            Style::new().fg(Color::new(42, 161, 152)).underline(),
2527            Style::new().fg(Color::new(38, 139, 210)),
2528            Style::new().fg(Color::new(203, 75, 22)),
2529            Style::new().fg(Color::new(181, 137, 0)).bold(),
2530            Style::new().strikethrough(),
2531            Style::new().fg(Color::new(131, 148, 150)),
2532            Style::new(),
2533            Style::new(),
2534            Style::new(),
2535            Style::new(),
2536            Style::new(),
2537            Style::new(),
2538            Style::new(),
2539            Style::new(),
2540            Style::new(),
2541            Style::new(),
2542            Style::new(),
2543            Style::new(),
2544            Style::new(),
2545            Style::new(),
2546            Style::new(),
2547            Style::new(),
2548            Style::new(),
2549            Style::new(),
2550            Style::new(),
2551            Style::new(),
2552            Style::new(),
2553            Style::new()
2554        ],
2555    }
2556}
2557
2558/// Solarized Light theme.
2559///
2560/// Source: https://ethanschoonover.com/solarized/
2561pub fn solarized_light() -> Theme {
2562    Theme {
2563        name: "Solarized Light".to_string(),
2564        is_dark: false,
2565        source_url: Some("https://ethanschoonover.com/solarized/".to_string()),
2566        background: Some(Color::new(253, 246, 227)),
2567        foreground: Some(Color::new(101, 123, 131)),
2568        styles: [
2569            Style::new().fg(Color::new(181, 137, 0)),
2570            Style::new().fg(Color::new(42, 161, 152)),
2571            Style::new(),
2572            Style::new(),
2573            Style::new().fg(Color::new(38, 139, 210)),
2574            Style::new().fg(Color::new(38, 139, 210)),
2575            Style::new(),
2576            Style::new().fg(Color::new(133, 153, 0)),
2577            Style::new(),
2578            Style::new(),
2579            Style::new(),
2580            Style::new(),
2581            Style::new(),
2582            Style::new(),
2583            Style::new(),
2584            Style::new(),
2585            Style::new(),
2586            Style::new(),
2587            Style::new().fg(Color::new(88, 110, 117)),
2588            Style::new().fg(Color::new(38, 139, 210)),
2589            Style::new().fg(Color::new(88, 110, 117)),
2590            Style::new().fg(Color::new(88, 110, 117)),
2591            Style::new().fg(Color::new(88, 110, 117)),
2592            Style::new().fg(Color::new(220, 50, 47)),
2593            Style::new().fg(Color::new(42, 161, 152)),
2594            Style::new().fg(Color::new(203, 75, 22)),
2595            Style::new().fg(Color::new(38, 139, 210)),
2596            Style::new(),
2597            Style::new(),
2598            Style::new().fg(Color::new(181, 137, 0)),
2599            Style::new().fg(Color::new(181, 137, 0)),
2600            Style::new(),
2601            Style::new().fg(Color::new(101, 123, 131)),
2602            Style::new().fg(Color::new(211, 54, 130)),
2603            Style::new().fg(Color::new(101, 123, 131)),
2604            Style::new().fg(Color::new(147, 161, 161)).italic(),
2605            Style::new(),
2606            Style::new().fg(Color::new(203, 75, 22)),
2607            Style::new().fg(Color::new(108, 113, 196)),
2608            Style::new().fg(Color::new(133, 153, 0)),
2609            Style::new().fg(Color::new(220, 50, 47)),
2610            Style::new().fg(Color::new(211, 54, 130)),
2611            Style::new().fg(Color::new(101, 123, 131)),
2612            Style::new().italic(),
2613            Style::new().bold(),
2614            Style::new().fg(Color::new(42, 161, 152)).underline(),
2615            Style::new().fg(Color::new(38, 139, 210)),
2616            Style::new().fg(Color::new(203, 75, 22)),
2617            Style::new().fg(Color::new(181, 137, 0)).bold(),
2618            Style::new().strikethrough(),
2619            Style::new().fg(Color::new(101, 123, 131)),
2620            Style::new(),
2621            Style::new(),
2622            Style::new(),
2623            Style::new(),
2624            Style::new(),
2625            Style::new(),
2626            Style::new(),
2627            Style::new(),
2628            Style::new(),
2629            Style::new(),
2630            Style::new(),
2631            Style::new(),
2632            Style::new(),
2633            Style::new(),
2634            Style::new(),
2635            Style::new(),
2636            Style::new(),
2637            Style::new(),
2638            Style::new(),
2639            Style::new(),
2640            Style::new(),
2641            Style::new()
2642        ],
2643    }
2644}
2645
2646/// Tokyo Night theme.
2647///
2648/// Source: https://github.com/enkia/tokyo-night-vscode-theme
2649pub fn tokyo_night() -> Theme {
2650    Theme {
2651        name: "Tokyo Night".to_string(),
2652        is_dark: true,
2653        source_url: Some("https://github.com/enkia/tokyo-night-vscode-theme".to_string()),
2654        background: Some(Color::new(26, 27, 38)),
2655        foreground: Some(Color::new(192, 202, 245)),
2656        styles: [
2657            Style::new().fg(Color::new(224, 175, 104)),
2658            Style::new().fg(Color::new(255, 158, 100)),
2659            Style::new(),
2660            Style::new(),
2661            Style::new().fg(Color::new(125, 207, 255)),
2662            Style::new().fg(Color::new(122, 162, 247)),
2663            Style::new(),
2664            Style::new().fg(Color::new(187, 154, 247)),
2665            Style::new(),
2666            Style::new(),
2667            Style::new(),
2668            Style::new(),
2669            Style::new(),
2670            Style::new(),
2671            Style::new(),
2672            Style::new(),
2673            Style::new(),
2674            Style::new(),
2675            Style::new().fg(Color::new(137, 221, 255)),
2676            Style::new().fg(Color::new(122, 162, 247)),
2677            Style::new().fg(Color::new(169, 177, 214)),
2678            Style::new().fg(Color::new(169, 177, 214)),
2679            Style::new().fg(Color::new(169, 177, 214)),
2680            Style::new().fg(Color::new(137, 221, 255)),
2681            Style::new().fg(Color::new(158, 206, 106)),
2682            Style::new().fg(Color::new(247, 118, 142)),
2683            Style::new().fg(Color::new(247, 118, 142)),
2684            Style::new(),
2685            Style::new(),
2686            Style::new().fg(Color::new(42, 195, 222)),
2687            Style::new().fg(Color::new(42, 195, 222)),
2688            Style::new(),
2689            Style::new().fg(Color::new(192, 202, 245)),
2690            Style::new().fg(Color::new(247, 118, 142)),
2691            Style::new().fg(Color::new(224, 175, 104)),
2692            Style::new().fg(Color::new(86, 95, 137)),
2693            Style::new(),
2694            Style::new().fg(Color::new(125, 207, 255)),
2695            Style::new().fg(Color::new(255, 158, 100)),
2696            Style::new().fg(Color::new(158, 206, 106)),
2697            Style::new().fg(Color::new(247, 118, 142)),
2698            Style::new().fg(Color::new(255, 158, 100)),
2699            Style::new().fg(Color::new(169, 177, 214)),
2700            Style::new().italic(),
2701            Style::new().bold(),
2702            Style::new().fg(Color::new(122, 162, 247)).underline(),
2703            Style::new().fg(Color::new(125, 207, 255)),
2704            Style::new().fg(Color::new(137, 221, 255)),
2705            Style::new().fg(Color::new(187, 154, 247)).bold(),
2706            Style::new().strikethrough(),
2707            Style::new().fg(Color::new(169, 177, 214)),
2708            Style::new(),
2709            Style::new(),
2710            Style::new(),
2711            Style::new(),
2712            Style::new(),
2713            Style::new(),
2714            Style::new(),
2715            Style::new(),
2716            Style::new(),
2717            Style::new(),
2718            Style::new(),
2719            Style::new(),
2720            Style::new(),
2721            Style::new(),
2722            Style::new(),
2723            Style::new(),
2724            Style::new(),
2725            Style::new(),
2726            Style::new(),
2727            Style::new(),
2728            Style::new(),
2729            Style::new()
2730        ],
2731    }
2732}
2733
2734/// Zenburn theme.
2735///
2736/// Source: https://github.com/jnurmine/Zenburn
2737pub fn zenburn() -> Theme {
2738    Theme {
2739        name: "Zenburn".to_string(),
2740        is_dark: true,
2741        source_url: Some("https://github.com/jnurmine/Zenburn".to_string()),
2742        background: Some(Color::new(63, 63, 63)),
2743        foreground: Some(Color::new(220, 220, 204)),
2744        styles: [
2745            Style::new().fg(Color::new(223, 175, 143)),
2746            Style::new().fg(Color::new(220, 163, 163)),
2747            Style::new(),
2748            Style::new(),
2749            Style::new().fg(Color::new(239, 239, 143)),
2750            Style::new().fg(Color::new(239, 239, 143)),
2751            Style::new(),
2752            Style::new().fg(Color::new(240, 223, 175)),
2753            Style::new(),
2754            Style::new(),
2755            Style::new(),
2756            Style::new(),
2757            Style::new(),
2758            Style::new(),
2759            Style::new(),
2760            Style::new(),
2761            Style::new(),
2762            Style::new(),
2763            Style::new().fg(Color::new(220, 220, 204)),
2764            Style::new().fg(Color::new(220, 220, 204)),
2765            Style::new().fg(Color::new(220, 220, 204)),
2766            Style::new().fg(Color::new(220, 220, 204)),
2767            Style::new().fg(Color::new(220, 220, 204)),
2768            Style::new().fg(Color::new(220, 163, 163)),
2769            Style::new().fg(Color::new(204, 147, 147)),
2770            Style::new().fg(Color::new(220, 163, 163)),
2771            Style::new().fg(Color::new(239, 239, 143)),
2772            Style::new(),
2773            Style::new(),
2774            Style::new().fg(Color::new(223, 223, 191)),
2775            Style::new().fg(Color::new(223, 223, 191)),
2776            Style::new(),
2777            Style::new().fg(Color::new(220, 220, 204)),
2778            Style::new().fg(Color::new(220, 163, 163)),
2779            Style::new().fg(Color::new(220, 220, 204)),
2780            Style::new().fg(Color::new(127, 159, 127)),
2781            Style::new(),
2782            Style::new().fg(Color::new(223, 175, 143)),
2783            Style::new().fg(Color::new(140, 208, 211)),
2784            Style::new().fg(Color::new(127, 159, 127)),
2785            Style::new().fg(Color::new(204, 147, 147)),
2786            Style::new().fg(Color::new(140, 208, 211)),
2787            Style::new().fg(Color::new(220, 220, 204)),
2788            Style::new().italic(),
2789            Style::new().bold(),
2790            Style::new().fg(Color::new(140, 208, 211)).underline(),
2791            Style::new().fg(Color::new(140, 208, 211)),
2792            Style::new().fg(Color::new(220, 163, 163)),
2793            Style::new().fg(Color::new(239, 239, 143)).bold(),
2794            Style::new().strikethrough(),
2795            Style::new().fg(Color::new(220, 220, 204)),
2796            Style::new(),
2797            Style::new(),
2798            Style::new(),
2799            Style::new(),
2800            Style::new(),
2801            Style::new(),
2802            Style::new(),
2803            Style::new(),
2804            Style::new(),
2805            Style::new(),
2806            Style::new(),
2807            Style::new(),
2808            Style::new(),
2809            Style::new(),
2810            Style::new(),
2811            Style::new(),
2812            Style::new(),
2813            Style::new(),
2814            Style::new(),
2815            Style::new(),
2816            Style::new(),
2817            Style::new()
2818        ],
2819    }
2820}
2821
2822/// Get all built-in themes.
2823pub fn all() -> Vec<Theme> {
2824    vec![
2825        alabaster(),
2826        ayu_dark(),
2827        ayu_light(),
2828        catppuccin_frappe(),
2829        catppuccin_latte(),
2830        catppuccin_macchiato(),
2831        catppuccin_mocha(),
2832        cobalt2(),
2833        dayfox(),
2834        desert256(),
2835        dracula(),
2836        ef_melissa_dark(),
2837        github_dark(),
2838        github_light(),
2839        gruvbox_dark(),
2840        gruvbox_light(),
2841        kanagawa_dragon(),
2842        light_owl(),
2843        lucius_light(),
2844        melange_dark(),
2845        melange_light(),
2846        monokai(),
2847        nord(),
2848        one_dark(),
2849        rose_pine_moon(),
2850        rustdoc_ayu(),
2851        rustdoc_dark(),
2852        rustdoc_light(),
2853        solarized_dark(),
2854        solarized_light(),
2855        tokyo_night(),
2856        zenburn(),
2857    ]
2858}