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]
|
[dependencies.syntect]
|
||||||
version = "5.2.0"
|
version = "5.2.0"
|
||||||
|
|
||||||
[dependencies.cansi]
|
[dependencies.ansi-parser]
|
||||||
version = "2.2.1"
|
version = "0.9.1"
|
||||||
|
|
||||||
# development
|
# development
|
||||||
[patch.crates-io]
|
[patch.crates-io]
|
||||||
|
@ -69,16 +69,16 @@ GTK 4 / Libadwaita client written in Rust
|
|||||||
* [x] Multiline
|
* [x] Multiline
|
||||||
* [x] Alt
|
* [x] Alt
|
||||||
* [x] Syntax highlight* (by [syntect](https://github.com/trishume/syntect))
|
* [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] foreground
|
||||||
* [x] background
|
* [x] background
|
||||||
* [ ] intensity
|
* [ ] intensity
|
||||||
* [x] italic
|
* [ ] italic
|
||||||
* [x] underline
|
* [ ] underline
|
||||||
* [ ] blink
|
* [ ] blink
|
||||||
* [ ] reversed
|
* [ ] reversed
|
||||||
* [ ] hidden
|
* [ ] hidden
|
||||||
* [x] strikethrough
|
* [ ] strikethrough
|
||||||
* [x] Header
|
* [x] Header
|
||||||
* [x] H1
|
* [x] H1
|
||||||
* [x] H2
|
* [x] H2
|
||||||
|
@ -100,17 +100,13 @@ impl Reader {
|
|||||||
}
|
}
|
||||||
Err(_) => {
|
Err(_) => {
|
||||||
// Try ANSI/SGR format (terminal emulation) @TODO optional
|
// 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
|
// Register new tag
|
||||||
if !tag.text_tag_table.add(&syntax_tag) {
|
if !tag.text_tag_table.add(&ansi_tag) {
|
||||||
todo!()
|
todo!()
|
||||||
}
|
}
|
||||||
// Append tag to buffer
|
// Append tag to buffer
|
||||||
buffer.insert_with_tags(
|
buffer.insert_with_tags(&mut buffer.end_iter(), &entity, &[&ansi_tag]);
|
||||||
&mut buffer.end_iter(),
|
|
||||||
&entity,
|
|
||||||
&[&syntax_tag],
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
} // @TODO handle
|
} // @TODO handle
|
||||||
}
|
}
|
||||||
|
@ -1,71 +1,32 @@
|
|||||||
|
mod rgba;
|
||||||
mod tag;
|
mod tag;
|
||||||
|
|
||||||
use tag::Tag;
|
use tag::Tag;
|
||||||
|
|
||||||
use cansi::{v3::categorise_text, Color};
|
use ansi_parser::{AnsiParser, AnsiSequence, Output};
|
||||||
use gtk::{
|
use gtk::{prelude::TextTagExt, TextTag};
|
||||||
gdk::RGBA,
|
|
||||||
pango::{Style, Underline},
|
|
||||||
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)> {
|
pub fn format(source_code: &str) -> Vec<(TextTag, String)> {
|
||||||
// Init new line buffer
|
|
||||||
let mut buffer = Vec::new();
|
let mut buffer = Vec::new();
|
||||||
|
let mut tag = Tag::new();
|
||||||
|
|
||||||
// Begin entities parse
|
for ref entity in source_code.ansi_parse() {
|
||||||
for entity in categorise_text(source_code) {
|
if let Output::Escape(AnsiSequence::SetGraphicsMode(colors)) = entity {
|
||||||
// Create new tag from default preset
|
if colors.len() == 1 {
|
||||||
let tag = Tag::new();
|
} else if colors[0] == 38 {
|
||||||
|
tag.text_tag
|
||||||
// Apply supported decorations
|
.set_foreground_rgba(rgba::default(*colors.last().unwrap()).as_ref());
|
||||||
if let Some(color) = entity.fg {
|
} else {
|
||||||
tag.text_tag
|
tag.text_tag
|
||||||
.set_foreground_rgba(Some(&color_to_rgba(color)));
|
.set_background_rgba(rgba::default(*colors.last().unwrap()).as_ref());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
if let Output::TextBlock(text) = entity {
|
||||||
if let Some(color) = entity.bg {
|
buffer.push((tag.text_tag, text.to_string()));
|
||||||
tag.text_tag
|
tag = Tag::new();
|
||||||
.set_background_rgba(Some(&color_to_rgba(color)));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
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
|
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