syntastica_themes/
oceanicnext.rs

1//! The 'oceanicnext' theme collection in this module was extracted from <https://github.com/mhartington/oceanic-next> 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(216, 222, 233), Some(Color::new(27, 43, 52)), false, false, false, false)),
14        ("attribute".into(), Style::new(Color::new(236, 95, 103), None, false, false, false, false)),
15        ("attribute.builtin".into(), Style::new(Color::new(98, 179, 178), None, false, false, false, false)),
16        ("boolean".into(), Style::new(Color::new(249, 145, 87), None, false, false, false, false)),
17        ("character".into(), Style::new(Color::new(236, 95, 103), None, false, false, false, false)),
18        ("character.special".into(), Style::new(Color::new(171, 121, 103), None, false, false, false, false)),
19        ("comment".into(), Style::new(Color::new(101, 115, 126), None, false, false, false, false)),
20        ("comment.error".into(), Style::new(Color::new(255, 192, 185), None, false, false, false, false)),
21        ("comment.note".into(), Style::new(Color::new(140, 248, 247), None, false, false, false, false)),
22        ("comment.todo".into(), Style::new(Color::new(250, 200, 99), Some(Color::new(52, 61, 70)), false, false, false, true)),
23        ("comment.warning".into(), Style::new(Color::new(252, 224, 148), None, false, false, false, false)),
24        ("conditional".into(), Style::new(Color::new(197, 148, 197), None, false, false, false, false)),
25        ("constant".into(), Style::new(Color::new(249, 145, 87), None, false, false, false, false)),
26        ("constant.builtin".into(), Style::new(Color::new(98, 179, 178), None, false, false, false, false)),
27        ("constructor".into(), Style::new(Color::new(216, 222, 233), None, false, false, false, false)),
28        ("diff.delta".into(), Style::new(Color::new(140, 248, 247), None, false, false, false, false)),
29        ("diff.minus".into(), Style::new(Color::new(255, 192, 185), None, false, false, false, false)),
30        ("diff.plus".into(), Style::new(Color::new(179, 246, 192), None, false, false, false, false)),
31        ("exception".into(), Style::new(Color::new(236, 95, 103), None, false, false, false, false)),
32        ("function".into(), Style::new(Color::new(102, 153, 204), None, false, false, false, false)),
33        ("function.builtin".into(), Style::new(Color::new(98, 179, 178), None, false, false, false, false)),
34        ("ibl.indent.char.1".into(), Style::new(Color::new(101, 115, 126), None, false, false, false, false)),
35        ("ibl.scope.char.1".into(), Style::new(Color::new(101, 115, 126), Some(Color::new(27, 43, 52)), false, false, false, false)),
36        ("ibl.whitespace.char.1".into(), Style::new(Color::new(101, 115, 126), None, false, false, false, false)),
37        ("include".into(), Style::new(Color::new(197, 148, 197), None, false, false, false, false)),
38        ("keyword".into(), Style::new(Color::new(197, 148, 197), None, false, false, false, false)),
39        ("keyword.operator".into(), Style::new(Color::new(197, 148, 197), None, false, false, false, false)),
40        ("label".into(), Style::new(Color::new(98, 179, 178), None, false, false, false, false)),
41        ("markup".into(), Style::new(Color::new(98, 179, 178), None, false, false, false, false)),
42        ("markup.heading".into(), Style::new(Color::new(102, 153, 204), None, false, false, false, true)),
43        ("markup.link".into(), Style::new(Color::new(236, 95, 103), None, true, false, false, false)),
44        ("method".into(), Style::new(Color::new(102, 153, 204), None, false, false, false, false)),
45        ("module".into(), Style::new(Color::new(197, 148, 197), None, false, false, false, false)),
46        ("module.builtin".into(), Style::new(Color::new(98, 179, 178), None, false, false, false, false)),
47        ("namespace".into(), Style::new(Color::new(216, 222, 233), None, false, false, false, false)),
48        ("number".into(), Style::new(Color::new(249, 145, 87), None, false, false, false, false)),
49        ("number.float".into(), Style::new(Color::new(249, 145, 87), None, false, false, false, false)),
50        ("operator".into(), Style::new(Color::new(249, 145, 87), None, false, false, false, false)),
51        ("parameter".into(), Style::new(Color::new(250, 200, 99), None, false, false, false, false)),
52        ("property".into(), Style::new(Color::new(216, 222, 233), None, false, false, false, false)),
53        ("punctuation".into(), Style::new(Color::new(171, 121, 103), None, false, false, false, false)),
54        ("punctuation.bracket".into(), Style::new(Color::new(98, 179, 178), None, false, false, false, false)),
55        ("punctuation.delimiter".into(), Style::new(Color::new(98, 179, 178), None, false, false, false, false)),
56        ("punctuation.special".into(), Style::new(Color::new(98, 179, 178), None, false, false, false, false)),
57        ("string".into(), Style::new(Color::new(153, 199, 148), None, false, false, false, false)),
58        ("string.escape".into(), Style::new(Color::new(171, 121, 103), None, false, false, false, false)),
59        ("string.regexp".into(), Style::new(Color::new(171, 121, 103), None, false, false, false, false)),
60        ("string.special".into(), Style::new(Color::new(171, 121, 103), None, false, false, false, false)),
61        ("string.special.url".into(), Style::new(Color::new(236, 95, 103), None, true, false, false, false)),
62        ("symbol".into(), Style::new(Color::new(153, 199, 148), None, false, false, false, false)),
63        ("tag".into(), Style::new(Color::new(216, 222, 233), None, false, false, false, false)),
64        ("tag.builtin".into(), Style::new(Color::new(98, 179, 178), None, false, false, false, false)),
65        ("tag.delimiter".into(), Style::new(Color::new(98, 179, 178), None, false, false, false, false)),
66        ("type".into(), Style::new(Color::new(250, 200, 99), None, false, false, false, false)),
67        ("type.builtin".into(), Style::new(Color::new(98, 179, 178), None, false, false, false, false)),
68        ("variable".into(), Style::new(Color::new(205, 211, 222), None, false, false, false, false)),
69        ("variable.builtin".into(), Style::new(Color::new(236, 95, 103), None, false, false, false, false)),
70        ("variable.parameter.builtin".into(), Style::new(Color::new(98, 179, 178), None, false, false, false, false)),
71    ]))
72}
73
74#[rustfmt::skip]
75pub fn light() -> ResolvedTheme {
76    ResolvedTheme::new(BTreeMap::from([
77        ("_normal".into(), Style::new(Color::new(27, 43, 52), Some(Color::new(245, 247, 250)), false, false, false, false)),
78        ("attribute".into(), Style::new(Color::new(208, 84, 91), None, false, false, false, false)),
79        ("attribute.builtin".into(), Style::new(Color::new(86, 158, 157), None, false, false, false, false)),
80        ("boolean".into(), Style::new(Color::new(219, 128, 77), None, false, false, false, false)),
81        ("character".into(), Style::new(Color::new(208, 84, 91), None, false, false, false, false)),
82        ("character.special".into(), Style::new(Color::new(150, 106, 91), None, false, false, false, false)),
83        ("comment".into(), Style::new(Color::new(167, 173, 186), None, false, false, false, false)),
84        ("comment.error".into(), Style::new(Color::new(255, 192, 185), None, false, false, false, false)),
85        ("comment.note".into(), Style::new(Color::new(140, 248, 247), None, false, false, false, false)),
86        ("comment.todo".into(), Style::new(Color::new(220, 176, 87), Some(Color::new(212, 216, 220)), false, false, false, true)),
87        ("comment.warning".into(), Style::new(Color::new(252, 224, 148), None, false, false, false, false)),
88        ("conditional".into(), Style::new(Color::new(173, 130, 173), None, false, false, false, false)),
89        ("constant".into(), Style::new(Color::new(219, 128, 77), None, false, false, false, false)),
90        ("constant.builtin".into(), Style::new(Color::new(86, 158, 157), None, false, false, false, false)),
91        ("constructor".into(), Style::new(Color::new(27, 43, 52), None, false, false, false, false)),
92        ("diff.delta".into(), Style::new(Color::new(140, 248, 247), None, false, false, false, false)),
93        ("diff.minus".into(), Style::new(Color::new(255, 192, 185), None, false, false, false, false)),
94        ("diff.plus".into(), Style::new(Color::new(179, 246, 192), None, false, false, false, false)),
95        ("exception".into(), Style::new(Color::new(208, 84, 91), None, false, false, false, false)),
96        ("function".into(), Style::new(Color::new(90, 135, 180), None, false, false, false, false)),
97        ("function.builtin".into(), Style::new(Color::new(86, 158, 157), None, false, false, false, false)),
98        ("ibl.indent.char.1".into(), Style::new(Color::new(167, 173, 186), None, false, false, false, false)),
99        ("ibl.scope.char.1".into(), Style::new(Color::new(167, 173, 186), Some(Color::new(245, 247, 250)), false, false, false, false)),
100        ("ibl.whitespace.char.1".into(), Style::new(Color::new(167, 173, 186), None, false, false, false, false)),
101        ("include".into(), Style::new(Color::new(173, 130, 173), None, false, false, false, false)),
102        ("keyword".into(), Style::new(Color::new(173, 130, 173), None, false, false, false, false)),
103        ("keyword.operator".into(), Style::new(Color::new(173, 130, 173), None, false, false, false, false)),
104        ("label".into(), Style::new(Color::new(86, 158, 157), None, false, false, false, false)),
105        ("markup".into(), Style::new(Color::new(86, 158, 157), None, false, false, false, false)),
106        ("markup.heading".into(), Style::new(Color::new(90, 135, 180), None, false, false, false, true)),
107        ("markup.link".into(), Style::new(Color::new(208, 84, 91), None, true, false, false, false)),
108        ("method".into(), Style::new(Color::new(90, 135, 180), None, false, false, false, false)),
109        ("module".into(), Style::new(Color::new(173, 130, 173), None, false, false, false, false)),
110        ("module.builtin".into(), Style::new(Color::new(86, 158, 157), None, false, false, false, false)),
111        ("namespace".into(), Style::new(Color::new(27, 43, 52), None, false, false, false, false)),
112        ("number".into(), Style::new(Color::new(219, 128, 77), None, false, false, false, false)),
113        ("number.float".into(), Style::new(Color::new(219, 128, 77), None, false, false, false, false)),
114        ("operator".into(), Style::new(Color::new(219, 128, 77), None, false, false, false, false)),
115        ("parameter".into(), Style::new(Color::new(220, 176, 87), None, false, false, false, false)),
116        ("property".into(), Style::new(Color::new(27, 43, 52), None, false, false, false, false)),
117        ("punctuation".into(), Style::new(Color::new(150, 106, 91), None, false, false, false, false)),
118        ("punctuation.bracket".into(), Style::new(Color::new(86, 158, 157), None, false, false, false, false)),
119        ("punctuation.delimiter".into(), Style::new(Color::new(86, 158, 157), None, false, false, false, false)),
120        ("punctuation.special".into(), Style::new(Color::new(86, 158, 157), None, false, false, false, false)),
121        ("string".into(), Style::new(Color::new(135, 175, 130), None, false, false, false, false)),
122        ("string.escape".into(), Style::new(Color::new(150, 106, 91), None, false, false, false, false)),
123        ("string.regexp".into(), Style::new(Color::new(150, 106, 91), None, false, false, false, false)),
124        ("string.special".into(), Style::new(Color::new(150, 106, 91), None, false, false, false, false)),
125        ("string.special.url".into(), Style::new(Color::new(208, 84, 91), None, true, false, false, false)),
126        ("symbol".into(), Style::new(Color::new(135, 175, 130), None, false, false, false, false)),
127        ("tag".into(), Style::new(Color::new(27, 43, 52), None, false, false, false, false)),
128        ("tag.builtin".into(), Style::new(Color::new(86, 158, 157), None, false, false, false, false)),
129        ("tag.delimiter".into(), Style::new(Color::new(86, 158, 157), None, false, false, false, false)),
130        ("type".into(), Style::new(Color::new(220, 176, 87), None, false, false, false, false)),
131        ("type.builtin".into(), Style::new(Color::new(86, 158, 157), None, false, false, false, false)),
132        ("variable".into(), Style::new(Color::new(52, 61, 70), None, false, false, false, false)),
133        ("variable.builtin".into(), Style::new(Color::new(208, 84, 91), None, false, false, false, false)),
134        ("variable.parameter.builtin".into(), Style::new(Color::new(86, 158, 157), None, false, false, false, false)),
135    ]))
136}