syntastica_themes/
tokyo.rs

1//! The 'tokyo' theme collection in this module was extracted from <https://github.com/folke/tokyonight.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 storm() -> ResolvedTheme {
12    ResolvedTheme::new(BTreeMap::from([
13        ("_normal".into(), Style::new(Color::new(192, 202, 245), Some(Color::new(36, 40, 59)), false, false, false, false)),
14        ("annotation".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
15        ("attribute".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
16        ("attribute.builtin".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
17        ("boolean".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, false)),
18        ("character".into(), Style::new(Color::new(158, 206, 106), None, false, false, false, false)),
19        ("character.printf".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
20        ("character.special".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
21        ("comment".into(), Style::new(Color::new(86, 95, 137), None, false, false, true, false)),
22        ("comment.error".into(), Style::new(Color::new(219, 75, 75), None, false, false, false, false)),
23        ("comment.hint".into(), Style::new(Color::new(26, 188, 156), None, false, false, false, false)),
24        ("comment.info".into(), Style::new(Color::new(13, 185, 215), None, false, false, false, false)),
25        ("comment.note".into(), Style::new(Color::new(26, 188, 156), None, false, false, false, false)),
26        ("comment.todo".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, false)),
27        ("comment.warning".into(), Style::new(Color::new(224, 175, 104), None, false, false, false, false)),
28        ("constant".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, false)),
29        ("constant.builtin".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
30        ("constant.macro".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
31        ("constructor".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
32        ("constructor.tsx".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
33        ("function".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, false)),
34        ("function.builtin".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
35        ("function.call".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, false)),
36        ("function.macro".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
37        ("function.method".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, false)),
38        ("function.method.call".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, false)),
39        ("ibl.indent.char.1".into(), Style::new(Color::new(59, 66, 97), None, false, false, false, false)),
40        ("ibl.scope.char.1".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
41        ("ibl.whitespace.char.1".into(), Style::new(Color::new(59, 66, 97), None, false, false, false, false)),
42        ("keyword".into(), Style::new(Color::new(157, 124, 216), None, false, false, true, false)),
43        ("keyword.conditional".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
44        ("keyword.coroutine".into(), Style::new(Color::new(157, 124, 216), None, false, false, true, false)),
45        ("keyword.debug".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, false)),
46        ("keyword.directive".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
47        ("keyword.directive.define".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
48        ("keyword.exception".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
49        ("keyword.function".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
50        ("keyword.import".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
51        ("keyword.operator".into(), Style::new(Color::new(137, 221, 255), None, false, false, false, false)),
52        ("keyword.repeat".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
53        ("keyword.return".into(), Style::new(Color::new(157, 124, 216), None, false, false, true, false)),
54        ("keyword.storage".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
55        ("label".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, false)),
56        ("markup.environment".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
57        ("markup.environment.name".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
58        ("markup.heading".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, true)),
59        ("markup.heading.1.markdown".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, true)),
60        ("markup.heading.2.markdown".into(), Style::new(Color::new(224, 175, 104), None, false, false, false, true)),
61        ("markup.heading.3.markdown".into(), Style::new(Color::new(158, 206, 106), None, false, false, false, true)),
62        ("markup.heading.4.markdown".into(), Style::new(Color::new(26, 188, 156), None, false, false, false, true)),
63        ("markup.heading.5.markdown".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, true)),
64        ("markup.heading.6.markdown".into(), Style::new(Color::new(157, 124, 216), None, false, false, false, true)),
65        ("markup.heading.7.markdown".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, true)),
66        ("markup.heading.8.markdown".into(), Style::new(Color::new(247, 118, 142), None, false, false, false, true)),
67        ("markup.link".into(), Style::new(Color::new(26, 188, 156), None, false, false, false, false)),
68        ("markup.link.label".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
69        ("markup.link.label.symbol".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
70        ("markup.list".into(), Style::new(Color::new(137, 221, 255), None, false, false, false, false)),
71        ("markup.list.checked".into(), Style::new(Color::new(115, 218, 202), None, false, false, false, false)),
72        ("markup.list.markdown".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, true)),
73        ("markup.list.unchecked".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, false)),
74        ("markup.math".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
75        ("markup.raw".into(), Style::new(Color::new(158, 206, 106), None, false, false, false, false)),
76        ("markup.raw.markdown_inline".into(), Style::new(Color::new(122, 162, 247), Some(Color::new(65, 72, 104)), false, false, false, false)),
77        ("module".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
78        ("module.builtin".into(), Style::new(Color::new(247, 118, 142), None, false, false, false, false)),
79        ("namespace.builtin".into(), Style::new(Color::new(247, 118, 142), None, false, false, false, false)),
80        ("number".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, false)),
81        ("number.float".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, false)),
82        ("operator".into(), Style::new(Color::new(137, 221, 255), None, false, false, false, false)),
83        ("property".into(), Style::new(Color::new(115, 218, 202), None, false, false, false, false)),
84        ("punctuation".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
85        ("punctuation.bracket".into(), Style::new(Color::new(169, 177, 214), None, false, false, false, false)),
86        ("punctuation.delimiter".into(), Style::new(Color::new(137, 221, 255), None, false, false, false, false)),
87        ("punctuation.special".into(), Style::new(Color::new(137, 221, 255), None, false, false, false, false)),
88        ("punctuation.special.markdown".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, false)),
89        ("string".into(), Style::new(Color::new(158, 206, 106), None, false, false, false, false)),
90        ("string.documentation".into(), Style::new(Color::new(224, 175, 104), None, false, false, false, false)),
91        ("string.escape".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
92        ("string.regexp".into(), Style::new(Color::new(180, 249, 248), None, false, false, false, false)),
93        ("string.special".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
94        ("tag".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
95        ("tag.attribute".into(), Style::new(Color::new(115, 218, 202), None, false, false, false, false)),
96        ("tag.builtin".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
97        ("tag.delimiter".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
98        ("tag.delimiter.tsx".into(), Style::new(Color::new(96, 125, 191), None, false, false, false, false)),
99        ("tag.javascript".into(), Style::new(Color::new(247, 118, 142), None, false, false, false, false)),
100        ("tag.tsx".into(), Style::new(Color::new(247, 118, 142), None, false, false, false, false)),
101        ("type".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
102        ("type.builtin".into(), Style::new(Color::new(41, 164, 189), None, false, false, false, false)),
103        ("type.definition".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
104        ("type.qualifier".into(), Style::new(Color::new(157, 124, 216), None, false, false, true, false)),
105        ("variable".into(), Style::new(Color::new(192, 202, 245), None, false, false, false, false)),
106        ("variable.builtin".into(), Style::new(Color::new(247, 118, 142), None, false, false, false, false)),
107        ("variable.member".into(), Style::new(Color::new(115, 218, 202), None, false, false, false, false)),
108        ("variable.parameter".into(), Style::new(Color::new(224, 175, 104), None, false, false, false, false)),
109        ("variable.parameter.builtin".into(), Style::new(Color::new(218, 180, 132), None, false, false, false, false)),
110    ]))
111}
112
113#[rustfmt::skip]
114pub fn night() -> ResolvedTheme {
115    ResolvedTheme::new(BTreeMap::from([
116        ("_normal".into(), Style::new(Color::new(192, 202, 245), Some(Color::new(26, 27, 38)), false, false, false, false)),
117        ("annotation".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
118        ("attribute".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
119        ("attribute.builtin".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
120        ("boolean".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, false)),
121        ("character".into(), Style::new(Color::new(158, 206, 106), None, false, false, false, false)),
122        ("character.printf".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
123        ("character.special".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
124        ("comment".into(), Style::new(Color::new(86, 95, 137), None, false, false, true, false)),
125        ("comment.error".into(), Style::new(Color::new(219, 75, 75), None, false, false, false, false)),
126        ("comment.hint".into(), Style::new(Color::new(26, 188, 156), None, false, false, false, false)),
127        ("comment.info".into(), Style::new(Color::new(13, 185, 215), None, false, false, false, false)),
128        ("comment.note".into(), Style::new(Color::new(26, 188, 156), None, false, false, false, false)),
129        ("comment.todo".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, false)),
130        ("comment.warning".into(), Style::new(Color::new(224, 175, 104), None, false, false, false, false)),
131        ("constant".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, false)),
132        ("constant.builtin".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
133        ("constant.macro".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
134        ("constructor".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
135        ("constructor.tsx".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
136        ("function".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, false)),
137        ("function.builtin".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
138        ("function.call".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, false)),
139        ("function.macro".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
140        ("function.method".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, false)),
141        ("function.method.call".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, false)),
142        ("ibl.indent.char.1".into(), Style::new(Color::new(59, 66, 97), None, false, false, false, false)),
143        ("ibl.scope.char.1".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
144        ("ibl.whitespace.char.1".into(), Style::new(Color::new(59, 66, 97), None, false, false, false, false)),
145        ("keyword".into(), Style::new(Color::new(157, 124, 216), None, false, false, true, false)),
146        ("keyword.conditional".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
147        ("keyword.coroutine".into(), Style::new(Color::new(157, 124, 216), None, false, false, true, false)),
148        ("keyword.debug".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, false)),
149        ("keyword.directive".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
150        ("keyword.directive.define".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
151        ("keyword.exception".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
152        ("keyword.function".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
153        ("keyword.import".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
154        ("keyword.operator".into(), Style::new(Color::new(137, 221, 255), None, false, false, false, false)),
155        ("keyword.repeat".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
156        ("keyword.return".into(), Style::new(Color::new(157, 124, 216), None, false, false, true, false)),
157        ("keyword.storage".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
158        ("label".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, false)),
159        ("markup.environment".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
160        ("markup.environment.name".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
161        ("markup.heading".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, true)),
162        ("markup.heading.1.markdown".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, true)),
163        ("markup.heading.2.markdown".into(), Style::new(Color::new(224, 175, 104), None, false, false, false, true)),
164        ("markup.heading.3.markdown".into(), Style::new(Color::new(158, 206, 106), None, false, false, false, true)),
165        ("markup.heading.4.markdown".into(), Style::new(Color::new(26, 188, 156), None, false, false, false, true)),
166        ("markup.heading.5.markdown".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, true)),
167        ("markup.heading.6.markdown".into(), Style::new(Color::new(157, 124, 216), None, false, false, false, true)),
168        ("markup.heading.7.markdown".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, true)),
169        ("markup.heading.8.markdown".into(), Style::new(Color::new(247, 118, 142), None, false, false, false, true)),
170        ("markup.link".into(), Style::new(Color::new(26, 188, 156), None, false, false, false, false)),
171        ("markup.link.label".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
172        ("markup.link.label.symbol".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
173        ("markup.list".into(), Style::new(Color::new(137, 221, 255), None, false, false, false, false)),
174        ("markup.list.checked".into(), Style::new(Color::new(115, 218, 202), None, false, false, false, false)),
175        ("markup.list.markdown".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, true)),
176        ("markup.list.unchecked".into(), Style::new(Color::new(122, 162, 247), None, false, false, false, false)),
177        ("markup.math".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
178        ("markup.raw".into(), Style::new(Color::new(158, 206, 106), None, false, false, false, false)),
179        ("markup.raw.markdown_inline".into(), Style::new(Color::new(122, 162, 247), Some(Color::new(65, 72, 104)), false, false, false, false)),
180        ("module".into(), Style::new(Color::new(125, 207, 255), None, false, false, false, false)),
181        ("module.builtin".into(), Style::new(Color::new(247, 118, 142), None, false, false, false, false)),
182        ("namespace.builtin".into(), Style::new(Color::new(247, 118, 142), None, false, false, false, false)),
183        ("number".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, false)),
184        ("number.float".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, false)),
185        ("operator".into(), Style::new(Color::new(137, 221, 255), None, false, false, false, false)),
186        ("property".into(), Style::new(Color::new(115, 218, 202), None, false, false, false, false)),
187        ("punctuation".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
188        ("punctuation.bracket".into(), Style::new(Color::new(169, 177, 214), None, false, false, false, false)),
189        ("punctuation.delimiter".into(), Style::new(Color::new(137, 221, 255), None, false, false, false, false)),
190        ("punctuation.special".into(), Style::new(Color::new(137, 221, 255), None, false, false, false, false)),
191        ("punctuation.special.markdown".into(), Style::new(Color::new(255, 158, 100), None, false, false, false, false)),
192        ("string".into(), Style::new(Color::new(158, 206, 106), None, false, false, false, false)),
193        ("string.documentation".into(), Style::new(Color::new(224, 175, 104), None, false, false, false, false)),
194        ("string.escape".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
195        ("string.regexp".into(), Style::new(Color::new(180, 249, 248), None, false, false, false, false)),
196        ("string.special".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
197        ("tag".into(), Style::new(Color::new(187, 154, 247), None, false, false, false, false)),
198        ("tag.attribute".into(), Style::new(Color::new(115, 218, 202), None, false, false, false, false)),
199        ("tag.builtin".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
200        ("tag.delimiter".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
201        ("tag.delimiter.tsx".into(), Style::new(Color::new(93, 122, 184), None, false, false, false, false)),
202        ("tag.javascript".into(), Style::new(Color::new(247, 118, 142), None, false, false, false, false)),
203        ("tag.tsx".into(), Style::new(Color::new(247, 118, 142), None, false, false, false, false)),
204        ("type".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
205        ("type.builtin".into(), Style::new(Color::new(39, 161, 185), None, false, false, false, false)),
206        ("type.definition".into(), Style::new(Color::new(42, 195, 222), None, false, false, false, false)),
207        ("type.qualifier".into(), Style::new(Color::new(157, 124, 216), None, false, false, true, false)),
208        ("variable".into(), Style::new(Color::new(192, 202, 245), None, false, false, false, false)),
209        ("variable.builtin".into(), Style::new(Color::new(247, 118, 142), None, false, false, false, false)),
210        ("variable.member".into(), Style::new(Color::new(115, 218, 202), None, false, false, false, false)),
211        ("variable.parameter".into(), Style::new(Color::new(224, 175, 104), None, false, false, false, false)),
212        ("variable.parameter.builtin".into(), Style::new(Color::new(218, 180, 132), None, false, false, false, false)),
213    ]))
214}
215
216#[rustfmt::skip]
217pub fn day() -> ResolvedTheme {
218    ResolvedTheme::new(BTreeMap::from([
219        ("_normal".into(), Style::new(Color::new(55, 96, 191), Some(Color::new(225, 226, 231)), false, false, false, false)),
220        ("annotation".into(), Style::new(Color::new(0, 113, 151), None, false, false, false, false)),
221        ("attribute".into(), Style::new(Color::new(0, 113, 151), None, false, false, false, false)),
222        ("attribute.builtin".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
223        ("boolean".into(), Style::new(Color::new(177, 92, 0), None, false, false, false, false)),
224        ("character".into(), Style::new(Color::new(88, 117, 57), None, false, false, false, false)),
225        ("character.printf".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
226        ("character.special".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
227        ("comment".into(), Style::new(Color::new(132, 140, 181), None, false, false, true, false)),
228        ("comment.error".into(), Style::new(Color::new(198, 67, 67), None, false, false, false, false)),
229        ("comment.hint".into(), Style::new(Color::new(17, 140, 116), None, false, false, false, false)),
230        ("comment.info".into(), Style::new(Color::new(7, 135, 157), None, false, false, false, false)),
231        ("comment.note".into(), Style::new(Color::new(17, 140, 116), None, false, false, false, false)),
232        ("comment.todo".into(), Style::new(Color::new(46, 125, 233), None, false, false, false, false)),
233        ("comment.warning".into(), Style::new(Color::new(140, 108, 62), None, false, false, false, false)),
234        ("constant".into(), Style::new(Color::new(177, 92, 0), None, false, false, false, false)),
235        ("constant.builtin".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
236        ("constant.macro".into(), Style::new(Color::new(0, 113, 151), None, false, false, false, false)),
237        ("constructor".into(), Style::new(Color::new(152, 84, 241), None, false, false, false, false)),
238        ("constructor.tsx".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
239        ("function".into(), Style::new(Color::new(46, 125, 233), None, false, false, false, false)),
240        ("function.builtin".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
241        ("function.call".into(), Style::new(Color::new(46, 125, 233), None, false, false, false, false)),
242        ("function.macro".into(), Style::new(Color::new(0, 113, 151), None, false, false, false, false)),
243        ("function.method".into(), Style::new(Color::new(46, 125, 233), None, false, false, false, false)),
244        ("function.method.call".into(), Style::new(Color::new(46, 125, 233), None, false, false, false, false)),
245        ("ibl.indent.char.1".into(), Style::new(Color::new(168, 174, 203), None, false, false, false, false)),
246        ("ibl.scope.char.1".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
247        ("ibl.whitespace.char.1".into(), Style::new(Color::new(168, 174, 203), None, false, false, false, false)),
248        ("keyword".into(), Style::new(Color::new(120, 71, 189), None, false, false, true, false)),
249        ("keyword.conditional".into(), Style::new(Color::new(152, 84, 241), None, false, false, false, false)),
250        ("keyword.coroutine".into(), Style::new(Color::new(120, 71, 189), None, false, false, true, false)),
251        ("keyword.debug".into(), Style::new(Color::new(177, 92, 0), None, false, false, false, false)),
252        ("keyword.directive".into(), Style::new(Color::new(0, 113, 151), None, false, false, false, false)),
253        ("keyword.directive.define".into(), Style::new(Color::new(0, 113, 151), None, false, false, false, false)),
254        ("keyword.exception".into(), Style::new(Color::new(152, 84, 241), None, false, false, false, false)),
255        ("keyword.function".into(), Style::new(Color::new(152, 84, 241), None, false, false, false, false)),
256        ("keyword.import".into(), Style::new(Color::new(0, 113, 151), None, false, false, false, false)),
257        ("keyword.operator".into(), Style::new(Color::new(0, 106, 131), None, false, false, false, false)),
258        ("keyword.repeat".into(), Style::new(Color::new(152, 84, 241), None, false, false, false, false)),
259        ("keyword.return".into(), Style::new(Color::new(120, 71, 189), None, false, false, true, false)),
260        ("keyword.storage".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
261        ("label".into(), Style::new(Color::new(46, 125, 233), None, false, false, false, false)),
262        ("markup.environment".into(), Style::new(Color::new(0, 113, 151), None, false, false, false, false)),
263        ("markup.environment.name".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
264        ("markup.heading".into(), Style::new(Color::new(46, 125, 233), None, false, false, false, true)),
265        ("markup.heading.1.markdown".into(), Style::new(Color::new(46, 125, 233), None, false, false, false, true)),
266        ("markup.heading.2.markdown".into(), Style::new(Color::new(140, 108, 62), None, false, false, false, true)),
267        ("markup.heading.3.markdown".into(), Style::new(Color::new(88, 117, 57), None, false, false, false, true)),
268        ("markup.heading.4.markdown".into(), Style::new(Color::new(17, 140, 116), None, false, false, false, true)),
269        ("markup.heading.5.markdown".into(), Style::new(Color::new(152, 84, 241), None, false, false, false, true)),
270        ("markup.heading.6.markdown".into(), Style::new(Color::new(120, 71, 189), None, false, false, false, true)),
271        ("markup.heading.7.markdown".into(), Style::new(Color::new(177, 92, 0), None, false, false, false, true)),
272        ("markup.heading.8.markdown".into(), Style::new(Color::new(245, 42, 101), None, false, false, false, true)),
273        ("markup.link".into(), Style::new(Color::new(17, 140, 116), None, false, false, false, false)),
274        ("markup.link.label".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
275        ("markup.link.label.symbol".into(), Style::new(Color::new(152, 84, 241), None, false, false, false, false)),
276        ("markup.list".into(), Style::new(Color::new(0, 106, 131), None, false, false, false, false)),
277        ("markup.list.checked".into(), Style::new(Color::new(56, 112, 104), None, false, false, false, false)),
278        ("markup.list.markdown".into(), Style::new(Color::new(177, 92, 0), None, false, false, false, true)),
279        ("markup.list.unchecked".into(), Style::new(Color::new(46, 125, 233), None, false, false, false, false)),
280        ("markup.math".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
281        ("markup.raw".into(), Style::new(Color::new(88, 117, 57), None, false, false, false, false)),
282        ("markup.raw.markdown_inline".into(), Style::new(Color::new(46, 125, 233), Some(Color::new(161, 166, 197)), false, false, false, false)),
283        ("module".into(), Style::new(Color::new(0, 113, 151), None, false, false, false, false)),
284        ("module.builtin".into(), Style::new(Color::new(245, 42, 101), None, false, false, false, false)),
285        ("namespace.builtin".into(), Style::new(Color::new(245, 42, 101), None, false, false, false, false)),
286        ("number".into(), Style::new(Color::new(177, 92, 0), None, false, false, false, false)),
287        ("number.float".into(), Style::new(Color::new(177, 92, 0), None, false, false, false, false)),
288        ("operator".into(), Style::new(Color::new(0, 106, 131), None, false, false, false, false)),
289        ("property".into(), Style::new(Color::new(56, 112, 104), None, false, false, false, false)),
290        ("punctuation".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
291        ("punctuation.bracket".into(), Style::new(Color::new(97, 114, 176), None, false, false, false, false)),
292        ("punctuation.delimiter".into(), Style::new(Color::new(0, 106, 131), None, false, false, false, false)),
293        ("punctuation.special".into(), Style::new(Color::new(0, 106, 131), None, false, false, false, false)),
294        ("punctuation.special.markdown".into(), Style::new(Color::new(177, 92, 0), None, false, false, false, false)),
295        ("string".into(), Style::new(Color::new(88, 117, 57), None, false, false, false, false)),
296        ("string.documentation".into(), Style::new(Color::new(140, 108, 62), None, false, false, false, false)),
297        ("string.escape".into(), Style::new(Color::new(152, 84, 241), None, false, false, false, false)),
298        ("string.regexp".into(), Style::new(Color::new(46, 88, 87), None, false, false, false, false)),
299        ("string.special".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
300        ("tag".into(), Style::new(Color::new(152, 84, 241), None, false, false, false, false)),
301        ("tag.attribute".into(), Style::new(Color::new(56, 112, 104), None, false, false, false, false)),
302        ("tag.builtin".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
303        ("tag.delimiter".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
304        ("tag.delimiter.tsx".into(), Style::new(Color::new(100, 155, 232), None, false, false, false, false)),
305        ("tag.javascript".into(), Style::new(Color::new(245, 42, 101), None, false, false, false, false)),
306        ("tag.tsx".into(), Style::new(Color::new(245, 42, 101), None, false, false, false, false)),
307        ("type".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
308        ("type.builtin".into(), Style::new(Color::new(64, 148, 163), None, false, false, false, false)),
309        ("type.definition".into(), Style::new(Color::new(24, 128, 146), None, false, false, false, false)),
310        ("type.qualifier".into(), Style::new(Color::new(120, 71, 189), None, false, false, true, false)),
311        ("variable".into(), Style::new(Color::new(55, 96, 191), None, false, false, false, false)),
312        ("variable.builtin".into(), Style::new(Color::new(245, 42, 101), None, false, false, false, false)),
313        ("variable.member".into(), Style::new(Color::new(56, 112, 104), None, false, false, false, false)),
314        ("variable.parameter".into(), Style::new(Color::new(140, 108, 62), None, false, false, false, false)),
315        ("variable.parameter.builtin".into(), Style::new(Color::new(123, 106, 88), None, false, false, false, false)),
316    ]))
317}
318
319#[rustfmt::skip]
320pub fn moon() -> ResolvedTheme {
321    ResolvedTheme::new(BTreeMap::from([
322        ("_normal".into(), Style::new(Color::new(200, 211, 245), Some(Color::new(34, 36, 54)), false, false, false, false)),
323        ("annotation".into(), Style::new(Color::new(134, 225, 252), None, false, false, false, false)),
324        ("attribute".into(), Style::new(Color::new(134, 225, 252), None, false, false, false, false)),
325        ("attribute.builtin".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
326        ("boolean".into(), Style::new(Color::new(255, 150, 108), None, false, false, false, false)),
327        ("character".into(), Style::new(Color::new(195, 232, 141), None, false, false, false, false)),
328        ("character.printf".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
329        ("character.special".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
330        ("comment".into(), Style::new(Color::new(99, 109, 166), None, false, false, true, false)),
331        ("comment.error".into(), Style::new(Color::new(197, 59, 83), None, false, false, false, false)),
332        ("comment.hint".into(), Style::new(Color::new(79, 214, 190), None, false, false, false, false)),
333        ("comment.info".into(), Style::new(Color::new(13, 185, 215), None, false, false, false, false)),
334        ("comment.note".into(), Style::new(Color::new(79, 214, 190), None, false, false, false, false)),
335        ("comment.todo".into(), Style::new(Color::new(130, 170, 255), None, false, false, false, false)),
336        ("comment.warning".into(), Style::new(Color::new(255, 199, 119), None, false, false, false, false)),
337        ("constant".into(), Style::new(Color::new(255, 150, 108), None, false, false, false, false)),
338        ("constant.builtin".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
339        ("constant.macro".into(), Style::new(Color::new(134, 225, 252), None, false, false, false, false)),
340        ("constructor".into(), Style::new(Color::new(192, 153, 255), None, false, false, false, false)),
341        ("constructor.tsx".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
342        ("function".into(), Style::new(Color::new(130, 170, 255), None, false, false, false, false)),
343        ("function.builtin".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
344        ("function.call".into(), Style::new(Color::new(130, 170, 255), None, false, false, false, false)),
345        ("function.macro".into(), Style::new(Color::new(134, 225, 252), None, false, false, false, false)),
346        ("function.method".into(), Style::new(Color::new(130, 170, 255), None, false, false, false, false)),
347        ("function.method.call".into(), Style::new(Color::new(130, 170, 255), None, false, false, false, false)),
348        ("ibl.indent.char.1".into(), Style::new(Color::new(59, 66, 97), None, false, false, false, false)),
349        ("ibl.scope.char.1".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
350        ("ibl.whitespace.char.1".into(), Style::new(Color::new(59, 66, 97), None, false, false, false, false)),
351        ("keyword".into(), Style::new(Color::new(252, 167, 234), None, false, false, true, false)),
352        ("keyword.conditional".into(), Style::new(Color::new(192, 153, 255), None, false, false, false, false)),
353        ("keyword.coroutine".into(), Style::new(Color::new(252, 167, 234), None, false, false, true, false)),
354        ("keyword.debug".into(), Style::new(Color::new(255, 150, 108), None, false, false, false, false)),
355        ("keyword.directive".into(), Style::new(Color::new(134, 225, 252), None, false, false, false, false)),
356        ("keyword.directive.define".into(), Style::new(Color::new(134, 225, 252), None, false, false, false, false)),
357        ("keyword.exception".into(), Style::new(Color::new(192, 153, 255), None, false, false, false, false)),
358        ("keyword.function".into(), Style::new(Color::new(192, 153, 255), None, false, false, false, false)),
359        ("keyword.import".into(), Style::new(Color::new(134, 225, 252), None, false, false, false, false)),
360        ("keyword.operator".into(), Style::new(Color::new(137, 221, 255), None, false, false, false, false)),
361        ("keyword.repeat".into(), Style::new(Color::new(192, 153, 255), None, false, false, false, false)),
362        ("keyword.return".into(), Style::new(Color::new(252, 167, 234), None, false, false, true, false)),
363        ("keyword.storage".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
364        ("label".into(), Style::new(Color::new(130, 170, 255), None, false, false, false, false)),
365        ("markup.environment".into(), Style::new(Color::new(134, 225, 252), None, false, false, false, false)),
366        ("markup.environment.name".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
367        ("markup.heading".into(), Style::new(Color::new(130, 170, 255), None, false, false, false, true)),
368        ("markup.heading.1.markdown".into(), Style::new(Color::new(130, 170, 255), None, false, false, false, true)),
369        ("markup.heading.2.markdown".into(), Style::new(Color::new(255, 199, 119), None, false, false, false, true)),
370        ("markup.heading.3.markdown".into(), Style::new(Color::new(195, 232, 141), None, false, false, false, true)),
371        ("markup.heading.4.markdown".into(), Style::new(Color::new(79, 214, 190), None, false, false, false, true)),
372        ("markup.heading.5.markdown".into(), Style::new(Color::new(192, 153, 255), None, false, false, false, true)),
373        ("markup.heading.6.markdown".into(), Style::new(Color::new(252, 167, 234), None, false, false, false, true)),
374        ("markup.heading.7.markdown".into(), Style::new(Color::new(255, 150, 108), None, false, false, false, true)),
375        ("markup.heading.8.markdown".into(), Style::new(Color::new(255, 117, 127), None, false, false, false, true)),
376        ("markup.link".into(), Style::new(Color::new(79, 214, 190), None, false, false, false, false)),
377        ("markup.link.label".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
378        ("markup.link.label.symbol".into(), Style::new(Color::new(192, 153, 255), None, false, false, false, false)),
379        ("markup.list".into(), Style::new(Color::new(137, 221, 255), None, false, false, false, false)),
380        ("markup.list.checked".into(), Style::new(Color::new(79, 214, 190), None, false, false, false, false)),
381        ("markup.list.markdown".into(), Style::new(Color::new(255, 150, 108), None, false, false, false, true)),
382        ("markup.list.unchecked".into(), Style::new(Color::new(130, 170, 255), None, false, false, false, false)),
383        ("markup.math".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
384        ("markup.raw".into(), Style::new(Color::new(195, 232, 141), None, false, false, false, false)),
385        ("markup.raw.markdown_inline".into(), Style::new(Color::new(130, 170, 255), Some(Color::new(68, 74, 115)), false, false, false, false)),
386        ("module".into(), Style::new(Color::new(134, 225, 252), None, false, false, false, false)),
387        ("module.builtin".into(), Style::new(Color::new(255, 117, 127), None, false, false, false, false)),
388        ("namespace.builtin".into(), Style::new(Color::new(255, 117, 127), None, false, false, false, false)),
389        ("number".into(), Style::new(Color::new(255, 150, 108), None, false, false, false, false)),
390        ("number.float".into(), Style::new(Color::new(255, 150, 108), None, false, false, false, false)),
391        ("operator".into(), Style::new(Color::new(137, 221, 255), None, false, false, false, false)),
392        ("property".into(), Style::new(Color::new(79, 214, 190), None, false, false, false, false)),
393        ("punctuation".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
394        ("punctuation.bracket".into(), Style::new(Color::new(130, 139, 184), None, false, false, false, false)),
395        ("punctuation.delimiter".into(), Style::new(Color::new(137, 221, 255), None, false, false, false, false)),
396        ("punctuation.special".into(), Style::new(Color::new(137, 221, 255), None, false, false, false, false)),
397        ("punctuation.special.markdown".into(), Style::new(Color::new(255, 150, 108), None, false, false, false, false)),
398        ("string".into(), Style::new(Color::new(195, 232, 141), None, false, false, false, false)),
399        ("string.documentation".into(), Style::new(Color::new(255, 199, 119), None, false, false, false, false)),
400        ("string.escape".into(), Style::new(Color::new(192, 153, 255), None, false, false, false, false)),
401        ("string.regexp".into(), Style::new(Color::new(180, 249, 248), None, false, false, false, false)),
402        ("string.special".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
403        ("tag".into(), Style::new(Color::new(192, 153, 255), None, false, false, false, false)),
404        ("tag.attribute".into(), Style::new(Color::new(79, 214, 190), None, false, false, false, false)),
405        ("tag.builtin".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
406        ("tag.delimiter".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
407        ("tag.delimiter.tsx".into(), Style::new(Color::new(101, 130, 195), None, false, false, false, false)),
408        ("tag.javascript".into(), Style::new(Color::new(255, 117, 127), None, false, false, false, false)),
409        ("tag.tsx".into(), Style::new(Color::new(255, 117, 127), None, false, false, false, false)),
410        ("type".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
411        ("type.builtin".into(), Style::new(Color::new(88, 158, 215), None, false, false, false, false)),
412        ("type.definition".into(), Style::new(Color::new(101, 188, 255), None, false, false, false, false)),
413        ("type.qualifier".into(), Style::new(Color::new(252, 167, 234), None, false, false, true, false)),
414        ("variable".into(), Style::new(Color::new(200, 211, 245), None, false, false, false, false)),
415        ("variable.builtin".into(), Style::new(Color::new(255, 117, 127), None, false, false, false, false)),
416        ("variable.member".into(), Style::new(Color::new(79, 214, 190), None, false, false, false, false)),
417        ("variable.parameter".into(), Style::new(Color::new(255, 199, 119), None, false, false, false, false)),
418        ("variable.parameter.builtin".into(), Style::new(Color::new(244, 201, 144), None, false, false, false, false)),
419    ]))
420}