mirror of
https://github.com/YGGverse/Yoda.git
synced 2026-03-31 16:45:27 +00:00
rename pre to code, cleanup extra components
This commit is contained in:
parent
0cc9c69438
commit
0f53a899ad
10 changed files with 14 additions and 299 deletions
|
|
@ -1,6 +1,6 @@
|
||||||
mod bold;
|
mod bold;
|
||||||
|
mod code;
|
||||||
mod header;
|
mod header;
|
||||||
mod pre;
|
|
||||||
mod quote;
|
mod quote;
|
||||||
mod reference;
|
mod reference;
|
||||||
mod strike;
|
mod strike;
|
||||||
|
|
@ -9,17 +9,17 @@ mod underline;
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
|
|
||||||
use bold::Bold;
|
use bold::Bold;
|
||||||
|
use code::Code;
|
||||||
use gtk::{TextBuffer, TextTag, gdk::RGBA, glib::Uri};
|
use gtk::{TextBuffer, TextTag, gdk::RGBA, glib::Uri};
|
||||||
use header::Header;
|
use header::Header;
|
||||||
use pre::Pre;
|
|
||||||
use quote::Quote;
|
use quote::Quote;
|
||||||
use strike::Strike;
|
use strike::Strike;
|
||||||
use underline::Underline;
|
use underline::Underline;
|
||||||
|
|
||||||
pub struct Tags {
|
pub struct Tags {
|
||||||
pub bold: Bold,
|
pub bold: Bold,
|
||||||
|
pub code: Code,
|
||||||
pub header: Header,
|
pub header: Header,
|
||||||
pub pre: Pre,
|
|
||||||
pub quote: Quote,
|
pub quote: Quote,
|
||||||
pub strike: Strike,
|
pub strike: Strike,
|
||||||
pub underline: Underline,
|
pub underline: Underline,
|
||||||
|
|
@ -36,8 +36,8 @@ impl Tags {
|
||||||
pub fn new() -> Self {
|
pub fn new() -> Self {
|
||||||
Self {
|
Self {
|
||||||
bold: Bold::new(),
|
bold: Bold::new(),
|
||||||
|
code: Code::new(),
|
||||||
header: Header::new(),
|
header: Header::new(),
|
||||||
pre: Pre::new(),
|
|
||||||
quote: Quote::new(),
|
quote: Quote::new(),
|
||||||
strike: Strike::new(),
|
strike: Strike::new(),
|
||||||
underline: Underline::new(),
|
underline: Underline::new(),
|
||||||
|
|
@ -50,8 +50,8 @@ impl Tags {
|
||||||
link_color: &RGBA,
|
link_color: &RGBA,
|
||||||
links: &mut HashMap<TextTag, Uri>,
|
links: &mut HashMap<TextTag, Uri>,
|
||||||
) -> Option<String> {
|
) -> Option<String> {
|
||||||
// Collect all preformatted blocks first, and replace them with tmp macro ID
|
// Collect all code blocks first, and replace them with tmp macro ID
|
||||||
self.pre.collect(buffer);
|
self.code.collect(buffer);
|
||||||
|
|
||||||
// Keep in order!
|
// Keep in order!
|
||||||
let title = self.header.render(buffer);
|
let title = self.header.render(buffer);
|
||||||
|
|
@ -66,7 +66,7 @@ impl Tags {
|
||||||
reference::render_images(buffer, base, link_color, links);
|
reference::render_images(buffer, base, link_color, links);
|
||||||
reference::render_links(buffer, base, link_color, links);
|
reference::render_links(buffer, base, link_color, links);
|
||||||
|
|
||||||
self.pre.render(buffer);
|
self.code.render(buffer);
|
||||||
|
|
||||||
// Format document title string
|
// Format document title string
|
||||||
title.map(|mut s| {
|
title.map(|mut s| {
|
||||||
|
|
|
||||||
|
|
@ -10,19 +10,19 @@ use regex::Regex;
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
use syntax::Syntax;
|
use syntax::Syntax;
|
||||||
|
|
||||||
const REGEX_PRE: &str = r"(?s)```[ \t]*(?P<alt>.*?)\n(?P<data>.*?)```";
|
const REGEX_CODE: &str = r"(?s)```[ \t]*(?P<alt>.*?)\n(?P<data>.*?)```";
|
||||||
|
|
||||||
struct Entry {
|
struct Entry {
|
||||||
alt: Option<String>,
|
alt: Option<String>,
|
||||||
data: String,
|
data: String,
|
||||||
}
|
}
|
||||||
|
|
||||||
pub struct Pre {
|
pub struct Code {
|
||||||
index: HashMap<GString, Entry>,
|
index: HashMap<GString, Entry>,
|
||||||
alt: TextTag,
|
alt: TextTag,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Pre {
|
impl Code {
|
||||||
pub fn new() -> Self {
|
pub fn new() -> Self {
|
||||||
Self {
|
Self {
|
||||||
index: HashMap::new(),
|
index: HashMap::new(),
|
||||||
|
|
@ -35,12 +35,12 @@ impl Pre {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Collect all preformatted blocks into `Self.index` (to prevent formatting)
|
/// Collect all code blocks into `Self.index` (to prevent formatting)
|
||||||
pub fn collect(&mut self, buffer: &TextBuffer) {
|
pub fn collect(&mut self, buffer: &TextBuffer) {
|
||||||
let (start, end) = buffer.bounds();
|
let (start, end) = buffer.bounds();
|
||||||
let full_content = buffer.text(&start, &end, true).to_string();
|
let full_content = buffer.text(&start, &end, true).to_string();
|
||||||
|
|
||||||
let matches: Vec<_> = Regex::new(REGEX_PRE)
|
let matches: Vec<_> = Regex::new(REGEX_CODE)
|
||||||
.unwrap()
|
.unwrap()
|
||||||
.captures_iter(&full_content)
|
.captures_iter(&full_content)
|
||||||
.collect();
|
.collect();
|
||||||
|
|
@ -73,7 +73,7 @@ impl Pre {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Apply preformatted `Tag` to given `TextBuffer` using `Self.index`
|
/// Apply code `Tag` to given `TextBuffer` using `Self.index`
|
||||||
pub fn render(&mut self, buffer: &TextBuffer) {
|
pub fn render(&mut self, buffer: &TextBuffer) {
|
||||||
let syntax = Syntax::new();
|
let syntax = Syntax::new();
|
||||||
assert!(buffer.tag_table().add(&self.alt));
|
assert!(buffer.tag_table().add(&self.alt));
|
||||||
|
|
@ -113,7 +113,7 @@ fn alt(value: Option<&str>) -> Option<&str> {
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_regex() {
|
fn test_regex() {
|
||||||
let cap: Vec<_> = Regex::new(REGEX_PRE)
|
let cap: Vec<_> = Regex::new(REGEX_CODE)
|
||||||
.unwrap()
|
.unwrap()
|
||||||
.captures_iter("Some ``` alt text\ncode line 1\ncode line 2``` and ```\ncode line 3\ncode line 4``` with ")
|
.captures_iter("Some ``` alt text\ncode line 1\ncode line 2``` and ```\ncode line 3\ncode line 4``` with ")
|
||||||
.collect();
|
.collect();
|
||||||
|
|
@ -1,256 +0,0 @@
|
||||||
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,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,29 +0,0 @@
|
||||||
use gtk::{TextTag, WrapMode};
|
|
||||||
|
|
||||||
/// Default [TextTag](https://docs.gtk.org/gtk4/class.TextTag.html) preset
|
|
||||||
/// for ANSI buffer
|
|
||||||
pub struct Tag {
|
|
||||||
pub text_tag: TextTag,
|
|
||||||
}
|
|
||||||
|
|
||||||
impl Default for Tag {
|
|
||||||
fn default() -> Self {
|
|
||||||
Self::new()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
impl Tag {
|
|
||||||
// Constructors
|
|
||||||
|
|
||||||
/// Create new `Self`
|
|
||||||
pub fn new() -> Self {
|
|
||||||
Self {
|
|
||||||
text_tag: TextTag::builder()
|
|
||||||
.family("monospace") // @TODO
|
|
||||||
.left_margin(28)
|
|
||||||
.scale(0.81) // * the rounded `0.8` value crops text for some reason @TODO
|
|
||||||
.wrap_mode(WrapMode::None)
|
|
||||||
.build(),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue