mirror of
https://github.com/wez/wezterm.git
synced 2024-09-17 17:57:28 +03:00
termwiz: improve performance of emoji presentation lookup
This commit is contained in:
parent
3370466dc4
commit
d51f5f7670
1
Cargo.lock
generated
1
Cargo.lock
generated
@ -4323,6 +4323,7 @@ dependencies = [
|
||||
"terminfo",
|
||||
"termios 0.3.3",
|
||||
"thiserror",
|
||||
"ucd-trie",
|
||||
"unicode-segmentation",
|
||||
"unicode-width",
|
||||
"varbincode",
|
||||
|
@ -34,6 +34,7 @@ terminfo = "0.7"
|
||||
thiserror = "1.0"
|
||||
unicode-segmentation = "1.7"
|
||||
unicode-width = "0.1"
|
||||
ucd-trie = "0.1"
|
||||
xi-unicode = "0.3"
|
||||
vtparse = { version="0.5", path="../vtparse" }
|
||||
|
||||
|
@ -10,13 +10,12 @@ impl Presentation {
|
||||
/// by a variation selector
|
||||
pub fn for_grapheme(s: &str) -> (Self, Option<Self>) {
|
||||
let mut presentation = Self::Text;
|
||||
let mut variation = None;
|
||||
for c in s.chars() {
|
||||
if c == '\u{FE0F}' {
|
||||
// Explicit emoji presentation
|
||||
variation.replace(Self::Emoji);
|
||||
return (presentation, Some(Self::Emoji));
|
||||
} else if c == '\u{FE0E}' {
|
||||
variation.replace(Self::Text);
|
||||
return (presentation, Some(Self::Text));
|
||||
} else if Self::for_char(c) == Self::Emoji {
|
||||
presentation = Self::Emoji;
|
||||
}
|
||||
@ -26,274 +25,14 @@ impl Presentation {
|
||||
// change presentation when we identify an
|
||||
// emoji char.
|
||||
}
|
||||
(presentation, variation)
|
||||
(presentation, None)
|
||||
}
|
||||
|
||||
pub fn for_char(c: char) -> Self {
|
||||
// Matches Emoji_Presentation properties from Unicode 13.0
|
||||
match c {
|
||||
'\u{231A}'..='\u{231B}'
|
||||
| '\u{23E9}'..='\u{23EC}'
|
||||
| '\u{23F0}'
|
||||
| '\u{23F3}'
|
||||
| '\u{25FD}'..='\u{25FE}'
|
||||
| '\u{2614}'..='\u{2615}'
|
||||
| '\u{2648}'..='\u{2653}'
|
||||
| '\u{267F}'
|
||||
| '\u{2693}'
|
||||
| '\u{26A1}'
|
||||
| '\u{26AA}'..='\u{26AB}'
|
||||
| '\u{26BD}'..='\u{26BE}'
|
||||
| '\u{26C4}'..='\u{26C5}'
|
||||
| '\u{26CE}'
|
||||
| '\u{26D4}'
|
||||
| '\u{26EA}'
|
||||
| '\u{26F2}'..='\u{26F3}'
|
||||
| '\u{26F5}'
|
||||
| '\u{26FA}'
|
||||
| '\u{26FD}'
|
||||
| '\u{2705}'
|
||||
| '\u{270A}'..='\u{270B}'
|
||||
| '\u{2728}'
|
||||
| '\u{274C}'
|
||||
| '\u{274E}'
|
||||
| '\u{2753}'..='\u{2755}'
|
||||
| '\u{2757}'
|
||||
| '\u{2795}'..='\u{2797}'
|
||||
| '\u{27B0}'
|
||||
| '\u{27BF}'
|
||||
| '\u{2B1B}'..='\u{2B1C}'
|
||||
| '\u{2B50}'
|
||||
| '\u{2B55}'
|
||||
| '\u{1F004}'
|
||||
| '\u{1F0CF}'
|
||||
| '\u{1F18E}'
|
||||
| '\u{1F191}'..='\u{1F19A}'
|
||||
| '\u{1F1E6}'..='\u{1F1FF}'
|
||||
| '\u{1F201}'
|
||||
| '\u{1F21A}'
|
||||
| '\u{1F22F}'
|
||||
| '\u{1F232}'..='\u{1F236}'
|
||||
| '\u{1F238}'..='\u{1F23A}'
|
||||
| '\u{1F250}'..='\u{1F251}'
|
||||
| '\u{1F300}'..='\u{1F30C}'
|
||||
| '\u{1F30D}'..='\u{1F30E}'
|
||||
| '\u{1F30F}'
|
||||
| '\u{1F310}'
|
||||
| '\u{1F311}'
|
||||
| '\u{1F312}'
|
||||
| '\u{1F313}'..='\u{1F315}'
|
||||
| '\u{1F316}'..='\u{1F318}'
|
||||
| '\u{1F319}'
|
||||
| '\u{1F31A}'
|
||||
| '\u{1F31B}'
|
||||
| '\u{1F31C}'
|
||||
| '\u{1F31D}'..='\u{1F31E}'
|
||||
| '\u{1F31F}'..='\u{1F320}'
|
||||
| '\u{1F32D}'..='\u{1F32F}'
|
||||
| '\u{1F330}'..='\u{1F331}'
|
||||
| '\u{1F332}'..='\u{1F333}'
|
||||
| '\u{1F334}'..='\u{1F335}'
|
||||
| '\u{1F337}'..='\u{1F34A}'
|
||||
| '\u{1F34B}'
|
||||
| '\u{1F34C}'..='\u{1F34F}'
|
||||
| '\u{1F350}'
|
||||
| '\u{1F351}'..='\u{1F37B}'
|
||||
| '\u{1F37C}'
|
||||
| '\u{1F37E}'..='\u{1F37F}'
|
||||
| '\u{1F380}'..='\u{1F393}'
|
||||
| '\u{1F3A0}'..='\u{1F3C4}'
|
||||
| '\u{1F3C5}'
|
||||
| '\u{1F3C6}'
|
||||
| '\u{1F3C7}'
|
||||
| '\u{1F3C8}'
|
||||
| '\u{1F3C9}'
|
||||
| '\u{1F3CA}'
|
||||
| '\u{1F3CF}'..='\u{1F3D3}'
|
||||
| '\u{1F3E0}'..='\u{1F3E3}'
|
||||
| '\u{1F3E4}'
|
||||
| '\u{1F3E5}'..='\u{1F3F0}'
|
||||
| '\u{1F3F4}'
|
||||
| '\u{1F3F8}'..='\u{1F407}'
|
||||
| '\u{1F408}'
|
||||
| '\u{1F409}'..='\u{1F40B}'
|
||||
| '\u{1F40C}'..='\u{1F40E}'
|
||||
| '\u{1F40F}'..='\u{1F410}'
|
||||
| '\u{1F411}'..='\u{1F412}'
|
||||
| '\u{1F413}'
|
||||
| '\u{1F414}'
|
||||
| '\u{1F415}'
|
||||
| '\u{1F416}'
|
||||
| '\u{1F417}'..='\u{1F429}'
|
||||
| '\u{1F42A}'
|
||||
| '\u{1F42B}'..='\u{1F43E}'
|
||||
| '\u{1F440}'
|
||||
| '\u{1F442}'..='\u{1F464}'
|
||||
| '\u{1F465}'
|
||||
| '\u{1F466}'..='\u{1F46B}'
|
||||
| '\u{1F46C}'..='\u{1F46D}'
|
||||
| '\u{1F46E}'..='\u{1F4AC}'
|
||||
| '\u{1F4AD}'
|
||||
| '\u{1F4AE}'..='\u{1F4B5}'
|
||||
| '\u{1F4B6}'..='\u{1F4B7}'
|
||||
| '\u{1F4B8}'..='\u{1F4EB}'
|
||||
| '\u{1F4EC}'..='\u{1F4ED}'
|
||||
| '\u{1F4EE}'
|
||||
| '\u{1F4EF}'
|
||||
| '\u{1F4F0}'..='\u{1F4F4}'
|
||||
| '\u{1F4F5}'
|
||||
| '\u{1F4F6}'..='\u{1F4F7}'
|
||||
| '\u{1F4F8}'
|
||||
| '\u{1F4F9}'..='\u{1F4FC}'
|
||||
| '\u{1F4FF}'..='\u{1F502}'
|
||||
| '\u{1F503}'
|
||||
| '\u{1F504}'..='\u{1F507}'
|
||||
| '\u{1F508}'
|
||||
| '\u{1F509}'
|
||||
| '\u{1F50A}'..='\u{1F514}'
|
||||
| '\u{1F515}'
|
||||
| '\u{1F516}'..='\u{1F52B}'
|
||||
| '\u{1F52C}'..='\u{1F52D}'
|
||||
| '\u{1F52E}'..='\u{1F53D}'
|
||||
| '\u{1F54B}'..='\u{1F54E}'
|
||||
| '\u{1F550}'..='\u{1F55B}'
|
||||
| '\u{1F55C}'..='\u{1F567}'
|
||||
| '\u{1F57A}'
|
||||
| '\u{1F595}'..='\u{1F596}'
|
||||
| '\u{1F5A4}'
|
||||
| '\u{1F5FB}'..='\u{1F5FF}'
|
||||
| '\u{1F600}'
|
||||
| '\u{1F601}'..='\u{1F606}'
|
||||
| '\u{1F607}'..='\u{1F608}'
|
||||
| '\u{1F609}'..='\u{1F60D}'
|
||||
| '\u{1F60E}'
|
||||
| '\u{1F60F}'
|
||||
| '\u{1F610}'
|
||||
| '\u{1F611}'
|
||||
| '\u{1F612}'..='\u{1F614}'
|
||||
| '\u{1F615}'
|
||||
| '\u{1F616}'
|
||||
| '\u{1F617}'
|
||||
| '\u{1F618}'
|
||||
| '\u{1F619}'
|
||||
| '\u{1F61A}'
|
||||
| '\u{1F61B}'
|
||||
| '\u{1F61C}'..='\u{1F61E}'
|
||||
| '\u{1F61F}'
|
||||
| '\u{1F620}'..='\u{1F625}'
|
||||
| '\u{1F626}'..='\u{1F627}'
|
||||
| '\u{1F628}'..='\u{1F62B}'
|
||||
| '\u{1F62C}'
|
||||
| '\u{1F62D}'
|
||||
| '\u{1F62E}'..='\u{1F62F}'
|
||||
| '\u{1F630}'..='\u{1F633}'
|
||||
| '\u{1F634}'
|
||||
| '\u{1F635}'
|
||||
| '\u{1F636}'
|
||||
| '\u{1F637}'..='\u{1F640}'
|
||||
| '\u{1F641}'..='\u{1F644}'
|
||||
| '\u{1F645}'..='\u{1F64F}'
|
||||
| '\u{1F680}'
|
||||
| '\u{1F681}'..='\u{1F682}'
|
||||
| '\u{1F683}'..='\u{1F685}'
|
||||
| '\u{1F686}'
|
||||
| '\u{1F687}'
|
||||
| '\u{1F688}'
|
||||
| '\u{1F689}'
|
||||
| '\u{1F68A}'..='\u{1F68B}'
|
||||
| '\u{1F68C}'
|
||||
| '\u{1F68D}'
|
||||
| '\u{1F68E}'
|
||||
| '\u{1F68F}'
|
||||
| '\u{1F690}'
|
||||
| '\u{1F691}'..='\u{1F693}'
|
||||
| '\u{1F694}'
|
||||
| '\u{1F695}'
|
||||
| '\u{1F696}'
|
||||
| '\u{1F697}'
|
||||
| '\u{1F698}'
|
||||
| '\u{1F699}'..='\u{1F69A}'
|
||||
| '\u{1F69B}'..='\u{1F6A1}'
|
||||
| '\u{1F6A2}'
|
||||
| '\u{1F6A3}'
|
||||
| '\u{1F6A4}'..='\u{1F6A5}'
|
||||
| '\u{1F6A6}'
|
||||
| '\u{1F6A7}'..='\u{1F6AD}'
|
||||
| '\u{1F6AE}'..='\u{1F6B1}'
|
||||
| '\u{1F6B2}'
|
||||
| '\u{1F6B3}'..='\u{1F6B5}'
|
||||
| '\u{1F6B6}'
|
||||
| '\u{1F6B7}'..='\u{1F6B8}'
|
||||
| '\u{1F6B9}'..='\u{1F6BE}'
|
||||
| '\u{1F6BF}'
|
||||
| '\u{1F6C0}'
|
||||
| '\u{1F6C1}'..='\u{1F6C5}'
|
||||
| '\u{1F6CC}'
|
||||
| '\u{1F6D0}'
|
||||
| '\u{1F6D1}'..='\u{1F6D2}'
|
||||
| '\u{1F6D5}'
|
||||
| '\u{1F6D6}'..='\u{1F6D7}'
|
||||
| '\u{1F6EB}'..='\u{1F6EC}'
|
||||
| '\u{1F6F4}'..='\u{1F6F6}'
|
||||
| '\u{1F6F7}'..='\u{1F6F8}'
|
||||
| '\u{1F6F9}'
|
||||
| '\u{1F6FA}'
|
||||
| '\u{1F6FB}'..='\u{1F6FC}'
|
||||
| '\u{1F7E0}'..='\u{1F7EB}'
|
||||
| '\u{1F90C}'
|
||||
| '\u{1F90D}'..='\u{1F90F}'
|
||||
| '\u{1F910}'..='\u{1F918}'
|
||||
| '\u{1F919}'..='\u{1F91E}'
|
||||
| '\u{1F91F}'
|
||||
| '\u{1F920}'..='\u{1F927}'
|
||||
| '\u{1F928}'..='\u{1F92F}'
|
||||
| '\u{1F930}'
|
||||
| '\u{1F931}'..='\u{1F932}'
|
||||
| '\u{1F933}'..='\u{1F93A}'
|
||||
| '\u{1F93C}'..='\u{1F93E}'
|
||||
| '\u{1F93F}'
|
||||
| '\u{1F940}'..='\u{1F945}'
|
||||
| '\u{1F947}'..='\u{1F94B}'
|
||||
| '\u{1F94C}'
|
||||
| '\u{1F94D}'..='\u{1F94F}'
|
||||
| '\u{1F950}'..='\u{1F95E}'
|
||||
| '\u{1F95F}'..='\u{1F96B}'
|
||||
| '\u{1F96C}'..='\u{1F970}'
|
||||
| '\u{1F971}'
|
||||
| '\u{1F972}'
|
||||
| '\u{1F973}'..='\u{1F976}'
|
||||
| '\u{1F977}'..='\u{1F978}'
|
||||
| '\u{1F97A}'
|
||||
| '\u{1F97B}'
|
||||
| '\u{1F97C}'..='\u{1F97F}'
|
||||
| '\u{1F980}'..='\u{1F984}'
|
||||
| '\u{1F985}'..='\u{1F991}'
|
||||
| '\u{1F992}'..='\u{1F997}'
|
||||
| '\u{1F998}'..='\u{1F9A2}'
|
||||
| '\u{1F9A3}'..='\u{1F9A4}'
|
||||
| '\u{1F9A5}'..='\u{1F9AA}'
|
||||
| '\u{1F9AB}'..='\u{1F9AD}'
|
||||
| '\u{1F9AE}'..='\u{1F9AF}'
|
||||
| '\u{1F9B0}'..='\u{1F9B9}'
|
||||
| '\u{1F9BA}'..='\u{1F9BF}'
|
||||
| '\u{1F9C0}'
|
||||
| '\u{1F9C1}'..='\u{1F9C2}'
|
||||
| '\u{1F9C3}'..='\u{1F9CA}'
|
||||
| '\u{1F9CB}'
|
||||
| '\u{1F9CD}'..='\u{1F9CF}'
|
||||
| '\u{1F9D0}'..='\u{1F9E6}'
|
||||
| '\u{1F9E7}'..='\u{1F9FF}'
|
||||
| '\u{1FA70}'..='\u{1FA73}'
|
||||
| '\u{1FA74}'
|
||||
| '\u{1FA78}'..='\u{1FA7A}'
|
||||
| '\u{1FA80}'..='\u{1FA82}'
|
||||
| '\u{1FA83}'..='\u{1FA86}'
|
||||
| '\u{1FA90}'..='\u{1FA95}'
|
||||
| '\u{1FA96}'..='\u{1FAA8}'
|
||||
| '\u{1FAB0}'..='\u{1FAB6}'
|
||||
| '\u{1FAC0}'..='\u{1FAC2}'
|
||||
| '\u{1FAD0}'..='\u{1FAD6}' => Self::Emoji,
|
||||
_ => Self::Text,
|
||||
if crate::emoji_presentation::EMOJI_PRESENTATION.contains_u32(c as u32) {
|
||||
Self::Emoji
|
||||
} else {
|
||||
Self::Text
|
||||
}
|
||||
}
|
||||
}
|
||||
|
113
termwiz/src/emoji_presentation.rs
Normal file
113
termwiz/src/emoji_presentation.rs
Normal file
@ -0,0 +1,113 @@
|
||||
// DO NOT EDIT THIS FILE. IT WAS AUTOMATICALLY GENERATED BY:
|
||||
//
|
||||
// ucd-generate property-bool . --include Emoji_Presentation --trie-set
|
||||
//
|
||||
// Unicode version: 13.0.0.
|
||||
//
|
||||
// ucd-generate 0.2.10 is available on crates.io.
|
||||
|
||||
pub const EMOJI_PRESENTATION: &'static ::ucd_trie::TrieSet = &::ucd_trie::TrieSet {
|
||||
tree1_level1: &[
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0,
|
||||
],
|
||||
tree2_level1: &[
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 3,
|
||||
4, 5, 6, 7, 8, 9, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 12, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0,
|
||||
],
|
||||
tree2_level2: &[
|
||||
0,
|
||||
0xC000000,
|
||||
0x91E0000000000,
|
||||
0x6000000000000000,
|
||||
0x300000,
|
||||
0x80000000000FFF00,
|
||||
0x60000C0200080000,
|
||||
0x242C040000104030,
|
||||
0x10000000C20,
|
||||
0xB85000,
|
||||
0x8001000000E00000,
|
||||
0x18000000,
|
||||
0x210000,
|
||||
],
|
||||
tree3_level1: &[
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
],
|
||||
tree3_level2: &[
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 1, 0, 0, 2, 0, 0, 3, 4, 5, 6, 0, 0, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
|
||||
18, 13, 19, 13, 20, 0, 0, 0, 21, 0, 0, 0, 0, 22, 23, 13, 24, 0, 25, 26, 27, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
],
|
||||
tree3_level3: &[
|
||||
0,
|
||||
0x10,
|
||||
0x8000,
|
||||
0x7FE4000,
|
||||
0xFFFFFFC000000000,
|
||||
0x77C800004000002,
|
||||
0x30000,
|
||||
0xFFBFE001FFFFFFFF,
|
||||
0xDFFFFFFFFFFFFFFF,
|
||||
0xFFFFFFFF000FFFFF,
|
||||
0xFF11FFFF000F87FF,
|
||||
0x7FFFFFFFFFFFFFFF,
|
||||
0xFFFFFFFFFFFFFFFD,
|
||||
0xFFFFFFFFFFFFFFFF,
|
||||
0x9FFFFFFFFFFFFFFF,
|
||||
0x3FFFFFFFFFFFFFFF,
|
||||
0x40000FFFFFF7800,
|
||||
0x1000600000,
|
||||
0xF800000000000000,
|
||||
0xFFFF,
|
||||
0x1FF0180000E7103F,
|
||||
0xFFF00000000,
|
||||
0xF7FFFFFFFFFFF000,
|
||||
0xFDFFFFFFFFFFFFBF,
|
||||
0xFFFFFFFFFFFFEFFF,
|
||||
0x71F000000000000,
|
||||
0x7F01FFFFFF007F,
|
||||
0x7F0007,
|
||||
],
|
||||
};
|
@ -41,6 +41,7 @@
|
||||
//! * `use_serde` - makes a number of structs serde serializable
|
||||
|
||||
mod emoji;
|
||||
mod emoji_presentation;
|
||||
|
||||
pub mod caps;
|
||||
pub mod cell;
|
||||
|
Loading…
Reference in New Issue
Block a user