tex_glyphs/fontstyles.rs
1/*! Font modifiers - e.g. bold, fraktur, italic, etc. */
2use phf::{phf_map, Map};
3use std::fmt::{Display, Write};
4
5/// A font modifier
6#[derive(Copy, Clone, Debug, PartialEq, Eq)]
7pub enum FontModifier {
8 /// Blackboard (e.g. `๐ธ`)
9 Blackboard = 0,
10 /// Fraktur (e.g. `๐`)
11 Fraktur = 1,
12 /// Script (e.g. `๐`)
13 Script = 2,
14 /// Bold (e.g. `๐`)
15 Bold = 3,
16 /// Small capitals (e.g. `แด` for `a`)
17 Capitals = 4,
18 /// Monospaced (e.g. `๐ฐ`, which is distinct from `A`)
19 Monospaced = 5,
20 /// Italic (e.g. `๐ด`)
21 Italic = 6,
22 /// Oblique (e.g. `๐ด` - in unicode, italic and oblique are the same)
23 Oblique = 7,
24 /// Sans serif (e.g. `๐ `, which is distinct from `A`)
25 SansSerif = 8,
26}
27
28/// A sequence of font modifiers, encoded as bitfields
29#[derive(Copy, Clone, Debug, PartialEq, Eq, Default)]
30#[allow(clippy::struct_excessive_bools)]
31pub struct ModifierSeq {
32 pub(crate) blackboard: bool,
33 pub(crate) fraktur: bool,
34 pub(crate) script: bool,
35 pub(crate) bold: bool,
36 pub(crate) capitals: bool,
37 pub(crate) monospaced: bool,
38 pub(crate) italic: bool,
39 pub(crate) oblique: bool,
40 pub(crate) sans_serif: bool,
41}
42impl ModifierSeq {
43 #[inline]
44 fn blackboard() -> Self {
45 Self {
46 blackboard: true,
47 ..Default::default()
48 }
49 }
50
51 #[inline]
52 fn fraktur() -> Self {
53 Self {
54 fraktur: true,
55 ..Default::default()
56 }
57 }
58
59 #[inline]
60 fn script() -> Self {
61 Self {
62 script: true,
63 ..Default::default()
64 }
65 }
66
67 #[inline]
68 fn bold() -> Self {
69 Self {
70 bold: true,
71 ..Default::default()
72 }
73 }
74
75 #[inline]
76 fn capitals() -> Self {
77 Self {
78 capitals: true,
79 ..Default::default()
80 }
81 }
82
83 #[inline]
84 fn monospaced() -> Self {
85 Self {
86 monospaced: true,
87 ..Default::default()
88 }
89 }
90
91 #[inline]
92 fn italic() -> Self {
93 Self {
94 italic: true,
95 ..Default::default()
96 }
97 }
98
99 #[inline]
100 fn oblique() -> Self {
101 Self {
102 oblique: true,
103 ..Default::default()
104 }
105 }
106
107 #[inline]
108 fn sans_serif() -> Self {
109 Self {
110 sans_serif: true,
111 ..Default::default()
112 }
113 }
114
115 /// And empty sequence of modifiers
116 #[must_use]
117 #[inline]
118 pub fn empty() -> Self {
119 Self::default()
120 }
121
122 /// Add a modifier to this sequence
123 pub fn add(&mut self, m: FontModifier) {
124 match m {
125 FontModifier::Blackboard => self.blackboard = true,
126 FontModifier::Fraktur => self.fraktur = true,
127 FontModifier::Script => self.script = true,
128 FontModifier::Bold => self.bold = true,
129 FontModifier::Capitals => self.capitals = true,
130 FontModifier::Monospaced => self.monospaced = true,
131 FontModifier::Italic => self.italic = true,
132 FontModifier::Oblique => self.oblique = true,
133 FontModifier::SansSerif => self.sans_serif = true,
134 }
135 }
136
137 /// Whether this sequence contains the given modifier
138 #[must_use]
139 #[inline]
140 pub const fn has(&self, m: FontModifier) -> bool {
141 match m {
142 FontModifier::Blackboard => self.blackboard,
143 FontModifier::Fraktur => self.fraktur,
144 FontModifier::Script => self.script,
145 FontModifier::Bold => self.bold,
146 FontModifier::Capitals => self.capitals,
147 FontModifier::Monospaced => self.monospaced,
148 FontModifier::Italic => self.italic,
149 FontModifier::Oblique => self.oblique,
150 FontModifier::SansSerif => self.sans_serif,
151 }
152 }
153
154 #[inline]
155 fn map<F: FnMut(&Map<char, char>)>(&self, mut f: F) {
156 if self.has(FontModifier::Blackboard) {
157 f(&BLACKBOARD);
158 }
159 if self.has(FontModifier::Fraktur) {
160 f(&FRAKTUR);
161 }
162 if self.has(FontModifier::Script) {
163 f(&SCRIPT);
164 }
165 if self.has(FontModifier::Bold) {
166 f(&BOLD);
167 }
168 if self.has(FontModifier::Capitals) {
169 f(&CAPITAL);
170 }
171 if self.has(FontModifier::Monospaced) {
172 f(&MONOSPACED);
173 }
174 if self.has(FontModifier::Italic) || self.has(FontModifier::Oblique) {
175 f(&ITALIC);
176 }
177 if self.has(FontModifier::SansSerif) {
178 f(&SANS);
179 }
180 }
181}
182impl From<&[FontModifier]> for ModifierSeq {
183 fn from(mods: &[FontModifier]) -> Self {
184 let mut s = Self::empty();
185 for m in mods {
186 s.add(*m);
187 }
188 s
189 }
190}
191/// A wrapper struct that applies a sequence of font modifiers to a string
192pub struct CharConverter<'a, S: AsRef<str>> {
193 maps: ModifierSeq,
194 iter: &'a S,
195}
196impl<S: AsRef<str>> Display for CharConverter<'_, S> {
197 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
198 let chars = self.iter.as_ref().chars();
199 for mut c in chars {
200 self.maps.map(|m| {
201 if let Some(nc) = m.get(&c) {
202 c = *nc;
203 }
204 });
205 f.write_char(c)?;
206 }
207 Ok(())
208 }
209}
210
211/// A trait for applying font modifiers to *something*. Implemented for anything
212/// that implements `AsRef<str>`, and for [`CharConverter`] for chaining.
213pub trait FontModifiable {
214 /// The base type of this object; usually `Self`
215 type R: AsRef<str>;
216 /// Apply the given modifiers to this object.
217 fn apply<'a>(self, mods: ModifierSeq) -> CharConverter<'a, Self::R>
218 where
219 Self: 'a;
220 /// Add the given modifiers to this object.
221 fn apply_modifiers<'a>(self, mods: &'a [FontModifier]) -> CharConverter<'a, Self::R>
222 where
223 Self: 'a + Sized,
224 {
225 self.apply(mods.into())
226 }
227 /// Applies the [`Blackboard`](FontModifier::Blackboard) modifier.
228 fn make_blackboard<'a>(self) -> CharConverter<'a, Self::R>
229 where
230 Self: 'a;
231 /// Applies the [`Fraktur`](FontModifier::Fraktur) modifier.
232 fn make_fraktur<'a>(self) -> CharConverter<'a, Self::R>
233 where
234 Self: 'a;
235 /// Applies the [`Script`](FontModifier::Script) modifier.
236 fn make_script<'a>(self) -> CharConverter<'a, Self::R>
237 where
238 Self: 'a;
239 /// Applies the [`Bold`](FontModifier::Bold) modifier.
240 fn make_bold<'a>(self) -> CharConverter<'a, Self::R>
241 where
242 Self: 'a;
243 /// Applies the [`Capitals`](FontModifier::Capitals) modifier.
244 fn make_smallcaps<'a>(self) -> CharConverter<'a, Self::R>
245 where
246 Self: 'a;
247 /// Applies the [`Monospaced`](FontModifier::Monospaced) modifier.
248 fn make_monospaced<'a>(self) -> CharConverter<'a, Self::R>
249 where
250 Self: 'a;
251 /// Applies the [`Italic`](FontModifier::Italic) modifier.
252 fn make_italic<'a>(self) -> CharConverter<'a, Self::R>
253 where
254 Self: 'a;
255 /// Applies the [`Oblique`](FontModifier::Oblique) modifier.
256 fn make_oblique<'a>(self) -> CharConverter<'a, Self::R>
257 where
258 Self: 'a;
259 /// Applies the [`SansSerif`](FontModifier::SansSerif) modifier.
260 fn make_sans<'a>(self) -> CharConverter<'a, Self::R>
261 where
262 Self: 'a;
263}
264
265impl<S: AsRef<str>> FontModifiable for &'_ S {
266 type R = S;
267 fn apply<'b>(self, mods: ModifierSeq) -> CharConverter<'b, S>
268 where
269 Self: 'b,
270 {
271 CharConverter {
272 maps: mods,
273 iter: self,
274 }
275 }
276 fn make_blackboard<'b>(self) -> CharConverter<'b, S>
277 where
278 Self: 'b,
279 {
280 CharConverter {
281 maps: ModifierSeq::blackboard(),
282 iter: self,
283 }
284 }
285 fn make_fraktur<'b>(self) -> CharConverter<'b, S>
286 where
287 Self: 'b,
288 {
289 CharConverter {
290 maps: ModifierSeq::fraktur(),
291 iter: self,
292 }
293 }
294 fn make_script<'b>(self) -> CharConverter<'b, S>
295 where
296 Self: 'b,
297 {
298 CharConverter {
299 maps: ModifierSeq::script(),
300 iter: self,
301 }
302 }
303 fn make_bold<'b>(self) -> CharConverter<'b, S>
304 where
305 Self: 'b,
306 {
307 CharConverter {
308 maps: ModifierSeq::bold(),
309 iter: self,
310 }
311 }
312 fn make_smallcaps<'b>(self) -> CharConverter<'b, S>
313 where
314 Self: 'b,
315 {
316 CharConverter {
317 maps: ModifierSeq::capitals(),
318 iter: self,
319 }
320 }
321 fn make_monospaced<'b>(self) -> CharConverter<'b, S>
322 where
323 Self: 'b,
324 {
325 CharConverter {
326 maps: ModifierSeq::monospaced(),
327 iter: self,
328 }
329 }
330 fn make_italic<'b>(self) -> CharConverter<'b, S>
331 where
332 Self: 'b,
333 {
334 CharConverter {
335 maps: ModifierSeq::italic(),
336 iter: self,
337 }
338 }
339 fn make_oblique<'b>(self) -> CharConverter<'b, S>
340 where
341 Self: 'b,
342 {
343 CharConverter {
344 maps: ModifierSeq::oblique(),
345 iter: self,
346 }
347 }
348 fn make_sans<'b>(self) -> CharConverter<'b, S>
349 where
350 Self: 'b,
351 {
352 CharConverter {
353 maps: ModifierSeq::sans_serif(),
354 iter: self,
355 }
356 }
357}
358
359impl<S: AsRef<str>> FontModifiable for CharConverter<'_, S> {
360 type R = S;
361 fn apply<'b>(mut self, mods: ModifierSeq) -> CharConverter<'b, Self::R>
362 where
363 Self: 'b,
364 {
365 self.maps = mods;
366 self
367 }
368 fn apply_modifiers<'b>(mut self, mods: &'b [FontModifier]) -> CharConverter<'b, S>
369 where
370 Self: 'b,
371 {
372 for m in mods {
373 self.maps.add(*m);
374 }
375 self
376 }
377 fn make_blackboard<'b>(mut self) -> CharConverter<'b, S>
378 where
379 Self: 'b,
380 {
381 self.maps.add(FontModifier::Blackboard);
382 self
383 }
384 fn make_fraktur<'b>(mut self) -> CharConverter<'b, S>
385 where
386 Self: 'b,
387 {
388 self.maps.add(FontModifier::Fraktur);
389 self
390 }
391 fn make_script<'b>(mut self) -> CharConverter<'b, S>
392 where
393 Self: 'b,
394 {
395 self.maps.add(FontModifier::Script);
396 self
397 }
398 fn make_bold<'b>(mut self) -> CharConverter<'b, S>
399 where
400 Self: 'b,
401 {
402 self.maps.add(FontModifier::Bold);
403 self
404 }
405 fn make_smallcaps<'b>(mut self) -> CharConverter<'b, S>
406 where
407 Self: 'b,
408 {
409 self.maps.add(FontModifier::Capitals);
410 self
411 }
412 fn make_monospaced<'b>(mut self) -> CharConverter<'b, S>
413 where
414 Self: 'b,
415 {
416 self.maps.add(FontModifier::Monospaced);
417 self
418 }
419 fn make_italic<'b>(mut self) -> CharConverter<'b, S>
420 where
421 Self: 'b,
422 {
423 self.maps.add(FontModifier::Italic);
424 self
425 }
426 fn make_oblique<'b>(mut self) -> CharConverter<'b, S>
427 where
428 Self: 'b,
429 {
430 self.maps.add(FontModifier::Oblique);
431 self
432 }
433 fn make_sans<'b>(mut self) -> CharConverter<'b, S>
434 where
435 Self: 'b,
436 {
437 self.maps.add(FontModifier::SansSerif);
438 self
439 }
440}
441
442static BLACKBOARD: Map<char, char> = phf_map! {
443 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'
444 // => '๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ธ๐นโ๐ป๐ผ๐ฝ๐พโ๐๐๐๐๐โ๐โโโ๐๐๐๐๐๐๐โค๐๐๐๐๐๐๐๐๐ ๐ก'
445 'a' => '๐','b' => '๐','c' => '๐','d' => '๐','e' => '๐','f' => '๐','g' => '๐',
446 'h' => '๐','i' => '๐','j' => '๐','k' => '๐','l' => '๐','m' => '๐','n' => '๐',
447 'o' => '๐ ','p' => '๐ก','q' => '๐ข','r' => '๐ฃ','s' => '๐ค','t' => '๐ฅ','u' => '๐ฆ',
448 'v' => '๐ง','w' => '๐จ','x' => '๐ฉ','y' => '๐ช','z' => '๐ซ','A' => '๐ธ','B' => '๐น',
449 'C' => 'โ','D' => '๐ป','E' => '๐ผ','F' => '๐ฝ','G' => '๐พ','H' => 'โ','I' => '๐',
450 'J' => '๐','K' => '๐','L' => '๐','M' => '๐','N' => 'โ','O' => '๐','P' => 'โ',
451 'Q' => 'โ','R' => 'โ','S' => '๐','T' => '๐','U' => '๐','V' => '๐','W' => '๐',
452 'X' => '๐','Y' => '๐','Z' => 'โค','0' => '๐','1' => '๐','2' => '๐','3' => '๐',
453 '4' => '๐','5' => '๐','6' => '๐','7' => '๐','8' => '๐ ','9' => '๐ก'
454};
455
456static MONOSPACED: Map<char, char> = phf_map! {
457 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'
458 // => '๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐0๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ'
459 'a' => '๐','b' => '๐','c' => '๐','d' => '๐','e' => '๐','f' => '๐','g' => '๐',
460 'h' => '๐','i' => '๐','j' => '๐','k' => '๐','l' => '๐','m' => '๐','n' => '๐',
461 'o' => '๐','p' => '๐','q' => '๐','r' => '๐','s' => '๐','t' => '๐','u' => '๐',
462 'v' => '๐','w' => '๐ ','x' => '๐ก','y' => '๐ข','z' => '๐ฃ','A' => '๐ฐ','B' => '๐ฑ',
463 'C' => '๐ฒ','D' => '๐ณ','E' => '๐ด','F' => '๐ต','G' => '๐ถ','H' => '๐ท','I' => '๐ธ',
464 'J' => '๐น','K' => '๐บ','L' => '๐ป','M' => '๐ผ','N' => '๐ฝ','O' => '๐พ','P' => '๐ฟ',
465 'Q' => '๐','R' => '๐','S' => '๐','T' => '๐','U' => '๐','V' => '๐
','W' => '๐',
466 'X' => '๐','Y' => '๐','Z' => '๐','0' => '๐ถ','1' => '๐ท','2' => '๐ธ','3' => '๐น',
467 '4' => '๐บ','5' => '๐ป','6' => '๐ผ','7' => '๐ฝ','8' => '๐พ','9' => '๐ฟ'
468};
469
470static CAPITAL: Map<char, char> = phf_map! {
471 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
472 // => 'แดสแดแด
แดาษขสษชแดแดสแดษดแดแดวซสsแดแดแด แดกxสแดข๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น'
473 'a' => 'แด','b' => 'ส','c' => 'แด','d' => 'แด
','e' => 'แด','f' => 'า','g' => 'ษข',
474 'h' => 'ส','i' => 'ษช','j' => 'แด','k' => 'แด','l' => 'ส','m' => 'แด','n' => 'ษด',
475 'o' => 'แด','p' => 'แด','q' => 'วซ','r' => 'ส','s' => 's','t' => 'แด','u' => 'แด',
476 'v' => 'แด ','w' => 'แดก','x' => 'x','y' => 'ส','z' => 'แดข','A' => '๐ ','B' => '๐ก',
477 'C' => '๐ข','D' => '๐ฃ','E' => '๐ค','F' => '๐ฅ','G' => '๐ฆ','H' => '๐ง','I' => '๐จ',
478 'J' => '๐ฉ','K' => '๐ช','L' => '๐ซ','M' => '๐ฌ','N' => '๐ญ','O' => '๐ฎ','P' => '๐ฏ',
479 'Q' => '๐ฐ','R' => '๐ฑ','S' => '๐ฒ','T' => '๐ณ','U' => '๐ด','V' => '๐ต','W' => '๐ถ',
480 'X' => '๐ท','Y' => '๐ธ','Z' => '๐น'
481};
482
483static SCRIPT: Map<char, char> = phf_map! {
484 // roman
485 //'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
486 // => '๐ถ๐ท๐ธ๐นโฏ๐ปโ๐ฝ๐พ๐ฟ๐๐๐๐โด๐
๐๐๐๐๐๐๐๐๐๐๐โฌ๐๐โฐโฑ๐ขโโ๐ฅ๐ฆโโณ๐ฉ๐ช๐ซ๐ฌโ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต'
487 'a' => '๐ถ','b' => '๐ท','c' => '๐ธ','d' => '๐น','e' => 'โฏ','f' => '๐ป','g' => 'โ',
488 'h' => '๐ฝ','i' => '๐พ','j' => '๐ฟ','k' => '๐','l' => '๐','m' => '๐','n' => '๐',
489 'o' => 'โด','p' => '๐
','q' => '๐','r' => '๐','s' => '๐','t' => '๐','u' => '๐',
490 'v' => '๐','w' => '๐','x' => '๐','y' => '๐','z' => '๐','A' => '๐','B' => 'โฌ',
491 'C' => '๐','D' => '๐','E' => 'โฐ','F' => 'โฑ','G' => '๐ข','H' => 'โ','I' => 'โ',
492 'J' => '๐ฅ','K' => '๐ฆ','L' => 'โ','M' => 'โณ','N' => '๐ฉ','O' => '๐ช','P' => '๐ซ',
493 'Q' => '๐ฌ','R' => 'โ','S' => '๐ฎ','T' => '๐ฏ','U' => '๐ฐ','V' => '๐ฑ','W' => '๐ฒ',
494 'X' => '๐ณ','Y' => '๐ด','Z' => '๐ต',
495 // bold
496 // '๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐'
497 // => '๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ'
498 '๐' => '๐ช', '๐' => '๐ซ', '๐' => '๐ฌ', '๐' => '๐ญ', '๐' => '๐ฎ', '๐' => '๐ฏ', '๐ ' => '๐ฐ',
499 '๐ก' => '๐ฑ', '๐ข' => '๐ฒ', '๐ฃ' => '๐ณ', '๐ค' => '๐ด', '๐ฅ' => '๐ต', '๐ฆ' => '๐ถ', '๐ง' => '๐ท',
500 '๐จ' => '๐ธ', '๐ฉ' => '๐น', '๐ช' => '๐บ', '๐ซ' => '๐ป', '๐ฌ' => '๐ผ', '๐ญ' => '๐ฝ', '๐ฎ' => '๐พ',
501 '๐ฏ' => '๐ฟ', '๐ฐ' => '๐', '๐ฑ' => '๐', '๐ฒ' => '๐', '๐ณ' => '๐', '๐' => '๐', '๐' => '๐',
502 '๐' => '๐', '๐' => '๐', '๐' => '๐', '๐
' => '๐', '๐' => '๐', '๐' => '๐', '๐' => '๐',
503 '๐' => '๐', '๐' => '๐', '๐' => '๐', '๐' => '๐', '๐' => '๐', '๐' => '๐', '๐' => '๐',
504 '๐' => '๐ ', '๐' => '๐ก', '๐' => '๐ข', '๐' => '๐ฃ', '๐' => '๐ค', '๐' => '๐ฅ', '๐' => '๐ฆ',
505 '๐' => '๐ง', '๐' => '๐จ', '๐' => '๐ฉ'
506};
507
508static FRAKTUR: Map<char, char> = phf_map! {
509 // roman
510 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
511 // => '๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐๐
โญ๐๐๐๐โโ๐๐๐๐๐๐๐๐โ๐๐๐๐๐๐๐โจ'
512 'a' => '๐','b' => '๐','c' => '๐ ','d' => '๐ก','e' => '๐ข','f' => '๐ฃ','g' => '๐ค',
513 'h' => '๐ฅ','i' => '๐ฆ','j' => '๐ง','k' => '๐จ','l' => '๐ฉ','m' => '๐ช','n' => '๐ซ',
514 'o' => '๐ฌ','p' => '๐ญ','q' => '๐ฎ','r' => '๐ฏ','s' => '๐ฐ','t' => '๐ฑ','u' => '๐ฒ',
515 'v' => '๐ณ','w' => '๐ด','x' => '๐ต','y' => '๐ถ','z' => '๐ท','A' => '๐','B' => '๐
',
516 'C' => 'โญ','D' => '๐','E' => '๐','F' => '๐','G' => '๐','H' => 'โ','I' => 'โ',
517 'J' => '๐','K' => '๐','L' => '๐','M' => '๐','N' => '๐','O' => '๐','P' => '๐',
518 'Q' => '๐','R' => 'โ','S' => '๐','T' => '๐','U' => '๐','V' => '๐','W' => '๐',
519 'X' => '๐','Y' => '๐','Z' => 'โจ',
520 // bold
521 // '๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐'
522 // => '๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
'
523 '๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐ ' => '๐',
524 '๐ก' => '๐','๐ข' => '๐','๐ฃ' => '๐','๐ค' => '๐','๐ฅ' => '๐','๐ฆ' => '๐','๐ง' => '๐',
525 '๐จ' => '๐','๐ฉ' => '๐','๐ช' => '๐','๐ซ' => '๐','๐ฌ' => '๐','๐ญ' => '๐','๐ฎ' => '๐',
526 '๐ฏ' => '๐','๐ฐ' => '๐','๐ฑ' => '๐','๐ฒ' => '๐','๐ณ' => '๐','๐' => '๐ฌ','๐' => '๐ญ',
527 '๐' => '๐ฎ','๐' => '๐ฏ','๐' => '๐ฐ','๐
' => '๐ฑ','๐' => '๐ฒ','๐' => '๐ณ','๐' => '๐ด',
528 '๐' => '๐ต','๐' => '๐ถ','๐' => '๐ท','๐' => '๐ธ','๐' => '๐น','๐' => '๐บ','๐' => '๐ป',
529 '๐' => '๐ผ','๐' => '๐ฝ','๐' => '๐พ','๐' => '๐ฟ','๐' => '๐','๐' => '๐','๐' => '๐',
530 '๐' => '๐','๐' => '๐','๐' => '๐
'
531};
532
533static SANS: Map<char, char> = phf_map! {
534 // roman
535 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'
536 // => '๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ'
537 'a' => '๐บ','b' => '๐ป','c' => '๐ผ','d' => '๐ฝ','e' => '๐พ','f' => '๐ฟ','g' => '๐',
538 'h' => '๐','i' => '๐','j' => '๐','k' => '๐','l' => '๐
','m' => '๐','n' => '๐',
539 'o' => '๐','p' => '๐','q' => '๐','r' => '๐','s' => '๐','t' => '๐','u' => '๐',
540 'v' => '๐','w' => '๐','x' => '๐','y' => '๐','z' => '๐','A' => '๐ ','B' => '๐ก',
541 'C' => '๐ข','D' => '๐ฃ','E' => '๐ค','F' => '๐ฅ','G' => '๐ฆ','H' => '๐ง','I' => '๐จ',
542 'J' => '๐ฉ','K' => '๐ช','L' => '๐ซ','M' => '๐ฌ','N' => '๐ญ','O' => '๐ฎ','P' => '๐ฏ',
543 'Q' => '๐ฐ','R' => '๐ฑ','S' => '๐ฒ','T' => '๐ณ','U' => '๐ด','V' => '๐ต','W' => '๐ถ',
544 'X' => '๐ท','Y' => '๐ธ','Z' => '๐น','0' => '๐ข','1' => '๐ฃ','2' => '๐ค','3' => '๐ฅ',
545 '4' => '๐ฆ','5' => '๐ง','6' => '๐จ','7' => '๐ฉ','8' => '๐ช','9' => '๐ซ',
546 // bold
547 // '๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ช๐ซ๐ฏ๐ฒ๐ต๐ท๐น๐บ๐ผ๐ฝ๐ฟ๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก'
548 // => '๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐๐๐๐ ๐ฃ๐ฅ๐ง๐จ๐ช๐ซ๐ญ๐ฎ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐ฟ๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐'
549 '๐' => '๐ฎ','๐' => '๐ฏ','๐' => '๐ฐ','๐' => '๐ฑ','๐' => '๐ฒ','๐' => '๐ณ','๐ ' => '๐ด',
550 '๐ก' => '๐ต','๐ข' => '๐ถ','๐ฃ' => '๐ท','๐ค' => '๐ธ','๐ฅ' => '๐น','๐ฆ' => '๐บ','๐ง' => '๐ป',
551 '๐จ' => '๐ผ','๐ฉ' => '๐ฝ','๐ช' => '๐พ','๐ซ' => '๐ฟ','๐ฌ' => '๐','๐ญ' => '๐','๐ฎ' => '๐',
552 '๐ฏ' => '๐','๐ฐ' => '๐','๐ฑ' => '๐
','๐ฒ' => '๐','๐ณ' => '๐','๐' => '๐','๐' => '๐',
553 '๐' => '๐','๐' => '๐','๐' => '๐','๐
' => '๐','๐' => '๐','๐' => '๐','๐' => '๐',
554 '๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐ ','๐' => '๐ก','๐' => '๐ข','๐' => '๐ฃ',
555 '๐' => '๐ค','๐' => '๐ฅ','๐' => '๐ฆ','๐' => '๐ง','๐' => '๐จ','๐' => '๐ฉ','๐' => '๐ช',
556 '๐' => '๐ซ','๐' => '๐ฌ','๐' => '๐ญ','๐' => '๐ฌ','๐' => '๐ญ','๐' => '๐ฎ','๐' => '๐ฏ',
557 '๐' => '๐ฐ','๐' => '๐ฑ','๐' => '๐ฒ','๐' => '๐ณ','๐' => '๐ด','๐' => '๐ต','๐ช' => '๐',
558 '๐ซ' => '๐','๐ฏ' => '๐','๐ฒ' => '๐ ','๐ต' => '๐ฃ','๐ท' => '๐ฅ','๐น' => '๐ง','๐บ' => '๐จ',
559 '๐ผ' => '๐ช','๐ฝ' => '๐ซ','๐ฟ' => '๐ญ','๐' => '๐ฎ','๐' => '๐ฐ','๐' => '๐ฑ','๐' => '๐ฒ',
560 '๐
' => '๐ณ','๐' => '๐ด','๐' => '๐ต','๐' => '๐ถ','๐' => '๐ท','๐' => '๐ธ','๐' => '๐น',
561 '๐' => '๐บ','๐' => '๐ป','๐' => '๐ผ','๐' => '๐ฝ','๐' => '๐ฟ','๐' => '๐','๐' => '๐',
562 '๐' => '๐','๐' => '๐','๐' => '๐
','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐',
563 '๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐ ' => '๐','๐ก' => '๐',
564 // italic
565 // '๐๐๐๐๐๐๐โ๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐'
566 // => '๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก'
567 '๐' => '๐ข','๐' => '๐ฃ','๐' => '๐ค','๐' => '๐ฅ','๐' => '๐ฆ','๐' => '๐ง','๐' => '๐จ',
568 'โ' => '๐ฉ','๐' => '๐ช','๐' => '๐ซ','๐' => '๐ฌ','๐' => '๐ญ','๐' => '๐ฎ','๐' => '๐ฏ',
569 '๐' => '๐ฐ','๐' => '๐ฑ','๐' => '๐ฒ','๐' => '๐ณ','๐ ' => '๐ด','๐ก' => '๐ต','๐ข' => '๐ถ',
570 '๐ฃ' => '๐ท','๐ค' => '๐ธ','๐ฅ' => '๐น','๐ฆ' => '๐บ','๐ง' => '๐ป','๐ด' => '๐','๐ต' => '๐',
571 '๐ถ' => '๐','๐ท' => '๐','๐ธ' => '๐','๐น' => '๐','๐บ' => '๐','๐ป' => '๐','๐ผ' => '๐',
572 '๐ฝ' => '๐','๐พ' => '๐','๐ฟ' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐',
573 '๐' => '๐','๐
' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐',
574 '๐' => '๐','๐' => '๐ ','๐' => '๐ก',
575 // bold italic
576 // '๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐ฃ๐ฆ๐ฉ๐ซ๐ญ๐ฎ๐ฐ๐ฑ๐ณ๐ด๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐'
577 // => '๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ก๐ข๐ค๐ฅ๐ง๐จ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐น๐บ๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐'
578 '๐' => '๐','๐' => '๐','๐' => '๐','๐
' => '๐','๐' => '๐','๐' => '๐','๐' => '๐',
579 '๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐ ','๐' => '๐ก','๐' => '๐ข','๐' => '๐ฃ',
580 '๐' => '๐ค','๐' => '๐ฅ','๐' => '๐ฆ','๐' => '๐ง','๐' => '๐จ','๐' => '๐ฉ','๐' => '๐ช',
581 '๐' => '๐ซ','๐' => '๐ฌ','๐' => '๐ญ','๐' => '๐ฎ','๐' => '๐ฏ','๐จ' => '๐ผ','๐ฉ' => '๐ฝ',
582 '๐ช' => '๐พ','๐ซ' => '๐ฟ','๐ฌ' => '๐','๐ญ' => '๐','๐ฎ' => '๐','๐ฏ' => '๐','๐ฐ' => '๐',
583 '๐ฑ' => '๐
','๐ฒ' => '๐','๐ณ' => '๐','๐ด' => '๐','๐ต' => '๐','๐ถ' => '๐','๐ท' => '๐',
584 '๐ธ' => '๐','๐น' => '๐','๐บ' => '๐','๐ป' => '๐','๐ผ' => '๐','๐ฝ' => '๐','๐พ' => '๐',
585 '๐ฟ' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐ฃ' => '๐','๐ฆ' => '๐',
586 '๐ฉ' => '๐','๐ซ' => '๐','๐ญ' => '๐ก','๐ฎ' => '๐ข','๐ฐ' => '๐ค','๐ฑ' => '๐ฅ','๐ณ' => '๐ง',
587 '๐ด' => '๐จ','๐ถ' => '๐ช','๐ท' => '๐ซ','๐ธ' => '๐ฌ','๐น' => '๐ญ','๐บ' => '๐ฎ','๐ป' => '๐ฏ',
588 '๐ผ' => '๐ฐ','๐ฝ' => '๐ฑ','๐พ' => '๐ฒ','๐ฟ' => '๐ณ','๐' => '๐ด','๐' => '๐ต','๐' => '๐ถ',
589 '๐' => '๐ท','๐
' => '๐น','๐' => '๐บ','๐' => '๐ผ','๐' => '๐ฝ','๐' => '๐พ','๐' => '๐ฟ',
590 '๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐
','๐' => '๐',
591 '๐' => '๐','๐' => '๐','๐' => '๐',
592};
593
594static BOLD: Map<char, char> = phf_map! {
595 // roman
596 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ฮโฮฮฮฮ ฯดฮฃฮฅฮฆฮจฮฉฮฑฮฒฮณฮดฮตฮถฮทฮธฮนฮบฮปฮผฮฝฮพฯฯฯฯฯ
ฯฯฯฯโฯตฯฯฐฯฯฑฯ'
597 // => '๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ช๐ซ๐ฏ๐ฒ๐ต๐ท๐น๐บ๐ผ๐ฝ๐ฟ๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก'
598 'a' => '๐','b' => '๐','c' => '๐','d' => '๐','e' => '๐','f' => '๐','g' => '๐ ',
599 'h' => '๐ก','i' => '๐ข','j' => '๐ฃ','k' => '๐ค','l' => '๐ฅ','m' => '๐ฆ','n' => '๐ง',
600 'o' => '๐จ','p' => '๐ฉ','q' => '๐ช','r' => '๐ซ','s' => '๐ฌ','t' => '๐ญ','u' => '๐ฎ',
601 'v' => '๐ฏ','w' => '๐ฐ','x' => '๐ฑ','y' => '๐ฒ','z' => '๐ณ','A' => '๐','B' => '๐',
602 'C' => '๐','D' => '๐','E' => '๐','F' => '๐
','G' => '๐','H' => '๐','I' => '๐',
603 'J' => '๐','K' => '๐','L' => '๐','M' => '๐','N' => '๐','O' => '๐','P' => '๐',
604 'Q' => '๐','R' => '๐','S' => '๐','T' => '๐','U' => '๐','V' => '๐','W' => '๐',
605 'X' => '๐','Y' => '๐','Z' => '๐','0' => '๐','1' => '๐','2' => '๐','3' => '๐',
606 '4' => '๐','5' => '๐','6' => '๐','7' => '๐','8' => '๐','9' => '๐','ฮ' => '๐ช',
607 'โ' => '๐ซ','ฮ' => '๐ฏ','ฮ' => '๐ฒ','ฮ' => '๐ต','ฮ ' => '๐ท','ฯด' => '๐น','ฮฃ' => '๐บ',
608 'ฮฅ' => '๐ผ','ฮฆ' => '๐ฝ','ฮจ' => '๐ฟ','ฮฉ' => '๐','ฮฑ' => '๐','ฮฒ' => '๐','ฮณ' => '๐',
609 'ฮด' => '๐
','ฮต' => '๐','ฮถ' => '๐','ฮท' => '๐','ฮธ' => '๐','ฮน' => '๐','ฮบ' => '๐',
610 'ฮป' => '๐','ฮผ' => '๐','ฮฝ' => '๐','ฮพ' => '๐','ฯ' => '๐','ฯ' => '๐','ฯ' => '๐',
611 'ฯ' => '๐','ฯ
' => '๐','ฯ' => '๐','ฯ' => '๐','ฯ' => '๐','ฯ' => '๐','โ' => '๐',
612 'ฯต' => '๐','ฯ' => '๐','ฯฐ' => '๐','ฯ' => '๐','ฯฑ' => '๐ ','ฯ' => '๐ก',
613 // script
614 // '๐ถ๐ท๐ธ๐นโฏ๐ปโ๐ฝ๐พ๐ฟ๐๐๐๐โด๐
๐๐๐๐๐๐๐๐๐๐๐โฌ๐๐โฐโฑ๐ขโโ๐ฅ๐ฆโโณ๐ฉ๐ช๐ซ๐ฌโ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต'
615 // => '๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ'
616 '๐ถ' => '๐ช','๐ท' => '๐ซ','๐ธ' => '๐ฌ','๐น' => '๐ญ','โฏ' => '๐ฎ','๐ป' => '๐ฏ','โ' => '๐ฐ',
617 '๐ฝ' => '๐ฑ','๐พ' => '๐ฒ','๐ฟ' => '๐ณ','๐' => '๐ด','๐' => '๐ต','๐' => '๐ถ','๐' => '๐ท',
618 'โด' => '๐ธ','๐
' => '๐น','๐' => '๐บ','๐' => '๐ป','๐' => '๐ผ','๐' => '๐ฝ','๐' => '๐พ',
619 '๐' => '๐ฟ','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','โฌ' => '๐',
620 '๐' => '๐','๐' => '๐','โฐ' => '๐','โฑ' => '๐','๐ข' => '๐','โ' => '๐','โ' => '๐',
621 '๐ฅ' => '๐','๐ฆ' => '๐','โ' => '๐','โณ' => '๐','๐ฉ' => '๐','๐ช' => '๐','๐ซ' => '๐',
622 '๐ฌ' => '๐ ','โ' => '๐ก','๐ฎ' => '๐ข','๐ฏ' => '๐ฃ','๐ฐ' => '๐ค','๐ฑ' => '๐ฅ','๐ฒ' => '๐ฆ',
623 '๐ณ' => '๐ง','๐ด' => '๐จ','๐ต' => '๐ฉ',
624 // italic
625 // '๐๐๐๐๐๐๐โ๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐ค๐ฅ๐ฉ๐ฌ๐ฏ๐ฑ๐ณ๐ด๐ถ๐ท๐น๐บ๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐'
626 // => '๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐ฃ๐ฆ๐ฉ๐ซ๐ญ๐ฎ๐ฐ๐ฑ๐ณ๐ด๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐'
627 '๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐
','๐' => '๐','๐' => '๐','๐' => '๐',
628 'โ' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐',
629 '๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐ ' => '๐','๐ก' => '๐','๐ข' => '๐',
630 '๐ฃ' => '๐','๐ค' => '๐','๐ฅ' => '๐','๐ฆ' => '๐','๐ง' => '๐','๐ด' => '๐จ','๐ต' => '๐ฉ',
631 '๐ถ' => '๐ช','๐ท' => '๐ซ','๐ธ' => '๐ฌ','๐น' => '๐ญ','๐บ' => '๐ฎ','๐ป' => '๐ฏ','๐ผ' => '๐ฐ',
632 '๐ฝ' => '๐ฑ','๐พ' => '๐ฒ','๐ฟ' => '๐ณ','๐' => '๐ด','๐' => '๐ต','๐' => '๐ถ','๐' => '๐ท',
633 '๐' => '๐ธ','๐
' => '๐น','๐' => '๐บ','๐' => '๐ป','๐' => '๐ผ','๐' => '๐ฝ','๐' => '๐พ',
634 '๐' => '๐ฟ','๐' => '๐','๐' => '๐','๐ค' => '๐','๐ฅ' => '๐','๐ฉ' => '๐ฃ','๐ฌ' => '๐ฆ',
635 '๐ฏ' => '๐ฉ','๐ฑ' => '๐ซ','๐ณ' => '๐ญ','๐ด' => '๐ฎ','๐ถ' => '๐ฐ','๐ท' => '๐ฑ','๐น' => '๐ณ',
636 '๐บ' => '๐ด','๐ผ' => '๐ถ','๐ฝ' => '๐ท','๐พ' => '๐ธ','๐ฟ' => '๐น','๐' => '๐บ','๐' => '๐ป',
637 '๐' => '๐ผ','๐' => '๐ฝ','๐' => '๐พ','๐
' => '๐ฟ','๐' => '๐','๐' => '๐','๐' => '๐',
638 '๐' => '๐','๐' => '๐
','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐',
639 '๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐',
640 '๐' => '๐','๐' => '๐','๐' => '๐',
641 // sans
642 // '๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ'
643 // => '๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต'
644 '๐บ' => '๐ฎ','๐ป' => '๐ฏ','๐ผ' => '๐ฐ','๐ฝ' => '๐ฑ','๐พ' => '๐ฒ','๐ฟ' => '๐ณ','๐' => '๐ด',
645 '๐' => '๐ต','๐' => '๐ถ','๐' => '๐ท','๐' => '๐ธ','๐
' => '๐น','๐' => '๐บ','๐' => '๐ป',
646 '๐' => '๐ผ','๐' => '๐ฝ','๐' => '๐พ','๐' => '๐ฟ','๐' => '๐','๐' => '๐','๐' => '๐',
647 '๐' => '๐','๐' => '๐','๐' => '๐
','๐' => '๐','๐' => '๐','๐ ' => '๐','๐ก' => '๐',
648 '๐ข' => '๐','๐ฃ' => '๐','๐ค' => '๐','๐ฅ' => '๐','๐ฆ' => '๐','๐ง' => '๐','๐จ' => '๐',
649 '๐ฉ' => '๐','๐ช' => '๐','๐ซ' => '๐','๐ฌ' => '๐ ','๐ญ' => '๐ก','๐ฎ' => '๐ข','๐ฏ' => '๐ฃ',
650 '๐ฐ' => '๐ค','๐ฑ' => '๐ฅ','๐ฒ' => '๐ฆ','๐ณ' => '๐ง','๐ด' => '๐จ','๐ต' => '๐ฉ','๐ถ' => '๐ช',
651 '๐ท' => '๐ซ','๐ธ' => '๐ฌ','๐น' => '๐ญ','๐ข' => '๐ฌ','๐ฃ' => '๐ญ','๐ค' => '๐ฎ','๐ฅ' => '๐ฏ',
652 '๐ฆ' => '๐ฐ','๐ง' => '๐ฑ','๐จ' => '๐ฒ','๐ฉ' => '๐ณ','๐ช' => '๐ด','๐ซ' => '๐ต',
653 // fraktur
654 // '๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐๐
โญ๐๐๐๐โโ๐๐๐๐๐๐๐๐โ๐๐๐๐๐๐๐โจ'
655 // => '๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
'
656 '๐' => '๐','๐' => '๐','๐ ' => '๐','๐ก' => '๐','๐ข' => '๐','๐ฃ' => '๐','๐ค' => '๐',
657 '๐ฅ' => '๐','๐ฆ' => '๐','๐ง' => '๐','๐จ' => '๐','๐ฉ' => '๐','๐ช' => '๐','๐ซ' => '๐',
658 '๐ฌ' => '๐','๐ญ' => '๐','๐ฎ' => '๐','๐ฏ' => '๐','๐ฐ' => '๐','๐ฑ' => '๐','๐ฒ' => '๐',
659 '๐ณ' => '๐','๐ด' => '๐','๐ต' => '๐','๐ถ' => '๐','๐ท' => '๐','๐' => '๐ฌ','๐
' => '๐ญ',
660 'โญ' => '๐ฎ','๐' => '๐ฏ','๐' => '๐ฐ','๐' => '๐ฑ','๐' => '๐ฒ','โ' => '๐ณ','โ' => '๐ด',
661 '๐' => '๐ต','๐' => '๐ถ','๐' => '๐ท','๐' => '๐ธ','๐' => '๐น','๐' => '๐บ','๐' => '๐ป',
662 '๐' => '๐ผ','โ' => '๐ฝ','๐' => '๐พ','๐' => '๐ฟ','๐' => '๐','๐' => '๐','๐' => '๐',
663 '๐' => '๐','๐' => '๐','โจ' => '๐
',
664 // italic sans
665 // '๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก'
666 // => '๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐'
667 '๐ข' => '๐','๐ฃ' => '๐','๐ค' => '๐','๐ฅ' => '๐','๐ฆ' => '๐','๐ง' => '๐','๐จ' => '๐',
668 '๐ฉ' => '๐','๐ช' => '๐','๐ซ' => '๐','๐ฌ' => '๐ ','๐ญ' => '๐ก','๐ฎ' => '๐ข','๐ฏ' => '๐ฃ',
669 '๐ฐ' => '๐ค','๐ฑ' => '๐ฅ','๐ฒ' => '๐ฆ','๐ณ' => '๐ง','๐ด' => '๐จ','๐ต' => '๐ฉ','๐ถ' => '๐ช',
670 '๐ท' => '๐ซ','๐ธ' => '๐ฌ','๐น' => '๐ญ','๐บ' => '๐ฎ','๐ป' => '๐ฏ','๐' => '๐ผ','๐' => '๐ฝ',
671 '๐' => '๐พ','๐' => '๐ฟ','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐',
672 '๐' => '๐
','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐',
673 '๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐',
674 '๐' => '๐','๐ ' => '๐','๐ก' => '๐',
675};
676
677static ITALIC: Map<char, char> = phf_map! {
678 // roman
679 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZฮโฮฮฮฮ ฯดฮฃฮฅฮฆฮจฮฉฮฑฮฒฮณฮดฮตฮถฮทฮธฮนฮบฮปฮผฮฝฮพฯฯฯฯฯ
ฯฯฯฯโฯตฯฯฐฯฯฑฯ'
680 // => '๐๐๐๐๐๐๐โ๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐ค๐ฅ๐ฉ๐ฌ๐ฏ๐ฑ๐ณ๐ด๐ถ๐ท๐น๐บ๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐'
681 'a' => '๐','b' => '๐','c' => '๐','d' => '๐','e' => '๐','f' => '๐','g' => '๐',
682 'h' => 'โ','i' => '๐','j' => '๐','k' => '๐','l' => '๐','m' => '๐','n' => '๐',
683 'o' => '๐','p' => '๐','q' => '๐','r' => '๐','s' => '๐ ','t' => '๐ก','u' => '๐ข',
684 'v' => '๐ฃ','w' => '๐ค','x' => '๐ฅ','y' => '๐ฆ','z' => '๐ง','A' => '๐ด','B' => '๐ต',
685 'C' => '๐ถ','D' => '๐ท','E' => '๐ธ','F' => '๐น','G' => '๐บ','H' => '๐ป','I' => '๐ผ',
686 'J' => '๐ฝ','K' => '๐พ','L' => '๐ฟ','M' => '๐','N' => '๐','O' => '๐','P' => '๐',
687 'Q' => '๐','R' => '๐
','S' => '๐','T' => '๐','U' => '๐','V' => '๐','W' => '๐',
688 'X' => '๐','Y' => '๐','Z' => '๐','ฮ' => '๐ค','โ' => '๐ฅ','ฮ' => '๐ฉ','ฮ' => '๐ฌ',
689 'ฮ' => '๐ฏ','ฮ ' => '๐ฑ','ฯด' => '๐ณ','ฮฃ' => '๐ด','ฮฅ' => '๐ถ','ฮฆ' => '๐ท','ฮจ' => '๐น',
690 'ฮฉ' => '๐บ','ฮฑ' => '๐ผ','ฮฒ' => '๐ฝ','ฮณ' => '๐พ','ฮด' => '๐ฟ','ฮต' => '๐','ฮถ' => '๐',
691 'ฮท' => '๐','ฮธ' => '๐','ฮน' => '๐','ฮบ' => '๐
','ฮป' => '๐','ฮผ' => '๐','ฮฝ' => '๐',
692 'ฮพ' => '๐','ฯ' => '๐','ฯ' => '๐','ฯ' => '๐','ฯ' => '๐','ฯ
' => '๐','ฯ' => '๐',
693 'ฯ' => '๐','ฯ' => '๐','ฯ' => '๐','โ' => '๐','ฯต' => '๐','ฯ' => '๐','ฯฐ' => '๐',
694 'ฯ' => '๐','ฯฑ' => '๐','ฯ' => '๐',
695 // bold
696 // '๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ช๐ซ๐ฏ๐ฒ๐ต๐ท๐น๐บ๐ผ๐ฝ๐ฟ๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก'
697 // => '๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐ฃ๐ฆ๐ฉ๐ซ๐ญ๐ฎ๐ฐ๐ฑ๐ณ๐ด๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐'
698 '๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐
','๐' => '๐','๐' => '๐','๐ ' => '๐',
699 '๐ก' => '๐','๐ข' => '๐','๐ฃ' => '๐','๐ค' => '๐','๐ฅ' => '๐','๐ฆ' => '๐','๐ง' => '๐',
700 '๐จ' => '๐','๐ฉ' => '๐','๐ช' => '๐','๐ซ' => '๐','๐ฌ' => '๐','๐ญ' => '๐','๐ฎ' => '๐',
701 '๐ฏ' => '๐','๐ฐ' => '๐','๐ฑ' => '๐','๐ฒ' => '๐','๐ณ' => '๐','๐' => '๐จ','๐' => '๐ฉ',
702 '๐' => '๐ช','๐' => '๐ซ','๐' => '๐ฌ','๐
' => '๐ญ','๐' => '๐ฎ','๐' => '๐ฏ','๐' => '๐ฐ',
703 '๐' => '๐ฑ','๐' => '๐ฒ','๐' => '๐ณ','๐' => '๐ด','๐' => '๐ต','๐' => '๐ถ','๐' => '๐ท',
704 '๐' => '๐ธ','๐' => '๐น','๐' => '๐บ','๐' => '๐ป','๐' => '๐ผ','๐' => '๐ฝ','๐' => '๐พ',
705 '๐' => '๐ฟ','๐' => '๐','๐' => '๐','๐ช' => '๐','๐ซ' => '๐','๐ฏ' => '๐ฃ','๐ฒ' => '๐ฆ',
706 '๐ต' => '๐ฉ','๐ท' => '๐ซ','๐น' => '๐ญ','๐บ' => '๐ฎ','๐ผ' => '๐ฐ','๐ฝ' => '๐ฑ','๐ฟ' => '๐ณ',
707 '๐' => '๐ด','๐' => '๐ถ','๐' => '๐ท','๐' => '๐ธ','๐
' => '๐น','๐' => '๐บ','๐' => '๐ป',
708 '๐' => '๐ผ','๐' => '๐ฝ','๐' => '๐พ','๐' => '๐ฟ','๐' => '๐','๐' => '๐','๐' => '๐',
709 '๐' => '๐','๐' => '๐
','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐',
710 '๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐',
711 '๐' => '๐','๐ ' => '๐','๐ก' => '๐',
712 // sans
713 // '๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น'
714 // => '๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก'
715 '๐บ' => '๐ข','๐ป' => '๐ฃ','๐ผ' => '๐ค','๐ฝ' => '๐ฅ','๐พ' => '๐ฆ','๐ฟ' => '๐ง','๐' => '๐จ',
716 '๐' => '๐ฉ','๐' => '๐ช','๐' => '๐ซ','๐' => '๐ฌ','๐
' => '๐ญ','๐' => '๐ฎ','๐' => '๐ฏ',
717 '๐' => '๐ฐ','๐' => '๐ฑ','๐' => '๐ฒ','๐' => '๐ณ','๐' => '๐ด','๐' => '๐ต','๐' => '๐ถ',
718 '๐' => '๐ท','๐' => '๐ธ','๐' => '๐น','๐' => '๐บ','๐' => '๐ป','๐ ' => '๐','๐ก' => '๐',
719 '๐ข' => '๐','๐ฃ' => '๐','๐ค' => '๐','๐ฅ' => '๐','๐ฆ' => '๐','๐ง' => '๐','๐จ' => '๐',
720 '๐ฉ' => '๐','๐ช' => '๐','๐ซ' => '๐','๐ฌ' => '๐','๐ญ' => '๐','๐ฎ' => '๐','๐ฏ' => '๐',
721 '๐ฐ' => '๐','๐ฑ' => '๐','๐ฒ' => '๐','๐ณ' => '๐','๐ด' => '๐','๐ต' => '๐','๐ถ' => '๐',
722 '๐ท' => '๐','๐ธ' => '๐ ','๐น' => '๐ก',
723 // bold sans
724 // '๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐๐๐๐ ๐ฃ๐ฅ๐ง๐จ๐ช๐ซ๐ญ๐ฎ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐ฟ๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐'
725 // => '๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ก๐ข๐ค๐ฅ๐ง๐จ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐น๐บ๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐'
726 '๐ฎ' => '๐','๐ฏ' => '๐','๐ฐ' => '๐','๐ฑ' => '๐','๐ฒ' => '๐','๐ณ' => '๐','๐ด' => '๐',
727 '๐ต' => '๐','๐ถ' => '๐','๐ท' => '๐','๐ธ' => '๐ ','๐น' => '๐ก','๐บ' => '๐ข','๐ป' => '๐ฃ',
728 '๐ผ' => '๐ค','๐ฝ' => '๐ฅ','๐พ' => '๐ฆ','๐ฟ' => '๐ง','๐' => '๐จ','๐' => '๐ฉ','๐' => '๐ช',
729 '๐' => '๐ซ','๐' => '๐ฌ','๐
' => '๐ญ','๐' => '๐ฎ','๐' => '๐ฏ','๐' => '๐ผ','๐' => '๐ฝ',
730 '๐' => '๐พ','๐' => '๐ฟ','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐',
731 '๐' => '๐
','๐' => '๐','๐' => '๐','๐ ' => '๐','๐ก' => '๐','๐ข' => '๐','๐ฃ' => '๐',
732 '๐ค' => '๐','๐ฅ' => '๐','๐ฆ' => '๐','๐ง' => '๐','๐จ' => '๐','๐ฉ' => '๐','๐ช' => '๐',
733 '๐ซ' => '๐','๐ฌ' => '๐','๐ญ' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐ ' => '๐',
734 '๐ฃ' => '๐','๐ฅ' => '๐','๐ง' => '๐ก','๐จ' => '๐ข','๐ช' => '๐ค','๐ซ' => '๐ฅ','๐ญ' => '๐ง',
735 '๐ฎ' => '๐จ','๐ฐ' => '๐ช','๐ฑ' => '๐ซ','๐ฒ' => '๐ฌ','๐ณ' => '๐ญ','๐ด' => '๐ฎ','๐ต' => '๐ฏ',
736 '๐ถ' => '๐ฐ','๐ท' => '๐ฑ','๐ธ' => '๐ฒ','๐น' => '๐ณ','๐บ' => '๐ด','๐ป' => '๐ต','๐ผ' => '๐ถ',
737 '๐ฝ' => '๐ท','๐ฟ' => '๐น','๐' => '๐บ','๐' => '๐ผ','๐' => '๐ฝ','๐' => '๐พ','๐
' => '๐ฟ',
738 '๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐','๐' => '๐
','๐' => '๐',
739 '๐' => '๐','๐' => '๐','๐' => '๐',
740};
741
742/*
743static SCRIPT: Map<char,char> = phf_map! {
744 //'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
745 // => '๐ถ๐ท๐ธ๐นโฏ๐ปโ๐ฝ๐พ๐ฟ๐๐๐๐โด๐
๐๐๐๐๐๐๐๐๐๐๐โฌ๐๐โฐโฑ๐ขโโ๐ฅ๐ฆโโณ๐ฉ๐ช๐ซ๐ฌโ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต'
746 'a' => '๐ถ','b' => '๐ท','c' => '๐ธ','d' => '๐น','e' => 'โฏ','f' => '๐ป','g' => 'โ',
747 'h' => '๐ฝ','i' => '๐พ','j' => '๐ฟ','k' => '๐','l' => '๐','m' => '๐','n' => '๐',
748 'o' => 'โด','p' => '๐
','q' => '๐','r' => '๐','s' => '๐','t' => '๐','u' => '๐',
749 'v' => '๐','w' => '๐','x' => '๐','y' => '๐','z' => '๐','A' => '๐','B' => 'โฌ',
750 'C' => '๐','D' => '๐','E' => 'โฐ','F' => 'โฑ','G' => '๐ข','H' => 'โ','I' => 'โ',
751 'J' => '๐ฅ','K' => '๐ฆ','L' => 'โ','M' => 'โณ','N' => '๐ฉ','O' => '๐ช','P' => '๐ซ',
752 'Q' => '๐ฌ','R' => 'โ','S' => '๐ฎ','T' => '๐ฏ','U' => '๐ฐ','V' => '๐ฑ','W' => '๐ฒ',
753 'X' => '๐ณ','Y' => '๐ด','Z' => '๐ต'
754};
755
756static BOLD: Map<char,char> = phf_map! {
757 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ฮโฮฮฮฮ ฯดฮฃฮฅฮฆฮจฮฉฮฑฮฒฮณฮดฮตฮถฮทฮธฮนฮบฮปฮผฮฝฮพฯฯฯฯฯ
ฯฯฯฯโฯตฯฯฐฯฯฑฯ'
758 // => '๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ช๐ซ๐ฏ๐ฒ๐ต๐ท๐น๐บ๐ผ๐ฝ๐ฟ๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก'
759 'a' => '๐','b' => '๐','c' => '๐','d' => '๐','e' => '๐','f' => '๐','g' => '๐ ',
760 'h' => '๐ก','i' => '๐ข','j' => '๐ฃ','k' => '๐ค','l' => '๐ฅ','m' => '๐ฆ','n' => '๐ง',
761 'o' => '๐จ','p' => '๐ฉ','q' => '๐ช','r' => '๐ซ','s' => '๐ฌ','t' => '๐ญ','u' => '๐ฎ',
762 'v' => '๐ฏ','w' => '๐ฐ','x' => '๐ฑ','y' => '๐ฒ','z' => '๐ณ','A' => '๐','B' => '๐',
763 'C' => '๐','D' => '๐','E' => '๐','F' => '๐
','G' => '๐','H' => '๐','I' => '๐',
764 'J' => '๐','K' => '๐','L' => '๐','M' => '๐','N' => '๐','O' => '๐','P' => '๐',
765 'Q' => '๐','R' => '๐','S' => '๐','T' => '๐','U' => '๐','V' => '๐','W' => '๐',
766 'X' => '๐','Y' => '๐','Z' => '๐','0' => '๐','1' => '๐','2' => '๐','3' => '๐',
767 '4' => '๐','5' => '๐','6' => '๐','7' => '๐','8' => '๐','9' => '๐','ฮ' => '๐ช',
768 'โ' => '๐ซ','ฮ' => '๐ฏ','ฮ' => '๐ฒ','ฮ' => '๐ต','ฮ ' => '๐ท','ฯด' => '๐น','ฮฃ' => '๐บ',
769 'ฮฅ' => '๐ผ','ฮฆ' => '๐ฝ','ฮจ' => '๐ฟ','ฮฉ' => '๐','ฮฑ' => '๐','ฮฒ' => '๐','ฮณ' => '๐',
770 'ฮด' => '๐
','ฮต' => '๐','ฮถ' => '๐','ฮท' => '๐','ฮธ' => '๐','ฮน' => '๐','ฮบ' => '๐',
771 'ฮป' => '๐','ฮผ' => '๐','ฮฝ' => '๐','ฮพ' => '๐','ฯ' => '๐','ฯ' => '๐','ฯ' => '๐',
772 'ฯ' => '๐','ฯ
' => '๐','ฯ' => '๐','ฯ' => '๐','ฯ' => '๐','ฯ' => '๐','โ' => '๐',
773 'ฯต' => '๐','ฯ' => '๐','ฯฐ' => '๐','ฯ' => '๐','ฯฑ' => '๐ ','ฯ' => '๐ก'
774};
775
776static ITALIC: Map<char,char> = phf_map! {
777 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZฮโฮฮฮฮ ฯดฮฃฮฅฮฆฮจฮฉฮฑฮฒฮณฮดฮตฮถฮทฮธฮนฮบฮปฮผฮฝฮพฯฯฯฯฯ
ฯฯฯฯโฯตฯฯฐฯฯฑฯ'
778 // => '๐๐๐๐๐๐๐โ๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐ค๐ฅ๐ฉ๐ฌ๐ฏ๐ฑ๐ณ๐ด๐ถ๐ท๐น๐บ๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐'
779 'a' => '๐','b' => '๐','c' => '๐','d' => '๐','e' => '๐','f' => '๐','g' => '๐',
780 'h' => 'โ','i' => '๐','j' => '๐','k' => '๐','l' => '๐','m' => '๐','n' => '๐',
781 'o' => '๐','p' => '๐','q' => '๐','r' => '๐','s' => '๐ ','t' => '๐ก','u' => '๐ข',
782 'v' => '๐ฃ','w' => '๐ค','x' => '๐ฅ','y' => '๐ฆ','z' => '๐ง','A' => '๐ด','B' => '๐ต',
783 'C' => '๐ถ','D' => '๐ท','E' => '๐ธ','F' => '๐น','G' => '๐บ','H' => '๐ป','I' => '๐ผ',
784 'J' => '๐ฝ','K' => '๐พ','L' => '๐ฟ','M' => '๐','N' => '๐','O' => '๐','P' => '๐',
785 'Q' => '๐','R' => '๐
','S' => '๐','T' => '๐','U' => '๐','V' => '๐','W' => '๐',
786 'X' => '๐','Y' => '๐','Z' => '๐','ฮ' => '๐ค','โ' => '๐ฅ','ฮ' => '๐ฉ','ฮ' => '๐ฌ',
787 'ฮ' => '๐ฏ','ฮ ' => '๐ฑ','ฯด' => '๐ณ','ฮฃ' => '๐ด','ฮฅ' => '๐ถ','ฮฆ' => '๐ท','ฮจ' => '๐น',
788 'ฮฉ' => '๐บ','ฮฑ' => '๐ผ','ฮฒ' => '๐ฝ','ฮณ' => '๐พ','ฮด' => '๐ฟ','ฮต' => '๐','ฮถ' => '๐',
789 'ฮท' => '๐','ฮธ' => '๐','ฮน' => '๐','ฮบ' => '๐
','ฮป' => '๐','ฮผ' => '๐','ฮฝ' => '๐',
790 'ฮพ' => '๐','ฯ' => '๐','ฯ' => '๐','ฯ' => '๐','ฯ' => '๐','ฯ
' => '๐','ฯ' => '๐',
791 'ฯ' => '๐','ฯ' => '๐','ฯ' => '๐','โ' => '๐','ฯต' => '๐','ฯ' => '๐','ฯฐ' => '๐',
792 'ฯ' => '๐','ฯฑ' => '๐','ฯ' => '๐'
793};
794
795static SANS: Map<char,char> = phf_map! {
796 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'
797 // => '๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ'
798 'a' => '๐บ','b' => '๐ป','c' => '๐ผ','d' => '๐ฝ','e' => '๐พ','f' => '๐ฟ','g' => '๐',
799 'h' => '๐','i' => '๐','j' => '๐','k' => '๐','l' => '๐
','m' => '๐','n' => '๐',
800 'o' => '๐','p' => '๐','q' => '๐','r' => '๐','s' => '๐','t' => '๐','u' => '๐',
801 'v' => '๐','w' => '๐','x' => '๐','y' => '๐','z' => '๐','A' => '๐ ','B' => '๐ก',
802 'C' => '๐ข','D' => '๐ฃ','E' => '๐ค','F' => '๐ฅ','G' => '๐ฆ','H' => '๐ง','I' => '๐จ',
803 'J' => '๐ฉ','K' => '๐ช','L' => '๐ซ','M' => '๐ฌ','N' => '๐ญ','O' => '๐ฎ','P' => '๐ฏ',
804 'Q' => '๐ฐ','R' => '๐ฑ','S' => '๐ฒ','T' => '๐ณ','U' => '๐ด','V' => '๐ต','W' => '๐ถ',
805 'X' => '๐ท','Y' => '๐ธ','Z' => '๐น','0' => '๐ข','1' => '๐ฃ','2' => '๐ค','3' => '๐ฅ',
806 '4' => '๐ฆ','5' => '๐ง','6' => '๐จ','7' => '๐ฉ','8' => '๐ช','9' => '๐ซ'
807};
808
809static CAPITAL: Map<char,char> = phf_map! {
810 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
811 // => 'แดสแดแด
แดาษขสษชแดแดสแดษดแดแดวซสsแดแดแด แดกxสแดข๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น'
812 'a' => 'แด','b' => 'ส','c' => 'แด','d' => 'แด
','e' => 'แด','f' => 'า','g' => 'ษข',
813 'h' => 'ส','i' => 'ษช','j' => 'แด','k' => 'แด','l' => 'ส','m' => 'แด','n' => 'ษด',
814 'o' => 'แด','p' => 'วซ','q' => 'วซ','r' => 'ส','s' => 's','t' => 'แด','u' => 'แด',
815 'v' => 'แด ','w' => 'แดก','x' => 'x','y' => 'ส','z' => 'แดข','A' => '๐ ','B' => '๐ก',
816 'C' => '๐ข','D' => '๐ฃ','E' => '๐ค','F' => '๐ฅ','G' => '๐ฆ','H' => '๐ง','I' => '๐จ',
817 'J' => '๐ฉ','K' => '๐ช','L' => '๐ซ','M' => '๐ฌ','N' => '๐ญ','O' => '๐ฎ','P' => '๐ฏ',
818 'Q' => '๐ฐ','R' => '๐ฑ','S' => '๐ฒ','T' => '๐ณ','U' => '๐ด','V' => '๐ต','W' => '๐ถ',
819 'X' => '๐ท','Y' => '๐ธ','Z' => '๐น'
820};
821
822static FRAKTUR: Map<char,char> = phf_map! {
823 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
824 // => '๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐๐
โญ๐๐๐๐โโ๐๐๐๐๐๐๐๐โ๐๐๐๐๐๐๐โจ'
825 'a' => '๐','b' => '๐','c' => '๐ ','d' => '๐ก','e' => '๐ข','f' => '๐ฃ','g' => '๐ค',
826 'h' => '๐ฅ','i' => '๐ฆ','j' => '๐ง','k' => '๐จ','l' => '๐ฉ','m' => '๐ช','n' => '๐ซ',
827 'o' => '๐ฌ','p' => '๐ญ','q' => '๐ฎ','r' => '๐ฏ','s' => '๐ฐ','t' => '๐ฑ','u' => '๐ฒ',
828 'v' => '๐ณ','w' => '๐ด','x' => '๐ต','y' => '๐ถ','z' => '๐ท','A' => '๐','B' => '๐
',
829 'C' => 'โญ','D' => '๐','E' => '๐','F' => '๐','G' => '๐','H' => 'โ','I' => 'โ',
830 'J' => '๐','K' => '๐','L' => '๐','M' => '๐','N' => '๐','O' => '๐','P' => '๐',
831 'Q' => '๐','R' => 'โ','S' => '๐','T' => '๐','U' => '๐','V' => '๐','W' => '๐',
832 'X' => '๐','Y' => '๐','Z' => 'โจ'
833};
834
835static MONOSPACED: Map<char,char> = phf_map! {
836 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'
837 // => '๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐0๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ'
838 'a' => '๐','b' => '๐','c' => '๐','d' => '๐','e' => '๐','f' => '๐','g' => '๐',
839 'h' => '๐','i' => '๐','j' => '๐','k' => '๐','l' => '๐','m' => '๐','n' => '๐',
840 'o' => '๐','p' => '๐','q' => '๐','r' => '๐','s' => '๐','t' => '๐','u' => '๐',
841 'v' => '๐','w' => '๐ ','x' => '๐ก','y' => '๐ข','z' => '๐ฃ','A' => '๐ฐ','B' => '๐ฑ',
842 'C' => '๐ฒ','D' => '๐ณ','E' => '๐ด','F' => '๐ต','G' => '๐ถ','H' => '๐ท','I' => '๐ธ',
843 'J' => '๐น','K' => '๐บ','L' => '๐ป','M' => '๐ผ','N' => '๐ฝ','O' => '๐พ','P' => '๐ฟ',
844 'Q' => '๐','R' => '๐','S' => '๐','T' => '๐','U' => '๐','V' => '๐
','W' => '๐',
845 'X' => '๐','Y' => '๐','Z' => '๐','0' => '๐ถ','1' => '๐ท','2' => '๐ธ','3' => '๐น',
846 '4' => '๐บ','5' => '๐ป','6' => '๐ผ','7' => '๐ฝ','8' => '๐พ','9' => '๐ฟ'
847};
848
849static BLACKBOARD: Map<char,char> = phf_map! {
850 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'
851 // => '๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ธ๐นโ๐ป๐ผ๐ฝ๐พโ๐๐๐๐๐โ๐โโโ๐๐๐๐๐๐๐โค๐๐๐๐๐๐๐๐๐ ๐ก'
852 'a' => '๐','b' => '๐','c' => '๐','d' => '๐','e' => '๐','f' => '๐','g' => '๐',
853 'h' => '๐','i' => '๐','j' => '๐','k' => '๐','l' => '๐','m' => '๐','n' => '๐',
854 'o' => '๐ ','p' => '๐ก','q' => '๐ข','r' => '๐ฃ','s' => '๐ค','t' => '๐ฅ','u' => '๐ฆ',
855 'v' => '๐ง','w' => '๐จ','x' => '๐ฉ','y' => '๐ช','z' => '๐ซ','A' => '๐ธ','B' => '๐น',
856 'C' => 'โ','D' => '๐ป','E' => '๐ผ','F' => '๐ฝ','G' => '๐พ','H' => 'โ','I' => '๐',
857 'J' => '๐','K' => '๐','L' => '๐','M' => '๐','N' => 'โ','O' => '๐','P' => 'โ',
858 'Q' => 'โ','R' => 'โ','S' => '๐','T' => '๐','U' => '๐','V' => '๐','W' => '๐',
859 'X' => '๐','Y' => '๐','Z' => 'โค','0' => '๐','1' => '๐','2' => '๐','3' => '๐',
860 '4' => '๐','5' => '๐','6' => '๐','7' => '๐','8' => '๐ ','9' => '๐ก'
861};
862
863static BOLD_SCRIPT: Map<char,char> = phf_map! {
864 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
865 // => '๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ'
866 'a' => '๐ช','b' => '๐ซ','c' => '๐ฌ','d' => '๐ญ','e' => '๐ฎ','f' => '๐ฏ','g' => '๐ฐ',
867 'h' => '๐ฑ','i' => '๐ฒ','j' => '๐ณ','k' => '๐ด','l' => '๐ต','m' => '๐ถ','n' => '๐ท',
868 'o' => '๐ธ','p' => '๐น','q' => '๐บ','r' => '๐ป','s' => '๐ผ','t' => '๐ฝ','u' => '๐พ',
869 'v' => '๐ฟ','w' => '๐','x' => '๐','y' => '๐','z' => '๐','A' => '๐','B' => '๐',
870 'C' => '๐','D' => '๐','E' => '๐','F' => '๐','G' => '๐','H' => '๐','I' => '๐',
871 'J' => '๐','K' => '๐','L' => '๐','M' => '๐','N' => '๐','O' => '๐','P' => '๐',
872 'Q' => '๐ ','R' => '๐ก','S' => '๐ข','T' => '๐ฃ','U' => '๐ค','V' => '๐ฅ','W' => '๐ฆ',
873 'X' => '๐ง','Y' => '๐จ','Z' => '๐ฉ'
874};
875
876static BOLD_ITALIC: Map<char,char> = phf_map! {
877 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZฮโฮฮฮฮ ฯดฮฃฮฅฮฆฮจฮฉฮฑฮฒฮณฮดฮตฮถฮทฮธฮนฮบฮปฮผฮฝฮพฯฯฯฯฯ
ฯฯฯฯโฯตฯฯฐฯฯฑฯ'
878 // => '๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐ฃ๐ฆ๐ฉ๐ซ๐ญ๐ฎ๐ฐ๐ฑ๐ณ๐ด๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐'
879 'a' => '๐','b' => '๐','c' => '๐','d' => '๐
','e' => '๐','f' => '๐','g' => '๐',
880 'h' => '๐','i' => '๐','j' => '๐','k' => '๐','l' => '๐','m' => '๐','n' => '๐',
881 'o' => '๐','p' => '๐','q' => '๐','r' => '๐','s' => '๐','t' => '๐','u' => '๐',
882 'v' => '๐','w' => '๐','x' => '๐','y' => '๐','z' => '๐','A' => '๐จ','B' => '๐ฉ',
883 'C' => '๐ช','D' => '๐ซ','E' => '๐ฌ','F' => '๐ญ','G' => '๐ฎ','H' => '๐ฏ','I' => '๐ฐ',
884 'J' => '๐ฑ','K' => '๐ฒ','L' => '๐ณ','M' => '๐ด','N' => '๐ต','O' => '๐ถ','P' => '๐ท',
885 'Q' => '๐ธ','R' => '๐น','S' => '๐บ','T' => '๐ป','U' => '๐ผ','V' => '๐ฝ','W' => '๐พ',
886 'X' => '๐ฟ','Y' => '๐','Z' => '๐','ฮ' => '๐','โ' => '๐','ฮ' => '๐ฃ','ฮ' => '๐ฆ',
887 'ฮ' => '๐ฉ','ฮ ' => '๐ซ','ฯด' => '๐ญ','ฮฃ' => '๐ฎ','ฮฅ' => '๐ฐ','ฮฆ' => '๐ฑ','ฮจ' => '๐ณ',
888 'ฮฉ' => '๐ด','ฮฑ' => '๐ถ','ฮฒ' => '๐ท','ฮณ' => '๐ธ','ฮด' => '๐น','ฮต' => '๐บ','ฮถ' => '๐ป',
889 'ฮท' => '๐ผ','ฮธ' => '๐ฝ','ฮน' => '๐พ','ฮบ' => '๐ฟ','ฮป' => '๐','ฮผ' => '๐','ฮฝ' => '๐',
890 'ฮพ' => '๐','ฯ' => '๐
','ฯ' => '๐','ฯ' => '๐','ฯ' => '๐','ฯ
' => '๐','ฯ' => '๐',
891 'ฯ' => '๐','ฯ' => '๐','ฯ' => '๐','โ' => '๐','ฯต' => '๐','ฯ' => '๐','ฯฐ' => '๐',
892 'ฯ' => '๐','ฯฑ' => '๐','ฯ' => '๐'
893};
894
895static BOLD_SANS: Map<char,char> = phf_map! {
896 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ฮโฮฮฮฮ ฯดฮฃฮฅฮฆฮจฮฉฮฑฮฒฮณฮดฮตฮถฮทฮธฮนฮบฮปฮผฮฝฮพฯฯฯฯฯ
ฯฯฯฯโฯตฯฯฐฯฯฑฯ'
897 // => '๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐๐๐๐ ๐ฃ๐ฅ๐ง๐จ๐ช๐ซ๐ญ๐ฎ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐ฟ๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐'
898 'a' => '๐ฎ','b' => '๐ฏ','c' => '๐ฐ','d' => '๐ฑ','e' => '๐ฒ','f' => '๐ณ','g' => '๐ด',
899 'h' => '๐ต','i' => '๐ถ','j' => '๐ท','k' => '๐ธ','l' => '๐น','m' => '๐บ','n' => '๐ป',
900 'o' => '๐ผ','p' => '๐ฝ','q' => '๐พ','r' => '๐ฟ','s' => '๐','t' => '๐','u' => '๐',
901 'v' => '๐','w' => '๐','x' => '๐
','y' => '๐','z' => '๐','A' => '๐','B' => '๐',
902 'C' => '๐','D' => '๐','E' => '๐','F' => '๐','G' => '๐','H' => '๐','I' => '๐',
903 'J' => '๐','K' => '๐','L' => '๐','M' => '๐ ','N' => '๐ก','O' => '๐ข','P' => '๐ฃ',
904 'Q' => '๐ค','R' => '๐ฅ','S' => '๐ฆ','T' => '๐ง','U' => '๐จ','V' => '๐ฉ','W' => '๐ช',
905 'X' => '๐ซ','Y' => '๐ฌ','Z' => '๐ญ','0' => '๐ฌ','1' => '๐ญ','2' => '๐ฎ','3' => '๐ฏ',
906 '4' => '๐ฐ','5' => '๐ฑ','6' => '๐ฒ','7' => '๐ณ','8' => '๐ด','9' => '๐ต','ฮ' => '๐',
907 'โ' => '๐','ฮ' => '๐','ฮ' => '๐ ','ฮ' => '๐ฃ','ฮ ' => '๐ฅ','ฯด' => '๐ง','ฮฃ' => '๐จ',
908 'ฮฅ' => '๐ช','ฮฆ' => '๐ซ','ฮจ' => '๐ญ','ฮฉ' => '๐ฎ','ฮฑ' => '๐ฐ','ฮฒ' => '๐ฑ','ฮณ' => '๐ฒ',
909 'ฮด' => '๐ณ','ฮต' => '๐ด','ฮถ' => '๐ต','ฮท' => '๐ถ','ฮธ' => '๐ท','ฮน' => '๐ธ','ฮบ' => '๐น',
910 'ฮป' => '๐บ','ฮผ' => '๐ป','ฮฝ' => '๐ผ','ฮพ' => '๐ฝ','ฯ' => '๐ฟ','ฯ' => '๐','ฯ' => '๐',
911 'ฯ' => '๐','ฯ
' => '๐','ฯ' => '๐
','ฯ' => '๐','ฯ' => '๐','ฯ' => '๐','โ' => '๐',
912 'ฯต' => '๐','ฯ' => '๐','ฯฐ' => '๐','ฯ' => '๐','ฯฑ' => '๐','ฯ' => '๐'
913};
914
915static BOLD_FRAKTUR: Map<char,char> = phf_map! {
916 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
917 // => '๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
'
918 'a' => '๐','b' => '๐','c' => '๐','d' => '๐','e' => '๐','f' => '๐','g' => '๐',
919 'h' => '๐','i' => '๐','j' => '๐','k' => '๐','l' => '๐','m' => '๐','n' => '๐',
920 'o' => '๐','p' => '๐','q' => '๐','r' => '๐','s' => '๐','t' => '๐','u' => '๐',
921 'v' => '๐','w' => '๐','x' => '๐','y' => '๐','z' => '๐','A' => '๐ฌ','B' => '๐ญ',
922 'C' => '๐ฎ','D' => '๐ฏ','E' => '๐ฐ','F' => '๐ฑ','G' => '๐ฒ','H' => '๐ณ','I' => '๐ด',
923 'J' => '๐ต','K' => '๐ถ','L' => '๐ท','M' => '๐ธ','N' => '๐น','O' => '๐บ','P' => '๐ป',
924 'Q' => '๐ผ','R' => '๐ฝ','S' => '๐พ','T' => '๐ฟ','U' => '๐','V' => '๐','W' => '๐',
925 'X' => '๐','Y' => '๐','Z' => '๐
'
926};
927
928static ITALIC_SANS: Map<char,char> = phf_map!{
929 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
930 // => '๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก'
931 'a' => '๐ข','b' => '๐ฃ','c' => '๐ค','d' => '๐ฅ','e' => '๐ฆ','f' => '๐ง','g' => '๐จ',
932 'h' => '๐ฉ','i' => '๐ช','j' => '๐ซ','k' => '๐ฌ','l' => '๐ญ','m' => '๐ฎ','n' => '๐ฏ',
933 'o' => '๐ฐ','p' => '๐ฑ','q' => '๐ฒ','r' => '๐ณ','s' => '๐ด','t' => '๐ต','u' => '๐ถ',
934 'v' => '๐ท','w' => '๐ธ','x' => '๐น','y' => '๐บ','z' => '๐ป','A' => '๐','B' => '๐',
935 'C' => '๐','D' => '๐','E' => '๐','F' => '๐','G' => '๐','H' => '๐','I' => '๐',
936 'J' => '๐','K' => '๐','L' => '๐','M' => '๐','N' => '๐','O' => '๐','P' => '๐',
937 'Q' => '๐','R' => '๐','S' => '๐','T' => '๐','U' => '๐','V' => '๐','W' => '๐',
938 'X' => '๐','Y' => '๐ ','Z' => '๐ก'
939};
940
941static BOLD_ITALIC_SANS: Map<char,char> = phf_map! {
942 // 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZฮโฮฮฮฮ ฯดฮฃฮฅฮฆฮจฮฉฮฑฮฒฮณฮดฮตฮถฮทฮธฮนฮบฮปฮผฮฝฮพฯฯฯฯฯ
ฯฯฯฯโฯตฯฯฐฯฯฑฯ'
943 // => '๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ก๐ข๐ค๐ฅ๐ง๐จ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐น๐บ๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐'
944 'a' => '๐','b' => '๐','c' => '๐','d' => '๐','e' => '๐','f' => '๐','g' => '๐',
945 'h' => '๐','i' => '๐','j' => '๐','k' => '๐ ','l' => '๐ก','m' => '๐ข','n' => '๐ฃ',
946 'o' => '๐ค','p' => '๐ฅ','q' => '๐ฆ','r' => '๐ง','s' => '๐จ','t' => '๐ฉ','u' => '๐ช',
947 'v' => '๐ซ','w' => '๐ฌ','x' => '๐ญ','y' => '๐ฎ','z' => '๐ฏ','A' => '๐ผ','B' => '๐ฝ',
948 'C' => '๐พ','D' => '๐ฟ','E' => '๐','F' => '๐','G' => '๐','H' => '๐','I' => '๐',
949 'J' => '๐
','K' => '๐','L' => '๐','M' => '๐','N' => '๐','O' => '๐','P' => '๐',
950 'Q' => '๐','R' => '๐','S' => '๐','T' => '๐','U' => '๐','V' => '๐','W' => '๐',
951 'X' => '๐','Y' => '๐','Z' => '๐','ฮ' => '๐','โ' => '๐','ฮ' => '๐','ฮ' => '๐',
952 'ฮ' => '๐','ฮ ' => '๐','ฯด' => '๐ก','ฮฃ' => '๐ข','ฮฅ' => '๐ค','ฮฆ' => '๐ฅ','ฮจ' => '๐ง',
953 'ฮฉ' => '๐จ','ฮฑ' => '๐ช','ฮฒ' => '๐ซ','ฮณ' => '๐ฌ','ฮด' => '๐ญ','ฮต' => '๐ฎ','ฮถ' => '๐ฏ',
954 'ฮท' => '๐ฐ','ฮธ' => '๐ฑ','ฮน' => '๐ฒ','ฮบ' => '๐ณ','ฮป' => '๐ด','ฮผ' => '๐ต','ฮฝ' => '๐ถ',
955 'ฮพ' => '๐ท','ฯ' => '๐น','ฯ' => '๐บ','ฯ' => '๐ผ','ฯ' => '๐ฝ','ฯ
' => '๐พ','ฯ' => '๐ฟ',
956 'ฯ' => '๐','ฯ' => '๐','ฯ' => '๐','โ' => '๐','ฯต' => '๐','ฯ' => '๐
','ฯฐ' => '๐',
957 'ฯ' => '๐','ฯฑ' => '๐','ฯ' => '๐'
958};
959
960 */