syntastica_themes/
oxocarbon.rs

1//! The 'oxocarbon' theme collection in this module was extracted from <https://github.com/nyoom-engineering/oxocarbon.nvim> using `auto_extract.py`.
2
3use std::collections::BTreeMap;
4
5use syntastica_core::{
6    style::{Color, Style},
7    theme::ResolvedTheme,
8};
9
10#[rustfmt::skip]
11pub fn dark() -> ResolvedTheme {
12    ResolvedTheme::new(BTreeMap::from([
13        ("_normal".into(), Style::new(Color::new(208, 208, 208), Some(Color::new(22, 22, 22)), false, false, false, false)),
14        ("attribute".into(), Style::new(Color::new(130, 207, 255), None, false, false, false, false)),
15        ("attribute.builtin".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
16        ("boolean".into(), Style::new(Color::new(120, 169, 255), None, false, false, false, false)),
17        ("character".into(), Style::new(Color::new(190, 149, 255), None, false, false, false, false)),
18        ("character.special".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
19        ("comment".into(), Style::new(Color::new(82, 82, 82), None, false, false, true, false)),
20        ("comment.error".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
21        ("comment.note".into(), Style::new(Color::new(120, 169, 255), None, false, false, false, false)),
22        ("comment.todo".into(), Style::new(Color::new(66, 190, 101), None, false, false, false, false)),
23        ("comment.warning".into(), Style::new(Color::new(190, 149, 255), None, false, false, false, false)),
24        ("conditional".into(), Style::new(Color::new(120, 169, 255), None, false, false, false, false)),
25        ("constant".into(), Style::new(Color::new(190, 149, 255), None, false, false, false, false)),
26        ("constant.builtin".into(), Style::new(Color::new(8, 189, 186), None, false, false, false, false)),
27        ("constant.macro".into(), Style::new(Color::new(8, 189, 186), None, false, false, false, false)),
28        ("constructor".into(), Style::new(Color::new(120, 169, 255), None, false, false, false, false)),
29        ("diff.delta".into(), Style::new(Color::new(140, 248, 247), None, false, false, false, false)),
30        ("diff.minus".into(), Style::new(Color::new(255, 192, 185), None, false, false, false, false)),
31        ("diff.plus".into(), Style::new(Color::new(179, 246, 192), None, false, false, false, false)),
32        ("error".into(), Style::new(Color::new(51, 177, 255), None, false, false, false, false)),
33        ("exception".into(), Style::new(Color::new(130, 207, 255), None, false, false, false, false)),
34        ("field".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
35        ("float".into(), Style::new(Color::new(130, 207, 255), None, false, false, false, false)),
36        ("function".into(), Style::new(Color::new(255, 126, 182), None, false, false, false, true)),
37        ("function.builtin".into(), Style::new(Color::new(255, 126, 182), None, false, false, false, false)),
38        ("function.macro".into(), Style::new(Color::new(8, 189, 186), None, false, false, false, false)),
39        ("ibl.indent.char.1".into(), Style::new(Color::new(57, 57, 57), None, false, false, false, false)),
40        ("ibl.scope.char.1".into(), Style::new(Color::new(82, 82, 82), Some(Color::new(22, 22, 22)), false, false, false, false)),
41        ("ibl.whitespace.char.1".into(), Style::new(Color::new(57, 57, 57), None, false, false, false, false)),
42        ("include".into(), Style::new(Color::new(120, 169, 255), None, false, false, false, false)),
43        ("keyword".into(), Style::new(Color::new(120, 169, 255), None, false, false, false, false)),
44        ("keyword.function".into(), Style::new(Color::new(61, 219, 217), None, false, false, false, false)),
45        ("keyword.operator".into(), Style::new(Color::new(61, 219, 217), None, false, false, false, false)),
46        ("label".into(), Style::new(Color::new(130, 207, 255), None, false, false, false, false)),
47        ("markup".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
48        ("markup.heading".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
49        ("method".into(), Style::new(Color::new(8, 189, 186), None, false, false, false, false)),
50        ("module".into(), Style::new(Color::new(120, 169, 255), None, false, false, false, false)),
51        ("module.builtin".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
52        ("namespace".into(), Style::new(Color::new(8, 189, 186), None, false, false, false, false)),
53        ("number".into(), Style::new(Color::new(130, 207, 255), None, false, false, false, false)),
54        ("number.date".into(), Style::new(Color::new(61, 219, 217), None, false, false, false, false)),
55        ("number.date.effective".into(), Style::new(Color::new(66, 190, 101), None, false, false, false, false)),
56        ("number.float".into(), Style::new(Color::new(130, 207, 255), None, false, false, false, false)),
57        ("number.interval".into(), Style::new(Color::new(120, 169, 255), None, false, false, false, false)),
58        ("number.quantity".into(), Style::new(Color::new(51, 177, 255), None, false, false, false, false)),
59        ("number.quantity.negative".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
60        ("number.status".into(), Style::new(Color::new(255, 126, 182), None, false, false, false, false)),
61        ("operator".into(), Style::new(Color::new(120, 169, 255), None, false, false, false, false)),
62        ("parameter".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
63        ("property".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
64        ("punctuation".into(), Style::new(Color::new(224, 226, 234), None, false, false, false, false)),
65        ("punctuation.bracket".into(), Style::new(Color::new(61, 219, 217), None, false, false, false, false)),
66        ("punctuation.delimiter".into(), Style::new(Color::new(61, 219, 217), None, false, false, false, false)),
67        ("punctuation.special".into(), Style::new(Color::new(61, 219, 217), None, false, false, false, false)),
68        ("reference".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
69        ("repeat".into(), Style::new(Color::new(120, 169, 255), None, false, false, false, false)),
70        ("string".into(), Style::new(Color::new(190, 149, 255), None, false, false, false, false)),
71        ("string.escape".into(), Style::new(Color::new(130, 207, 255), None, false, false, false, false)),
72        ("string.regex".into(), Style::new(Color::new(8, 189, 186), None, false, false, false, false)),
73        ("string.regexp".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
74        ("string.special".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
75        ("symbol".into(), Style::new(Color::new(130, 207, 255), None, false, false, false, true)),
76        ("tag".into(), Style::new(Color::new(120, 169, 255), None, false, false, false, false)),
77        ("tag.attribute".into(), Style::new(Color::new(130, 207, 255), None, false, false, false, false)),
78        ("tag.builtin".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
79        ("tag.delimiter".into(), Style::new(Color::new(130, 207, 255), None, false, false, false, false)),
80        ("text".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
81        ("text.emphasis".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, true)),
82        ("text.literal".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
83        ("text.literal.commodity".into(), Style::new(Color::new(66, 190, 101), None, false, false, false, false)),
84        ("text.strike".into(), Style::new(Color::new(238, 83, 150), None, false, true, false, false)),
85        ("text.title".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
86        ("text.underline".into(), Style::new(Color::new(238, 83, 150), None, true, false, false, false)),
87        ("text.uri".into(), Style::new(Color::new(190, 149, 255), None, true, false, false, false)),
88        ("type".into(), Style::new(Color::new(120, 169, 255), None, false, false, false, false)),
89        ("type.builtin".into(), Style::new(Color::new(120, 169, 255), None, false, false, false, false)),
90        ("variable".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
91        ("variable.builtin".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
92        ("variable.parameter.builtin".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
93    ]))
94}
95
96#[rustfmt::skip]
97pub fn light() -> ResolvedTheme {
98    ResolvedTheme::new(BTreeMap::from([
99        ("_normal".into(), Style::new(Color::new(55, 71, 79), Some(Color::new(255, 255, 255)), false, false, false, false)),
100        ("attribute".into(), Style::new(Color::new(255, 171, 145), None, false, false, false, false)),
101        ("attribute.builtin".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
102        ("boolean".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
103        ("character".into(), Style::new(Color::new(190, 149, 255), None, false, false, false, false)),
104        ("character.special".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
105        ("comment".into(), Style::new(Color::new(22, 22, 22), None, false, false, true, false)),
106        ("comment.error".into(), Style::new(Color::new(255, 111, 0), None, false, false, false, false)),
107        ("comment.note".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
108        ("comment.todo".into(), Style::new(Color::new(66, 190, 101), None, false, false, false, false)),
109        ("comment.warning".into(), Style::new(Color::new(190, 149, 255), None, false, false, false, false)),
110        ("conditional".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
111        ("constant".into(), Style::new(Color::new(190, 149, 255), None, false, false, false, false)),
112        ("constant.builtin".into(), Style::new(Color::new(8, 189, 186), None, false, false, false, false)),
113        ("constant.macro".into(), Style::new(Color::new(8, 189, 186), None, false, false, false, false)),
114        ("constructor".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
115        ("diff.delta".into(), Style::new(Color::new(0, 115, 115), None, false, false, false, false)),
116        ("diff.minus".into(), Style::new(Color::new(89, 0, 8), None, false, false, false, false)),
117        ("diff.plus".into(), Style::new(Color::new(0, 85, 35), None, false, false, false, false)),
118        ("error".into(), Style::new(Color::new(15, 98, 254), None, false, false, false, false)),
119        ("exception".into(), Style::new(Color::new(255, 171, 145), None, false, false, false, false)),
120        ("field".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
121        ("float".into(), Style::new(Color::new(255, 171, 145), None, false, false, false, false)),
122        ("function".into(), Style::new(Color::new(103, 58, 183), None, false, false, false, true)),
123        ("function.builtin".into(), Style::new(Color::new(103, 58, 183), None, false, false, false, false)),
124        ("function.macro".into(), Style::new(Color::new(8, 189, 186), None, false, false, false, false)),
125        ("ibl.indent.char.1".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
126        ("ibl.scope.char.1".into(), Style::new(Color::new(22, 22, 22), Some(Color::new(255, 255, 255)), false, false, false, false)),
127        ("ibl.whitespace.char.1".into(), Style::new(Color::new(208, 208, 208), None, false, false, false, false)),
128        ("include".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
129        ("keyword".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
130        ("keyword.function".into(), Style::new(Color::new(255, 126, 182), None, false, false, false, false)),
131        ("keyword.operator".into(), Style::new(Color::new(255, 126, 182), None, false, false, false, false)),
132        ("label".into(), Style::new(Color::new(255, 171, 145), None, false, false, false, false)),
133        ("markup".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
134        ("markup.heading".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
135        ("method".into(), Style::new(Color::new(8, 189, 186), None, false, false, false, false)),
136        ("module".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
137        ("module.builtin".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
138        ("namespace".into(), Style::new(Color::new(8, 189, 186), None, false, false, false, false)),
139        ("number".into(), Style::new(Color::new(255, 171, 145), None, false, false, false, false)),
140        ("number.date".into(), Style::new(Color::new(255, 126, 182), None, false, false, false, false)),
141        ("number.date.effective".into(), Style::new(Color::new(66, 190, 101), None, false, false, false, false)),
142        ("number.float".into(), Style::new(Color::new(255, 171, 145), None, false, false, false, false)),
143        ("number.interval".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
144        ("number.quantity".into(), Style::new(Color::new(15, 98, 254), None, false, false, false, false)),
145        ("number.quantity.negative".into(), Style::new(Color::new(255, 111, 0), None, false, false, false, false)),
146        ("number.status".into(), Style::new(Color::new(103, 58, 183), None, false, false, false, false)),
147        ("operator".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
148        ("parameter".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
149        ("property".into(), Style::new(Color::new(255, 111, 0), None, false, false, false, false)),
150        ("punctuation".into(), Style::new(Color::new(20, 22, 27), None, false, false, false, false)),
151        ("punctuation.bracket".into(), Style::new(Color::new(255, 126, 182), None, false, false, false, false)),
152        ("punctuation.delimiter".into(), Style::new(Color::new(255, 126, 182), None, false, false, false, false)),
153        ("punctuation.special".into(), Style::new(Color::new(255, 126, 182), None, false, false, false, false)),
154        ("reference".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
155        ("repeat".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
156        ("string".into(), Style::new(Color::new(190, 149, 255), None, false, false, false, false)),
157        ("string.escape".into(), Style::new(Color::new(255, 171, 145), None, false, false, false, false)),
158        ("string.regex".into(), Style::new(Color::new(8, 189, 186), None, false, false, false, false)),
159        ("string.regexp".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
160        ("string.special".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
161        ("symbol".into(), Style::new(Color::new(255, 171, 145), None, false, false, false, true)),
162        ("tag".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
163        ("tag.attribute".into(), Style::new(Color::new(255, 171, 145), None, false, false, false, false)),
164        ("tag.builtin".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
165        ("tag.delimiter".into(), Style::new(Color::new(255, 171, 145), None, false, false, false, false)),
166        ("text".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
167        ("text.emphasis".into(), Style::new(Color::new(255, 111, 0), None, false, false, false, true)),
168        ("text.literal".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
169        ("text.literal.commodity".into(), Style::new(Color::new(66, 190, 101), None, false, false, false, false)),
170        ("text.strike".into(), Style::new(Color::new(255, 111, 0), None, false, true, false, false)),
171        ("text.title".into(), Style::new(Color::new(255, 111, 0), None, false, false, false, false)),
172        ("text.underline".into(), Style::new(Color::new(255, 111, 0), None, true, false, false, false)),
173        ("text.uri".into(), Style::new(Color::new(190, 149, 255), None, true, false, false, false)),
174        ("type".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
175        ("type.builtin".into(), Style::new(Color::new(238, 83, 150), None, false, false, false, false)),
176        ("variable".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
177        ("variable.builtin".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
178        ("variable.parameter.builtin".into(), Style::new(Color::new(55, 71, 79), None, false, false, false, false)),
179    ]))
180}