mirror of
https://github.com/YGGverse/Yoda.git
synced 2025-01-15 09:10:08 +00:00
replace cansi with ansi-parser
This commit is contained in:
parent
2b0f18286f
commit
5626757376
@ -38,8 +38,8 @@ version = "0.10.68"
|
||||
[dependencies.syntect]
|
||||
version = "5.2.0"
|
||||
|
||||
[dependencies.cansi]
|
||||
version = "2.2.1"
|
||||
[dependencies.ansi-parser]
|
||||
version = "0.9.1"
|
||||
|
||||
# development
|
||||
[patch.crates-io]
|
||||
|
@ -69,16 +69,16 @@ GTK 4 / Libadwaita client written in Rust
|
||||
* [x] Multiline
|
||||
* [x] Alt
|
||||
* [x] Syntax highlight* (by [syntect](https://github.com/trishume/syntect))
|
||||
* [ ] ANSI / terminal emulation* (by [cansi](https://github.com/colored-rs/cansi))
|
||||
* [ ] ANSI / terminal emulation*
|
||||
* [x] foreground
|
||||
* [x] background
|
||||
* [ ] intensity
|
||||
* [x] italic
|
||||
* [x] underline
|
||||
* [ ] italic
|
||||
* [ ] underline
|
||||
* [ ] blink
|
||||
* [ ] reversed
|
||||
* [ ] hidden
|
||||
* [x] strikethrough
|
||||
* [ ] strikethrough
|
||||
* [x] Header
|
||||
* [x] H1
|
||||
* [x] H2
|
||||
|
@ -100,17 +100,13 @@ impl Reader {
|
||||
}
|
||||
Err(_) => {
|
||||
// Try ANSI/SGR format (terminal emulation) @TODO optional
|
||||
for (syntax_tag, entity) in ansi::format(&code.value) {
|
||||
for (ansi_tag, entity) in ansi::format(&code.value) {
|
||||
// Register new tag
|
||||
if !tag.text_tag_table.add(&syntax_tag) {
|
||||
if !tag.text_tag_table.add(&ansi_tag) {
|
||||
todo!()
|
||||
}
|
||||
// Append tag to buffer
|
||||
buffer.insert_with_tags(
|
||||
&mut buffer.end_iter(),
|
||||
&entity,
|
||||
&[&syntax_tag],
|
||||
);
|
||||
buffer.insert_with_tags(&mut buffer.end_iter(), &entity, &[&ansi_tag]);
|
||||
}
|
||||
} // @TODO handle
|
||||
}
|
||||
|
@ -1,71 +1,32 @@
|
||||
mod rgba;
|
||||
mod tag;
|
||||
|
||||
use tag::Tag;
|
||||
|
||||
use cansi::{v3::categorise_text, Color};
|
||||
use gtk::{
|
||||
gdk::RGBA,
|
||||
pango::{Style, Underline},
|
||||
prelude::TextTagExt,
|
||||
TextTag,
|
||||
};
|
||||
use ansi_parser::{AnsiParser, AnsiSequence, Output};
|
||||
use gtk::{prelude::TextTagExt, TextTag};
|
||||
|
||||
/// Apply `ANSI`/`SGR` format to new buffer
|
||||
/// Apply ANSI/SGR format to new buffer
|
||||
pub fn format(source_code: &str) -> Vec<(TextTag, String)> {
|
||||
// Init new line buffer
|
||||
let mut buffer = Vec::new();
|
||||
let mut tag = Tag::new();
|
||||
|
||||
// Begin entities parse
|
||||
for entity in categorise_text(source_code) {
|
||||
// Create new tag from default preset
|
||||
let tag = Tag::new();
|
||||
|
||||
// Apply supported decorations
|
||||
if let Some(color) = entity.fg {
|
||||
tag.text_tag
|
||||
.set_foreground_rgba(Some(&color_to_rgba(color)));
|
||||
for ref entity in source_code.ansi_parse() {
|
||||
if let Output::Escape(AnsiSequence::SetGraphicsMode(colors)) = entity {
|
||||
if colors.len() == 1 {
|
||||
} else if colors[0] == 38 {
|
||||
tag.text_tag
|
||||
.set_foreground_rgba(rgba::default(*colors.last().unwrap()).as_ref());
|
||||
} else {
|
||||
tag.text_tag
|
||||
.set_background_rgba(rgba::default(*colors.last().unwrap()).as_ref());
|
||||
}
|
||||
}
|
||||
|
||||
if let Some(color) = entity.bg {
|
||||
tag.text_tag
|
||||
.set_background_rgba(Some(&color_to_rgba(color)));
|
||||
if let Output::TextBlock(text) = entity {
|
||||
buffer.push((tag.text_tag, text.to_string()));
|
||||
tag = Tag::new();
|
||||
}
|
||||
|
||||
if entity.italic.is_some_and(|is_italic| is_italic) {
|
||||
tag.text_tag.set_style(Style::Italic);
|
||||
}
|
||||
|
||||
if entity.underline.is_some_and(|is_underline| is_underline) {
|
||||
tag.text_tag.set_underline(Underline::Single);
|
||||
}
|
||||
|
||||
if let Some(is_strikethrough) = entity.strikethrough {
|
||||
tag.text_tag.set_strikethrough(is_strikethrough);
|
||||
}
|
||||
|
||||
// Append
|
||||
buffer.push((tag.text_tag, entity.text.to_string()));
|
||||
}
|
||||
|
||||
buffer
|
||||
}
|
||||
|
||||
fn color_to_rgba(value: Color) -> RGBA {
|
||||
match value {
|
||||
Color::Black => RGBA::new(0.0, 0.0, 0.0, 1.0),
|
||||
Color::Red => RGBA::new(0.8, 0.0, 0.0, 1.0),
|
||||
Color::Green => RGBA::new(0.0, 0.8, 0.0, 1.0),
|
||||
Color::Yellow => RGBA::new(0.8, 0.8, 0.0, 1.0),
|
||||
Color::Blue => RGBA::new(0.0, 0.0, 0.9, 1.0),
|
||||
Color::Magenta => RGBA::new(0.8, 0.0, 0.8, 1.0),
|
||||
Color::Cyan => RGBA::new(0.0, 0.8, 0.8, 1.0),
|
||||
Color::White => RGBA::new(0.9, 0.9, 0.9, 1.0),
|
||||
Color::BrightBlack => RGBA::new(0.5, 0.5, 0.5, 1.0),
|
||||
Color::BrightRed => RGBA::new(1.0, 0.0, 0.0, 1.0),
|
||||
Color::BrightGreen => RGBA::new(0.0, 1.0, 0.0, 1.0),
|
||||
Color::BrightYellow => RGBA::new(1.0, 1.0, 0.0, 1.0),
|
||||
Color::BrightBlue => RGBA::new(0.4, 0.4, 1.0, 1.0),
|
||||
Color::BrightMagenta => RGBA::new(1.0, 0.0, 1.0, 1.0),
|
||||
Color::BrightCyan => RGBA::new(0.0, 1.0, 1.0, 1.0),
|
||||
Color::BrightWhite => RGBA::new(1.0, 1.0, 1.0, 1.0),
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,256 @@
|
||||
use gtk::gdk::RGBA;
|
||||
|
||||
/// Default RGBa palette for ANSI terminal emulation
|
||||
pub fn default(color: u8) -> Option<RGBA> {
|
||||
match color {
|
||||
7 => Some(RGBA::new(0.854, 0.854, 0.854, 1.0)),
|
||||
8 => Some(RGBA::new(0.424, 0.424, 0.424, 1.0)),
|
||||
10 => Some(RGBA::new(0.0, 1.0, 0.0, 1.0)),
|
||||
11 => Some(RGBA::new(1.0, 1.0, 0.0, 1.0)),
|
||||
12 => Some(RGBA::new(0.0, 0.0, 1.0, 1.0)),
|
||||
13 => Some(RGBA::new(1.0, 0.0, 1.0, 1.0)),
|
||||
14 => Some(RGBA::new(0.0, 1.0, 1.0, 1.0)),
|
||||
15 => Some(RGBA::new(1.0, 1.0, 1.0, 1.0)),
|
||||
16 => Some(RGBA::new(0.0, 0.0, 0.0, 1.0)),
|
||||
17 => Some(RGBA::new(0.0, 0.020, 0.373, 1.0)),
|
||||
18 => Some(RGBA::new(0.0, 0.031, 0.529, 1.0)),
|
||||
19 => Some(RGBA::new(0.0, 0.0, 0.686, 1.0)),
|
||||
20 => Some(RGBA::new(0.0, 0.0, 0.823, 1.0)),
|
||||
21 => Some(RGBA::new(0.0, 0.0, 1.0, 1.0)),
|
||||
22 => Some(RGBA::new(0.0, 0.373, 0.0, 1.0)),
|
||||
23 => Some(RGBA::new(0.0, 0.373, 0.373, 1.0)),
|
||||
24 => Some(RGBA::new(0.0, 0.373, 0.529, 1.0)),
|
||||
25 => Some(RGBA::new(0.0, 0.373, 0.686, 1.0)),
|
||||
26 => Some(RGBA::new(0.0, 0.373, 0.823, 1.0)),
|
||||
27 => Some(RGBA::new(0.0, 0.373, 1.0, 1.0)),
|
||||
28 => Some(RGBA::new(0.0, 0.533, 0.0, 1.0)),
|
||||
29 => Some(RGBA::new(0.0, 0.533, 0.373, 1.0)),
|
||||
30 => Some(RGBA::new(0.0, 0.533, 0.533, 1.0)),
|
||||
31 => Some(RGBA::new(0.0, 0.533, 0.686, 1.0)),
|
||||
32 => Some(RGBA::new(0.0, 0.533, 0.823, 1.0)),
|
||||
33 => Some(RGBA::new(0.0, 0.533, 1.0, 1.0)),
|
||||
34 => Some(RGBA::new(0.039, 0.686, 0.0, 1.0)),
|
||||
35 => Some(RGBA::new(0.039, 0.686, 0.373, 1.0)),
|
||||
36 => Some(RGBA::new(0.039, 0.686, 0.529, 1.0)),
|
||||
37 => Some(RGBA::new(0.039, 0.686, 0.686, 1.0)),
|
||||
38 => Some(RGBA::new(0.039, 0.686, 0.823, 1.0)),
|
||||
39 => Some(RGBA::new(0.039, 0.686, 1.0, 1.0)),
|
||||
40 => Some(RGBA::new(0.0, 0.843, 0.0, 1.0)),
|
||||
41 => Some(RGBA::new(0.0, 0.843, 0.373, 1.0)),
|
||||
42 => Some(RGBA::new(0.0, 0.843, 0.529, 1.0)),
|
||||
43 => Some(RGBA::new(0.0, 0.843, 0.686, 1.0)),
|
||||
44 => Some(RGBA::new(0.0, 0.843, 0.843, 1.0)),
|
||||
45 => Some(RGBA::new(0.0, 0.843, 1.0, 1.0)),
|
||||
46 => Some(RGBA::new(0.0, 1.0, 0.0, 1.0)),
|
||||
47 => Some(RGBA::new(0.0, 1.0, 0.373, 1.0)),
|
||||
48 => Some(RGBA::new(0.0, 1.0, 0.529, 1.0)),
|
||||
49 => Some(RGBA::new(0.0, 1.0, 0.686, 1.0)),
|
||||
50 => Some(RGBA::new(0.0, 1.0, 0.843, 1.0)),
|
||||
51 => Some(RGBA::new(0.0, 1.0, 1.0, 1.0)),
|
||||
52 => Some(RGBA::new(0.373, 0.0, 0.0, 1.0)),
|
||||
53 => Some(RGBA::new(0.373, 0.0, 0.373, 1.0)),
|
||||
54 => Some(RGBA::new(0.373, 0.0, 0.529, 1.0)),
|
||||
55 => Some(RGBA::new(0.373, 0.0, 0.686, 1.0)),
|
||||
56 => Some(RGBA::new(0.373, 0.0, 0.843, 1.0)),
|
||||
57 => Some(RGBA::new(0.373, 0.0, 1.0, 1.0)),
|
||||
58 => Some(RGBA::new(0.373, 0.373, 0.0, 1.0)),
|
||||
59 => Some(RGBA::new(0.373, 0.373, 0.373, 1.0)),
|
||||
60 => Some(RGBA::new(0.373, 0.373, 0.529, 1.0)),
|
||||
61 => Some(RGBA::new(0.373, 0.373, 0.686, 1.0)),
|
||||
62 => Some(RGBA::new(0.373, 0.373, 0.843, 1.0)),
|
||||
63 => Some(RGBA::new(0.373, 0.373, 1.0, 1.0)),
|
||||
64 => Some(RGBA::new(0.373, 0.529, 0.0, 1.0)),
|
||||
65 => Some(RGBA::new(0.373, 0.529, 0.373, 1.0)),
|
||||
66 => Some(RGBA::new(0.373, 0.529, 0.529, 1.0)),
|
||||
67 => Some(RGBA::new(0.373, 0.529, 0.686, 1.0)),
|
||||
68 => Some(RGBA::new(0.373, 0.529, 0.843, 1.0)),
|
||||
69 => Some(RGBA::new(0.373, 0.529, 1.0, 1.0)),
|
||||
70 => Some(RGBA::new(0.373, 0.686, 0.0, 1.0)),
|
||||
71 => Some(RGBA::new(0.373, 0.686, 0.373, 1.0)),
|
||||
72 => Some(RGBA::new(0.373, 0.686, 0.529, 1.0)),
|
||||
73 => Some(RGBA::new(0.373, 0.686, 0.686, 1.0)),
|
||||
74 => Some(RGBA::new(0.373, 0.686, 0.843, 1.0)),
|
||||
75 => Some(RGBA::new(0.373, 0.686, 1.0, 1.0)),
|
||||
76 => Some(RGBA::new(0.373, 0.843, 0.0, 1.0)),
|
||||
77 => Some(RGBA::new(0.373, 0.843, 0.373, 1.0)),
|
||||
78 => Some(RGBA::new(0.373, 0.843, 0.529, 1.0)),
|
||||
79 => Some(RGBA::new(0.373, 0.843, 0.686, 1.0)),
|
||||
80 => Some(RGBA::new(0.373, 0.843, 0.843, 1.0)),
|
||||
81 => Some(RGBA::new(0.373, 0.843, 1.0, 1.0)),
|
||||
82 => Some(RGBA::new(0.373, 1.0, 0.0, 1.0)),
|
||||
83 => Some(RGBA::new(0.373, 1.0, 0.373, 1.0)),
|
||||
84 => Some(RGBA::new(0.373, 1.0, 0.529, 1.0)),
|
||||
85 => Some(RGBA::new(0.373, 1.0, 0.686, 1.0)),
|
||||
86 => Some(RGBA::new(0.373, 1.0, 0.843, 1.0)),
|
||||
87 => Some(RGBA::new(0.373, 1.0, 1.0, 1.0)),
|
||||
88 => Some(RGBA::new(0.529, 0.0, 0.0, 1.0)),
|
||||
89 => Some(RGBA::new(0.529, 0.0, 0.373, 1.0)),
|
||||
90 => Some(RGBA::new(0.529, 0.0, 0.529, 1.0)),
|
||||
91 => Some(RGBA::new(0.529, 0.0, 0.686, 1.0)),
|
||||
92 => Some(RGBA::new(0.529, 0.0, 0.843, 1.0)),
|
||||
93 => Some(RGBA::new(0.529, 0.0, 1.0, 1.0)),
|
||||
94 => Some(RGBA::new(0.529, 0.373, 0.0, 1.0)),
|
||||
95 => Some(RGBA::new(0.529, 0.373, 0.373, 1.0)),
|
||||
96 => Some(RGBA::new(0.529, 0.373, 0.529, 1.0)),
|
||||
97 => Some(RGBA::new(0.529, 0.373, 0.686, 1.0)),
|
||||
98 => Some(RGBA::new(0.529, 0.373, 0.843, 1.0)),
|
||||
99 => Some(RGBA::new(0.529, 0.373, 1.0, 1.0)),
|
||||
100 => Some(RGBA::new(0.529, 0.529, 0.0, 1.0)),
|
||||
101 => Some(RGBA::new(0.529, 0.529, 0.373, 1.0)),
|
||||
102 => Some(RGBA::new(0.529, 0.529, 0.529, 1.0)),
|
||||
103 => Some(RGBA::new(0.529, 0.529, 0.686, 1.0)),
|
||||
104 => Some(RGBA::new(0.529, 0.529, 0.843, 1.0)),
|
||||
105 => Some(RGBA::new(0.529, 0.529, 1.0, 1.0)),
|
||||
106 => Some(RGBA::new(0.533, 0.686, 0.0, 1.0)),
|
||||
107 => Some(RGBA::new(0.533, 0.686, 0.373, 1.0)),
|
||||
108 => Some(RGBA::new(0.533, 0.686, 0.529, 1.0)),
|
||||
109 => Some(RGBA::new(0.533, 0.686, 0.686, 1.0)),
|
||||
110 => Some(RGBA::new(0.533, 0.686, 0.843, 1.0)),
|
||||
111 => Some(RGBA::new(0.533, 0.686, 1.0, 1.0)),
|
||||
112 => Some(RGBA::new(0.533, 0.843, 0.0, 1.0)),
|
||||
113 => Some(RGBA::new(0.533, 0.843, 0.373, 1.0)),
|
||||
114 => Some(RGBA::new(0.533, 0.843, 0.529, 1.0)),
|
||||
115 => Some(RGBA::new(0.533, 0.843, 0.686, 1.0)),
|
||||
116 => Some(RGBA::new(0.533, 0.843, 0.843, 1.0)),
|
||||
117 => Some(RGBA::new(0.533, 0.843, 1.0, 1.0)),
|
||||
118 => Some(RGBA::new(0.533, 1.0, 0.0, 1.0)),
|
||||
119 => Some(RGBA::new(0.533, 1.0, 0.373, 1.0)),
|
||||
120 => Some(RGBA::new(0.533, 1.0, 0.529, 1.0)),
|
||||
121 => Some(RGBA::new(0.533, 1.0, 0.686, 1.0)),
|
||||
122 => Some(RGBA::new(0.533, 1.0, 0.843, 1.0)),
|
||||
123 => Some(RGBA::new(0.533, 1.0, 1.0, 1.0)),
|
||||
124 => Some(RGBA::new(0.686, 0.0, 0.0, 1.0)),
|
||||
125 => Some(RGBA::new(0.686, 0.0, 0.373, 1.0)),
|
||||
126 => Some(RGBA::new(0.686, 0.0, 0.529, 1.0)),
|
||||
127 => Some(RGBA::new(0.686, 0.0, 0.686, 1.0)),
|
||||
128 => Some(RGBA::new(0.686, 0.0, 0.843, 1.0)),
|
||||
129 => Some(RGBA::new(0.686, 0.0, 1.0, 1.0)),
|
||||
130 => Some(RGBA::new(0.686, 0.373, 0.0, 1.0)),
|
||||
131 => Some(RGBA::new(0.686, 0.373, 0.373, 1.0)),
|
||||
132 => Some(RGBA::new(0.686, 0.373, 0.529, 1.0)),
|
||||
133 => Some(RGBA::new(0.686, 0.373, 0.686, 1.0)),
|
||||
134 => Some(RGBA::new(0.686, 0.373, 0.843, 1.0)),
|
||||
135 => Some(RGBA::new(0.686, 0.373, 1.0, 1.0)),
|
||||
136 => Some(RGBA::new(0.686, 0.529, 0.0, 1.0)),
|
||||
137 => Some(RGBA::new(0.686, 0.529, 0.373, 1.0)),
|
||||
138 => Some(RGBA::new(0.686, 0.529, 0.529, 1.0)),
|
||||
139 => Some(RGBA::new(0.686, 0.529, 0.686, 1.0)),
|
||||
140 => Some(RGBA::new(0.686, 0.529, 0.843, 1.0)),
|
||||
141 => Some(RGBA::new(0.686, 0.529, 1.0, 1.0)),
|
||||
142 => Some(RGBA::new(0.686, 0.686, 0.0, 1.0)),
|
||||
143 => Some(RGBA::new(0.686, 0.686, 0.373, 1.0)),
|
||||
144 => Some(RGBA::new(0.686, 0.686, 0.529, 1.0)),
|
||||
145 => Some(RGBA::new(0.686, 0.686, 0.686, 1.0)),
|
||||
146 => Some(RGBA::new(0.686, 0.686, 0.843, 1.0)),
|
||||
147 => Some(RGBA::new(0.686, 0.686, 1.0, 1.0)),
|
||||
148 => Some(RGBA::new(0.686, 0.843, 0.0, 1.0)),
|
||||
149 => Some(RGBA::new(0.686, 0.843, 0.373, 1.0)),
|
||||
150 => Some(RGBA::new(0.686, 0.843, 0.529, 1.0)),
|
||||
151 => Some(RGBA::new(0.686, 0.843, 0.686, 1.0)),
|
||||
152 => Some(RGBA::new(0.686, 0.843, 0.843, 1.0)),
|
||||
153 => Some(RGBA::new(0.686, 0.843, 1.0, 1.0)),
|
||||
154 => Some(RGBA::new(0.686, 1.0, 0.0, 1.0)),
|
||||
155 => Some(RGBA::new(0.686, 1.0, 0.373, 1.0)),
|
||||
156 => Some(RGBA::new(0.686, 1.0, 0.529, 1.0)),
|
||||
157 => Some(RGBA::new(0.686, 1.0, 0.686, 1.0)),
|
||||
158 => Some(RGBA::new(0.686, 1.0, 0.843, 1.0)),
|
||||
159 => Some(RGBA::new(0.686, 1.0, 1.0, 1.0)),
|
||||
160 => Some(RGBA::new(0.847, 0.0, 0.0, 1.0)),
|
||||
161 => Some(RGBA::new(0.847, 0.0, 0.373, 1.0)),
|
||||
162 => Some(RGBA::new(0.847, 0.0, 0.529, 1.0)),
|
||||
163 => Some(RGBA::new(0.847, 0.0, 0.686, 1.0)),
|
||||
164 => Some(RGBA::new(0.847, 0.0, 0.843, 1.0)),
|
||||
165 => Some(RGBA::new(0.847, 0.0, 1.0, 1.0)),
|
||||
166 => Some(RGBA::new(0.847, 0.373, 0.0, 1.0)),
|
||||
167 => Some(RGBA::new(0.847, 0.373, 0.373, 1.0)),
|
||||
168 => Some(RGBA::new(0.847, 0.373, 0.529, 1.0)),
|
||||
169 => Some(RGBA::new(0.847, 0.373, 0.686, 1.0)),
|
||||
170 => Some(RGBA::new(0.847, 0.373, 0.843, 1.0)),
|
||||
171 => Some(RGBA::new(0.847, 0.373, 1.0, 1.0)),
|
||||
172 => Some(RGBA::new(0.847, 0.529, 0.0, 1.0)),
|
||||
173 => Some(RGBA::new(0.847, 0.529, 0.373, 1.0)),
|
||||
174 => Some(RGBA::new(0.847, 0.529, 0.529, 1.0)),
|
||||
175 => Some(RGBA::new(0.847, 0.529, 0.686, 1.0)),
|
||||
176 => Some(RGBA::new(0.847, 0.529, 0.843, 1.0)),
|
||||
177 => Some(RGBA::new(0.847, 0.529, 1.0, 1.0)),
|
||||
178 => Some(RGBA::new(0.847, 0.686, 0.0, 1.0)),
|
||||
179 => Some(RGBA::new(0.847, 0.686, 0.373, 1.0)),
|
||||
180 => Some(RGBA::new(0.847, 0.686, 0.529, 1.0)),
|
||||
181 => Some(RGBA::new(0.847, 0.686, 0.686, 1.0)),
|
||||
182 => Some(RGBA::new(0.847, 0.686, 0.843, 1.0)),
|
||||
183 => Some(RGBA::new(0.847, 0.686, 1.0, 1.0)),
|
||||
184 => Some(RGBA::new(0.847, 0.843, 0.0, 1.0)),
|
||||
185 => Some(RGBA::new(0.847, 0.843, 0.373, 1.0)),
|
||||
186 => Some(RGBA::new(0.847, 0.843, 0.529, 1.0)),
|
||||
187 => Some(RGBA::new(0.847, 0.843, 0.686, 1.0)),
|
||||
188 => Some(RGBA::new(0.847, 0.843, 0.843, 1.0)),
|
||||
189 => Some(RGBA::new(0.847, 0.843, 1.0, 1.0)),
|
||||
190 => Some(RGBA::new(0.847, 1.0, 0.0, 1.0)),
|
||||
191 => Some(RGBA::new(0.847, 1.0, 0.373, 1.0)),
|
||||
192 => Some(RGBA::new(0.847, 1.0, 0.529, 1.0)),
|
||||
193 => Some(RGBA::new(0.847, 1.0, 0.686, 1.0)),
|
||||
194 => Some(RGBA::new(0.847, 1.0, 0.843, 1.0)),
|
||||
195 => Some(RGBA::new(0.847, 1.0, 1.0, 1.0)),
|
||||
196 => Some(RGBA::new(1.0, 0.0, 0.0, 1.0)),
|
||||
197 => Some(RGBA::new(1.0, 0.0, 0.373, 1.0)),
|
||||
198 => Some(RGBA::new(1.0, 0.0, 0.529, 1.0)),
|
||||
199 => Some(RGBA::new(1.0, 0.0, 0.686, 1.0)),
|
||||
200 => Some(RGBA::new(1.0, 0.0, 0.843, 1.0)),
|
||||
201 => Some(RGBA::new(1.0, 0.0, 1.0, 1.0)),
|
||||
202 => Some(RGBA::new(1.0, 0.373, 0.0, 1.0)),
|
||||
203 => Some(RGBA::new(1.0, 0.373, 0.373, 1.0)),
|
||||
204 => Some(RGBA::new(1.0, 0.373, 0.529, 1.0)),
|
||||
205 => Some(RGBA::new(1.0, 0.373, 0.686, 1.0)),
|
||||
206 => Some(RGBA::new(1.0, 0.373, 0.843, 1.0)),
|
||||
207 => Some(RGBA::new(1.0, 0.373, 1.0, 1.0)),
|
||||
208 => Some(RGBA::new(1.0, 0.529, 0.0, 1.0)),
|
||||
209 => Some(RGBA::new(1.0, 0.529, 0.373, 1.0)),
|
||||
210 => Some(RGBA::new(1.0, 0.529, 0.529, 1.0)),
|
||||
211 => Some(RGBA::new(1.0, 0.529, 0.686, 1.0)),
|
||||
212 => Some(RGBA::new(1.0, 0.529, 0.843, 1.0)),
|
||||
213 => Some(RGBA::new(1.0, 0.529, 1.0, 1.0)),
|
||||
214 => Some(RGBA::new(1.0, 0.686, 0.0, 1.0)),
|
||||
215 => Some(RGBA::new(1.0, 0.686, 0.373, 1.0)),
|
||||
216 => Some(RGBA::new(1.0, 0.686, 0.529, 1.0)),
|
||||
217 => Some(RGBA::new(1.0, 0.686, 0.686, 1.0)),
|
||||
218 => Some(RGBA::new(1.0, 0.686, 0.843, 1.0)),
|
||||
219 => Some(RGBA::new(1.0, 0.686, 1.0, 1.0)),
|
||||
220 => Some(RGBA::new(1.0, 0.843, 0.0, 1.0)),
|
||||
221 => Some(RGBA::new(1.0, 0.843, 0.373, 1.0)),
|
||||
222 => Some(RGBA::new(1.0, 0.843, 0.529, 1.0)),
|
||||
223 => Some(RGBA::new(1.0, 0.843, 0.686, 1.0)),
|
||||
224 => Some(RGBA::new(1.0, 0.843, 0.843, 1.0)),
|
||||
225 => Some(RGBA::new(1.0, 0.843, 1.0, 1.0)),
|
||||
226 => Some(RGBA::new(1.0, 1.0, 0.0, 1.0)),
|
||||
227 => Some(RGBA::new(1.0, 1.0, 0.373, 1.0)),
|
||||
228 => Some(RGBA::new(1.0, 1.0, 0.529, 1.0)),
|
||||
229 => Some(RGBA::new(1.0, 1.0, 0.686, 1.0)),
|
||||
230 => Some(RGBA::new(1.0, 1.0, 0.843, 1.0)),
|
||||
231 => Some(RGBA::new(1.0, 1.0, 1.0, 1.0)),
|
||||
232 => Some(RGBA::new(0.031, 0.031, 0.031, 1.0)),
|
||||
233 => Some(RGBA::new(0.071, 0.071, 0.071, 1.0)),
|
||||
234 => Some(RGBA::new(0.110, 0.110, 0.110, 1.0)),
|
||||
235 => Some(RGBA::new(0.149, 0.149, 0.149, 1.0)),
|
||||
236 => Some(RGBA::new(0.188, 0.188, 0.188, 1.0)),
|
||||
237 => Some(RGBA::new(0.227, 0.227, 0.227, 1.0)),
|
||||
238 => Some(RGBA::new(0.267, 0.267, 0.267, 1.0)),
|
||||
239 => Some(RGBA::new(0.306, 0.306, 0.306, 1.0)),
|
||||
240 => Some(RGBA::new(0.345, 0.345, 0.345, 1.0)),
|
||||
241 => Some(RGBA::new(0.384, 0.384, 0.384, 1.0)),
|
||||
242 => Some(RGBA::new(0.424, 0.424, 0.424, 1.0)),
|
||||
243 => Some(RGBA::new(0.462, 0.462, 0.462, 1.0)),
|
||||
244 => Some(RGBA::new(0.502, 0.502, 0.502, 1.0)),
|
||||
245 => Some(RGBA::new(0.541, 0.541, 0.541, 1.0)),
|
||||
246 => Some(RGBA::new(0.580, 0.580, 0.580, 1.0)),
|
||||
247 => Some(RGBA::new(0.620, 0.620, 0.620, 1.0)),
|
||||
248 => Some(RGBA::new(0.659, 0.659, 0.659, 1.0)),
|
||||
249 => Some(RGBA::new(0.694, 0.694, 0.694, 1.0)),
|
||||
250 => Some(RGBA::new(0.733, 0.733, 0.733, 1.0)),
|
||||
251 => Some(RGBA::new(0.777, 0.777, 0.777, 1.0)),
|
||||
252 => Some(RGBA::new(0.816, 0.816, 0.816, 1.0)),
|
||||
253 => Some(RGBA::new(0.855, 0.855, 0.855, 1.0)),
|
||||
254 => Some(RGBA::new(0.890, 0.890, 0.890, 1.0)),
|
||||
255 => Some(RGBA::new(0.933, 0.933, 0.933, 1.0)),
|
||||
_ => None,
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user