├── .gitignore ├── TODO.md ├── Cargo.toml ├── .github └── workflows │ └── rust.yml ├── src ├── main.rs └── gen_data.rs ├── README.md └── Cargo.lock /.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | **/*.rs.bk 3 | .vscode 4 | -------------------------------------------------------------------------------- /TODO.md: -------------------------------------------------------------------------------- 1 | * Fill the README 2 | * Add cargo metadata 3 | * Publish to crates.io 4 | 5 | -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "find_unicode" 3 | default-run="fu" 4 | version = "0.4.0" 5 | authors = ["Pierre Chevalier "] 6 | description = "Find Unicode characters, the easy way!" 7 | documentation = "https://github.com/pierrechevalier83/find_unicode/blob/master/README.md" 8 | homepage = "https://github.com/pierrechevalier83/find_unicode" 9 | repository = "https://github.com/pierrechevalier83/find_unicode" 10 | keywords = ["unicode", "character", "cli", "find", "easy"] 11 | license = "MIT" 12 | edition = "2018" 13 | 14 | [dependencies] 15 | skim = "0.9.4" 16 | clap = { version = "3.1", features = ["derive"] } 17 | 18 | [[bin]] 19 | name = "fu" 20 | path = "src/main.rs" 21 | 22 | [[bin]] 23 | name = "gen_data" 24 | path = "src/gen_data.rs" 25 | -------------------------------------------------------------------------------- /.github/workflows/rust.yml: -------------------------------------------------------------------------------- 1 | on: 2 | push: 3 | branches: [ main ] 4 | pull_request: 5 | branches: [ main ] 6 | 7 | name: Rust 8 | 9 | jobs: 10 | check: 11 | name: Check 12 | runs-on: ubuntu-latest 13 | steps: 14 | - uses: actions/checkout@v2 15 | - uses: actions-rs/toolchain@v1 16 | with: 17 | profile: minimal 18 | toolchain: stable 19 | override: true 20 | - uses: actions-rs/cargo@v1 21 | with: 22 | command: check 23 | 24 | test: 25 | name: Test Suite 26 | runs-on: ubuntu-latest 27 | steps: 28 | - uses: actions/checkout@v2 29 | - uses: actions-rs/toolchain@v1 30 | with: 31 | profile: minimal 32 | toolchain: stable 33 | override: true 34 | - uses: actions-rs/cargo@v1 35 | with: 36 | command: test 37 | 38 | fmt: 39 | name: Rustfmt 40 | runs-on: ubuntu-latest 41 | steps: 42 | - uses: actions/checkout@v2 43 | - uses: actions-rs/toolchain@v1 44 | with: 45 | profile: minimal 46 | toolchain: stable 47 | override: true 48 | - run: rustup component add rustfmt 49 | - uses: actions-rs/cargo@v1 50 | with: 51 | command: fmt 52 | args: --all -- --check 53 | 54 | clippy: 55 | name: Clippy 56 | runs-on: ubuntu-latest 57 | steps: 58 | - uses: actions/checkout@v2 59 | - uses: actions-rs/toolchain@v1 60 | with: 61 | profile: minimal 62 | toolchain: stable 63 | override: true 64 | - run: rustup component add clippy 65 | - uses: actions-rs/cargo@v1 66 | with: 67 | command: clippy 68 | args: -- -D warnings 69 | -------------------------------------------------------------------------------- /src/main.rs: -------------------------------------------------------------------------------- 1 | use clap::{ArgEnum, Parser}; 2 | use skim::{ 3 | prelude::{SkimItemReader, SkimOptionsBuilder}, 4 | Skim, 5 | }; 6 | use std::error::Error; 7 | 8 | #[derive(ArgEnum, Clone, Copy, PartialEq, Eq)] 9 | enum Search { 10 | Regex, 11 | Exact, 12 | Fuzzy, 13 | } 14 | 15 | #[derive(ArgEnum, Clone, Copy, PartialEq, Eq)] 16 | enum Layout { 17 | Above, 18 | Below, 19 | } 20 | 21 | /// Find Unicode characters with ease. 22 | /// 23 | /// Simply type a description of the character you are looking for. Once you found the character 24 | /// you were after, hit Enter. Selecting multiple characters is also possible: hit tab to select a 25 | /// character and continue browsing. 26 | #[derive(Parser)] 27 | #[clap(name = "fu", version, about)] 28 | struct Options { 29 | /// Initial query, if any 30 | initial_query: Option, 31 | /// Search mode 32 | #[clap(arg_enum, long, default_value = "regex")] 33 | search: Search, 34 | /// Position of fu's window relative to the prompt 35 | #[clap(arg_enum, long, default_value = "below")] 36 | layout: Layout, 37 | /// Height of fu's window relative to the terminal window 38 | #[clap(long, default_value = "50%")] 39 | height: String, 40 | /// Color theme. Refer to https://github.com/lotabout/skim#color-scheme for more info. 41 | #[clap(long)] 42 | color: Option, 43 | } 44 | 45 | fn main() -> Result<(), Box> { 46 | let options = Options::parse(); 47 | let query = options.initial_query.unwrap_or_default(); 48 | let options = SkimOptionsBuilder::default() 49 | .query(Some(&query)) 50 | .regex(options.search == Search::Regex) 51 | .exact(options.search == Search::Exact) 52 | .reverse(options.layout == Layout::Below) 53 | .height(Some(&options.height)) 54 | .color(options.color.as_deref()) 55 | .multi(true) 56 | .inline_info(true) 57 | .build()?; 58 | let item_reader = SkimItemReader::default(); 59 | let items = item_reader.of_bufread(&include_bytes!("UnicodeData")[..]); 60 | Skim::run_with(&options, Some(items)) 61 | .map(|output| output.selected_items) 62 | .iter() 63 | .flatten() 64 | .for_each(|item| { 65 | println!("{}", item.output()); 66 | }); 67 | Ok(()) 68 | } 69 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Find Unicode 2 | === 3 | 4 | Find Unicode characters, the easy way! 5 | A simple command line application to find unicode characters with minimum effort. 6 | 7 | ![alt tag](https://github.com/pierrechevalier83/find_unicode/blob/master/demo/demo.svg) 8 | 9 | Installation 10 | === 11 | 12 | `cargo install find_unicode` 13 | 14 | Usage 15 | === 16 | 17 | * Run `fu` from your terminal: 18 | ``` 19 | fu 20 | ``` 21 | 22 | * Start typing. `fu` will show the unicode characters for which the description matches your query. 23 | * If you're looking for a single character, hit Enter to select it and exit. 24 | * If you're looking for multiple characters, hit Tab to select one and keep searching. 25 | * By default, the searching expression is a regular expression. 26 | 27 | Advanced usage 28 | === 29 | 30 | For more advanced configuration options, check out the help: 31 | ``` 32 | fu --help 33 | ``` 34 | 35 | ``` 36 | fu 0.1.0 37 | Pierre Chevalier 38 | 39 | Find Unicode characters with ease. 40 | 41 | Simply type a description of the character you are looking for. Once you found the character you were after, hit Enter. 42 | Selecting multiple characters is also possible: hit tab to select a character and continue browsing. 43 | 44 | USAGE: 45 | fu [OPTIONS] [initial_query] 46 | 47 | FLAGS: 48 | -h, --help Prints help information 49 | -V, --version Prints version information 50 | 51 | OPTIONS: 52 | --height Height of fu's window relative to the terminal window [default: 50%] 53 | --layout Position of fu's window relative to the prompt [default: Below] [possible values: Above, 54 | Below] 55 | --search Search mode [default: Regex] [possible values: Regex, Exact, Fuzzy] 56 | 57 | ARGS: 58 | Initial query, if any 59 | ``` 60 | 61 | To regenerate the data 62 | === 63 | 64 | * Download the UCD Data: 65 | ``` 66 | curl https://www.unicode.org/Public/UCD/latest/ucd/UnicodeData.txt > src/UnicodeData.txt 67 | ``` 68 | * Download the Nerd Fonts Data: 69 | ``` 70 | curl https://raw.githubusercontent.com/ryanoasis/nerd-fonts/master/css/nerd-fonts-generated.css > src/NerdFontsData.css 71 | ``` 72 | * Regenerate the prettified data: 73 | ``` 74 | cargo run --bin gen_data 75 | ``` 76 | * Copy the generated data to src and commit it. 77 | -------------------------------------------------------------------------------- /src/gen_data.rs: -------------------------------------------------------------------------------- 1 | use std::convert::TryFrom; 2 | use std::env; 3 | use std::fs::File; 4 | use std::io::{prelude::*, Error}; 5 | use std::path::PathBuf; 6 | 7 | fn generate_font_awesome_table() -> String { 8 | let content = String::from_utf8(include_bytes!("NerdFontsData.css").to_vec()).unwrap(); 9 | let labels = content 10 | .split('\n') 11 | .filter_map(|s| s.split(".nf-").nth(1)) 12 | .map(|s| s.replace(":before {", "")) 13 | .map(|s| s.replace('-', " ")); 14 | let unicode = content 15 | .split('\n') 16 | .filter_map(|s| s.split("content: ").nth(1)) 17 | .map(|s| s.replace("\"\\", "")) 18 | .map(|s| s.replace("\";", "")); 19 | labels 20 | .zip(unicode) 21 | .map(|(label, unicode)| { 22 | let character = try_char_from_string_index(&unicode).unwrap(); 23 | format_line(character, &label) 24 | }) 25 | .collect() 26 | } 27 | 28 | fn try_char_from_string_index(s: &str) -> Option { 29 | let index = u32::from_str_radix(s, 16).ok()?; 30 | char::try_from(index).ok() 31 | } 32 | 33 | fn format_line(character: char, name: &str) -> String { 34 | format!("{}\t{}\n", character, name.to_lowercase()) 35 | } 36 | 37 | fn parse_unicode_data_line(line: &str) -> Option { 38 | let tokens = line.split(';').collect::>(); 39 | if !tokens.len() == 15 { 40 | None 41 | } else if let Some(character) = try_char_from_string_index(tokens[0]) { 42 | let name = tokens[1].to_string(); 43 | if name.is_empty() || name.starts_with('<') || name.to_lowercase().contains("control") { 44 | return None; 45 | } 46 | Some(format_line(character, &name)) 47 | } else { 48 | None 49 | } 50 | } 51 | 52 | fn generate_ucd_table() -> String { 53 | let content = String::from_utf8(include_bytes!("UnicodeData.txt").to_vec()).unwrap(); 54 | content 55 | .split('\n') 56 | .flat_map(parse_unicode_data_line) 57 | .collect() 58 | } 59 | 60 | fn generate_unicode_table() -> Result { 61 | let mut out_path = env::temp_dir(); 62 | out_path.push("UnicodeData"); 63 | 64 | let ucd_table = generate_ucd_table(); 65 | let fa_table = generate_font_awesome_table(); 66 | let mut output = File::create(&out_path.clone())?; 67 | output.write_all(ucd_table.as_bytes())?; 68 | output.write_all(fa_table.as_bytes())?; 69 | Ok(out_path) 70 | } 71 | 72 | fn main() -> Result<(), Error> { 73 | let path = generate_unicode_table()?; 74 | println!("Generated data at\n{:#?}", path); 75 | Ok(()) 76 | } 77 | -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- 1 | # This file is automatically @generated by Cargo. 2 | # It is not intended for manual editing. 3 | version = 3 4 | 5 | [[package]] 6 | name = "aho-corasick" 7 | version = "0.7.18" 8 | source = "registry+https://github.com/rust-lang/crates.io-index" 9 | checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f" 10 | dependencies = [ 11 | "memchr", 12 | ] 13 | 14 | [[package]] 15 | name = "ansi_term" 16 | version = "0.12.1" 17 | source = "registry+https://github.com/rust-lang/crates.io-index" 18 | checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2" 19 | dependencies = [ 20 | "winapi", 21 | ] 22 | 23 | [[package]] 24 | name = "arrayvec" 25 | version = "0.5.2" 26 | source = "registry+https://github.com/rust-lang/crates.io-index" 27 | checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" 28 | 29 | [[package]] 30 | name = "atty" 31 | version = "0.2.14" 32 | source = "registry+https://github.com/rust-lang/crates.io-index" 33 | checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" 34 | dependencies = [ 35 | "hermit-abi", 36 | "libc", 37 | "winapi", 38 | ] 39 | 40 | [[package]] 41 | name = "autocfg" 42 | version = "1.1.0" 43 | source = "registry+https://github.com/rust-lang/crates.io-index" 44 | checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" 45 | 46 | [[package]] 47 | name = "base-x" 48 | version = "0.2.8" 49 | source = "registry+https://github.com/rust-lang/crates.io-index" 50 | checksum = "a4521f3e3d031370679b3b140beb36dfe4801b09ac77e30c61941f97df3ef28b" 51 | 52 | [[package]] 53 | name = "beef" 54 | version = "0.5.1" 55 | source = "registry+https://github.com/rust-lang/crates.io-index" 56 | checksum = "bed554bd50246729a1ec158d08aa3235d1b69d94ad120ebe187e28894787e736" 57 | 58 | [[package]] 59 | name = "bitflags" 60 | version = "1.3.2" 61 | source = "registry+https://github.com/rust-lang/crates.io-index" 62 | checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" 63 | 64 | [[package]] 65 | name = "bumpalo" 66 | version = "3.9.1" 67 | source = "registry+https://github.com/rust-lang/crates.io-index" 68 | checksum = "a4a45a46ab1f2412e53d3a0ade76ffad2025804294569aae387231a0cd6e0899" 69 | 70 | [[package]] 71 | name = "cc" 72 | version = "1.0.73" 73 | source = "registry+https://github.com/rust-lang/crates.io-index" 74 | checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11" 75 | 76 | [[package]] 77 | name = "cfg-if" 78 | version = "0.1.10" 79 | source = "registry+https://github.com/rust-lang/crates.io-index" 80 | checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" 81 | 82 | [[package]] 83 | name = "cfg-if" 84 | version = "1.0.0" 85 | source = "registry+https://github.com/rust-lang/crates.io-index" 86 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 87 | 88 | [[package]] 89 | name = "chrono" 90 | version = "0.4.19" 91 | source = "registry+https://github.com/rust-lang/crates.io-index" 92 | checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73" 93 | dependencies = [ 94 | "libc", 95 | "num-integer", 96 | "num-traits", 97 | "time 0.1.43", 98 | "winapi", 99 | ] 100 | 101 | [[package]] 102 | name = "clap" 103 | version = "2.34.0" 104 | source = "registry+https://github.com/rust-lang/crates.io-index" 105 | checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c" 106 | dependencies = [ 107 | "ansi_term", 108 | "atty", 109 | "bitflags", 110 | "strsim 0.8.0", 111 | "textwrap 0.11.0", 112 | "unicode-width", 113 | "vec_map", 114 | ] 115 | 116 | [[package]] 117 | name = "clap" 118 | version = "3.1.0" 119 | source = "registry+https://github.com/rust-lang/crates.io-index" 120 | checksum = "e5f1fea81f183005ced9e59cdb01737ef2423956dac5a6d731b06b2ecfaa3467" 121 | dependencies = [ 122 | "atty", 123 | "bitflags", 124 | "clap_derive", 125 | "indexmap", 126 | "lazy_static", 127 | "os_str_bytes", 128 | "strsim 0.10.0", 129 | "termcolor", 130 | "textwrap 0.14.2", 131 | ] 132 | 133 | [[package]] 134 | name = "clap_derive" 135 | version = "3.1.0" 136 | source = "registry+https://github.com/rust-lang/crates.io-index" 137 | checksum = "5fd1122e63869df2cb309f449da1ad54a7c6dfeb7c7e6ccd8e0825d9eb93bb72" 138 | dependencies = [ 139 | "heck", 140 | "proc-macro-error", 141 | "proc-macro2", 142 | "quote", 143 | "syn", 144 | ] 145 | 146 | [[package]] 147 | name = "const_fn" 148 | version = "0.4.9" 149 | source = "registry+https://github.com/rust-lang/crates.io-index" 150 | checksum = "fbdcdcb6d86f71c5e97409ad45898af11cbc995b4ee8112d59095a28d376c935" 151 | 152 | [[package]] 153 | name = "crossbeam" 154 | version = "0.8.1" 155 | source = "registry+https://github.com/rust-lang/crates.io-index" 156 | checksum = "4ae5588f6b3c3cb05239e90bd110f257254aecd01e4635400391aeae07497845" 157 | dependencies = [ 158 | "cfg-if 1.0.0", 159 | "crossbeam-channel 0.5.2", 160 | "crossbeam-deque", 161 | "crossbeam-epoch", 162 | "crossbeam-queue", 163 | "crossbeam-utils 0.8.7", 164 | ] 165 | 166 | [[package]] 167 | name = "crossbeam-channel" 168 | version = "0.4.4" 169 | source = "registry+https://github.com/rust-lang/crates.io-index" 170 | checksum = "b153fe7cbef478c567df0f972e02e6d736db11affe43dfc9c56a9374d1adfb87" 171 | dependencies = [ 172 | "crossbeam-utils 0.7.2", 173 | "maybe-uninit", 174 | ] 175 | 176 | [[package]] 177 | name = "crossbeam-channel" 178 | version = "0.5.2" 179 | source = "registry+https://github.com/rust-lang/crates.io-index" 180 | checksum = "e54ea8bc3fb1ee042f5aace6e3c6e025d3874866da222930f70ce62aceba0bfa" 181 | dependencies = [ 182 | "cfg-if 1.0.0", 183 | "crossbeam-utils 0.8.7", 184 | ] 185 | 186 | [[package]] 187 | name = "crossbeam-deque" 188 | version = "0.8.1" 189 | source = "registry+https://github.com/rust-lang/crates.io-index" 190 | checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e" 191 | dependencies = [ 192 | "cfg-if 1.0.0", 193 | "crossbeam-epoch", 194 | "crossbeam-utils 0.8.7", 195 | ] 196 | 197 | [[package]] 198 | name = "crossbeam-epoch" 199 | version = "0.9.7" 200 | source = "registry+https://github.com/rust-lang/crates.io-index" 201 | checksum = "c00d6d2ea26e8b151d99093005cb442fb9a37aeaca582a03ec70946f49ab5ed9" 202 | dependencies = [ 203 | "cfg-if 1.0.0", 204 | "crossbeam-utils 0.8.7", 205 | "lazy_static", 206 | "memoffset", 207 | "scopeguard", 208 | ] 209 | 210 | [[package]] 211 | name = "crossbeam-queue" 212 | version = "0.3.4" 213 | source = "registry+https://github.com/rust-lang/crates.io-index" 214 | checksum = "4dd435b205a4842da59efd07628f921c096bc1cc0a156835b4fa0bcb9a19bcce" 215 | dependencies = [ 216 | "cfg-if 1.0.0", 217 | "crossbeam-utils 0.8.7", 218 | ] 219 | 220 | [[package]] 221 | name = "crossbeam-utils" 222 | version = "0.7.2" 223 | source = "registry+https://github.com/rust-lang/crates.io-index" 224 | checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8" 225 | dependencies = [ 226 | "autocfg", 227 | "cfg-if 0.1.10", 228 | "lazy_static", 229 | ] 230 | 231 | [[package]] 232 | name = "crossbeam-utils" 233 | version = "0.8.7" 234 | source = "registry+https://github.com/rust-lang/crates.io-index" 235 | checksum = "b5e5bed1f1c269533fa816a0a5492b3545209a205ca1a54842be180eb63a16a6" 236 | dependencies = [ 237 | "cfg-if 1.0.0", 238 | "lazy_static", 239 | ] 240 | 241 | [[package]] 242 | name = "darling" 243 | version = "0.10.2" 244 | source = "registry+https://github.com/rust-lang/crates.io-index" 245 | checksum = "0d706e75d87e35569db781a9b5e2416cff1236a47ed380831f959382ccd5f858" 246 | dependencies = [ 247 | "darling_core", 248 | "darling_macro", 249 | ] 250 | 251 | [[package]] 252 | name = "darling_core" 253 | version = "0.10.2" 254 | source = "registry+https://github.com/rust-lang/crates.io-index" 255 | checksum = "f0c960ae2da4de88a91b2d920c2a7233b400bc33cb28453a2987822d8392519b" 256 | dependencies = [ 257 | "fnv", 258 | "ident_case", 259 | "proc-macro2", 260 | "quote", 261 | "strsim 0.9.3", 262 | "syn", 263 | ] 264 | 265 | [[package]] 266 | name = "darling_macro" 267 | version = "0.10.2" 268 | source = "registry+https://github.com/rust-lang/crates.io-index" 269 | checksum = "d9b5a2f4ac4969822c62224815d069952656cadc7084fdca9751e6d959189b72" 270 | dependencies = [ 271 | "darling_core", 272 | "quote", 273 | "syn", 274 | ] 275 | 276 | [[package]] 277 | name = "defer-drop" 278 | version = "1.2.0" 279 | source = "registry+https://github.com/rust-lang/crates.io-index" 280 | checksum = "828aca0e5e4341b0320a319209cbc6255b8b06254849ce8a5f33d33f7f2fa0f0" 281 | dependencies = [ 282 | "crossbeam-channel 0.4.4", 283 | "once_cell", 284 | ] 285 | 286 | [[package]] 287 | name = "derive_builder" 288 | version = "0.9.0" 289 | source = "registry+https://github.com/rust-lang/crates.io-index" 290 | checksum = "a2658621297f2cf68762a6f7dc0bb7e1ff2cfd6583daef8ee0fed6f7ec468ec0" 291 | dependencies = [ 292 | "darling", 293 | "derive_builder_core", 294 | "proc-macro2", 295 | "quote", 296 | "syn", 297 | ] 298 | 299 | [[package]] 300 | name = "derive_builder_core" 301 | version = "0.9.0" 302 | source = "registry+https://github.com/rust-lang/crates.io-index" 303 | checksum = "2791ea3e372c8495c0bc2033991d76b512cd799d07491fbd6890124db9458bef" 304 | dependencies = [ 305 | "darling", 306 | "proc-macro2", 307 | "quote", 308 | "syn", 309 | ] 310 | 311 | [[package]] 312 | name = "dirs" 313 | version = "2.0.2" 314 | source = "registry+https://github.com/rust-lang/crates.io-index" 315 | checksum = "13aea89a5c93364a98e9b37b2fa237effbb694d5cfe01c5b70941f7eb087d5e3" 316 | dependencies = [ 317 | "cfg-if 0.1.10", 318 | "dirs-sys", 319 | ] 320 | 321 | [[package]] 322 | name = "dirs-sys" 323 | version = "0.3.6" 324 | source = "registry+https://github.com/rust-lang/crates.io-index" 325 | checksum = "03d86534ed367a67548dc68113a0f5db55432fdfbb6e6f9d77704397d95d5780" 326 | dependencies = [ 327 | "libc", 328 | "redox_users", 329 | "winapi", 330 | ] 331 | 332 | [[package]] 333 | name = "discard" 334 | version = "1.0.4" 335 | source = "registry+https://github.com/rust-lang/crates.io-index" 336 | checksum = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0" 337 | 338 | [[package]] 339 | name = "either" 340 | version = "1.6.1" 341 | source = "registry+https://github.com/rust-lang/crates.io-index" 342 | checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" 343 | 344 | [[package]] 345 | name = "env_logger" 346 | version = "0.8.4" 347 | source = "registry+https://github.com/rust-lang/crates.io-index" 348 | checksum = "a19187fea3ac7e84da7dacf48de0c45d63c6a76f9490dae389aead16c243fce3" 349 | dependencies = [ 350 | "atty", 351 | "humantime", 352 | "log", 353 | "regex", 354 | "termcolor", 355 | ] 356 | 357 | [[package]] 358 | name = "find_unicode" 359 | version = "0.4.0" 360 | dependencies = [ 361 | "clap 3.1.0", 362 | "skim", 363 | ] 364 | 365 | [[package]] 366 | name = "fnv" 367 | version = "1.0.7" 368 | source = "registry+https://github.com/rust-lang/crates.io-index" 369 | checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 370 | 371 | [[package]] 372 | name = "fuzzy-matcher" 373 | version = "0.3.7" 374 | source = "registry+https://github.com/rust-lang/crates.io-index" 375 | checksum = "54614a3312934d066701a80f20f15fa3b56d67ac7722b39eea5b4c9dd1d66c94" 376 | dependencies = [ 377 | "thread_local", 378 | ] 379 | 380 | [[package]] 381 | name = "getrandom" 382 | version = "0.2.4" 383 | source = "registry+https://github.com/rust-lang/crates.io-index" 384 | checksum = "418d37c8b1d42553c93648be529cb70f920d3baf8ef469b74b9638df426e0b4c" 385 | dependencies = [ 386 | "cfg-if 1.0.0", 387 | "libc", 388 | "wasi", 389 | ] 390 | 391 | [[package]] 392 | name = "hashbrown" 393 | version = "0.11.2" 394 | source = "registry+https://github.com/rust-lang/crates.io-index" 395 | checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" 396 | 397 | [[package]] 398 | name = "heck" 399 | version = "0.4.0" 400 | source = "registry+https://github.com/rust-lang/crates.io-index" 401 | checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" 402 | 403 | [[package]] 404 | name = "hermit-abi" 405 | version = "0.1.19" 406 | source = "registry+https://github.com/rust-lang/crates.io-index" 407 | checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" 408 | dependencies = [ 409 | "libc", 410 | ] 411 | 412 | [[package]] 413 | name = "humantime" 414 | version = "2.1.0" 415 | source = "registry+https://github.com/rust-lang/crates.io-index" 416 | checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" 417 | 418 | [[package]] 419 | name = "ident_case" 420 | version = "1.0.1" 421 | source = "registry+https://github.com/rust-lang/crates.io-index" 422 | checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" 423 | 424 | [[package]] 425 | name = "indexmap" 426 | version = "1.8.0" 427 | source = "registry+https://github.com/rust-lang/crates.io-index" 428 | checksum = "282a6247722caba404c065016bbfa522806e51714c34f5dfc3e4a3a46fcb4223" 429 | dependencies = [ 430 | "autocfg", 431 | "hashbrown", 432 | ] 433 | 434 | [[package]] 435 | name = "itoa" 436 | version = "1.0.1" 437 | source = "registry+https://github.com/rust-lang/crates.io-index" 438 | checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35" 439 | 440 | [[package]] 441 | name = "lazy_static" 442 | version = "1.4.0" 443 | source = "registry+https://github.com/rust-lang/crates.io-index" 444 | checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" 445 | 446 | [[package]] 447 | name = "libc" 448 | version = "0.2.119" 449 | source = "registry+https://github.com/rust-lang/crates.io-index" 450 | checksum = "1bf2e165bb3457c8e098ea76f3e3bc9db55f87aa90d52d0e6be741470916aaa4" 451 | 452 | [[package]] 453 | name = "log" 454 | version = "0.4.14" 455 | source = "registry+https://github.com/rust-lang/crates.io-index" 456 | checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710" 457 | dependencies = [ 458 | "cfg-if 1.0.0", 459 | ] 460 | 461 | [[package]] 462 | name = "maybe-uninit" 463 | version = "2.0.0" 464 | source = "registry+https://github.com/rust-lang/crates.io-index" 465 | checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00" 466 | 467 | [[package]] 468 | name = "memchr" 469 | version = "2.4.1" 470 | source = "registry+https://github.com/rust-lang/crates.io-index" 471 | checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a" 472 | 473 | [[package]] 474 | name = "memoffset" 475 | version = "0.6.5" 476 | source = "registry+https://github.com/rust-lang/crates.io-index" 477 | checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" 478 | dependencies = [ 479 | "autocfg", 480 | ] 481 | 482 | [[package]] 483 | name = "nix" 484 | version = "0.14.1" 485 | source = "registry+https://github.com/rust-lang/crates.io-index" 486 | checksum = "6c722bee1037d430d0f8e687bbdbf222f27cc6e4e68d5caf630857bb2b6dbdce" 487 | dependencies = [ 488 | "bitflags", 489 | "cc", 490 | "cfg-if 0.1.10", 491 | "libc", 492 | "void", 493 | ] 494 | 495 | [[package]] 496 | name = "nix" 497 | version = "0.19.1" 498 | source = "registry+https://github.com/rust-lang/crates.io-index" 499 | checksum = "b2ccba0cfe4fdf15982d1674c69b1fd80bad427d293849982668dfe454bd61f2" 500 | dependencies = [ 501 | "bitflags", 502 | "cc", 503 | "cfg-if 1.0.0", 504 | "libc", 505 | ] 506 | 507 | [[package]] 508 | name = "num-integer" 509 | version = "0.1.44" 510 | source = "registry+https://github.com/rust-lang/crates.io-index" 511 | checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db" 512 | dependencies = [ 513 | "autocfg", 514 | "num-traits", 515 | ] 516 | 517 | [[package]] 518 | name = "num-traits" 519 | version = "0.2.14" 520 | source = "registry+https://github.com/rust-lang/crates.io-index" 521 | checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290" 522 | dependencies = [ 523 | "autocfg", 524 | ] 525 | 526 | [[package]] 527 | name = "num_cpus" 528 | version = "1.13.1" 529 | source = "registry+https://github.com/rust-lang/crates.io-index" 530 | checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1" 531 | dependencies = [ 532 | "hermit-abi", 533 | "libc", 534 | ] 535 | 536 | [[package]] 537 | name = "once_cell" 538 | version = "1.9.0" 539 | source = "registry+https://github.com/rust-lang/crates.io-index" 540 | checksum = "da32515d9f6e6e489d7bc9d84c71b060db7247dc035bbe44eac88cf87486d8d5" 541 | 542 | [[package]] 543 | name = "os_str_bytes" 544 | version = "6.0.0" 545 | source = "registry+https://github.com/rust-lang/crates.io-index" 546 | checksum = "8e22443d1643a904602595ba1cd8f7d896afe56d26712531c5ff73a15b2fbf64" 547 | dependencies = [ 548 | "memchr", 549 | ] 550 | 551 | [[package]] 552 | name = "proc-macro-error" 553 | version = "1.0.4" 554 | source = "registry+https://github.com/rust-lang/crates.io-index" 555 | checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" 556 | dependencies = [ 557 | "proc-macro-error-attr", 558 | "proc-macro2", 559 | "quote", 560 | "syn", 561 | "version_check", 562 | ] 563 | 564 | [[package]] 565 | name = "proc-macro-error-attr" 566 | version = "1.0.4" 567 | source = "registry+https://github.com/rust-lang/crates.io-index" 568 | checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" 569 | dependencies = [ 570 | "proc-macro2", 571 | "quote", 572 | "version_check", 573 | ] 574 | 575 | [[package]] 576 | name = "proc-macro-hack" 577 | version = "0.5.19" 578 | source = "registry+https://github.com/rust-lang/crates.io-index" 579 | checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" 580 | 581 | [[package]] 582 | name = "proc-macro2" 583 | version = "1.0.36" 584 | source = "registry+https://github.com/rust-lang/crates.io-index" 585 | checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029" 586 | dependencies = [ 587 | "unicode-xid", 588 | ] 589 | 590 | [[package]] 591 | name = "quote" 592 | version = "1.0.15" 593 | source = "registry+https://github.com/rust-lang/crates.io-index" 594 | checksum = "864d3e96a899863136fc6e99f3d7cae289dafe43bf2c5ac19b70df7210c0a145" 595 | dependencies = [ 596 | "proc-macro2", 597 | ] 598 | 599 | [[package]] 600 | name = "rayon" 601 | version = "1.5.1" 602 | source = "registry+https://github.com/rust-lang/crates.io-index" 603 | checksum = "c06aca804d41dbc8ba42dfd964f0d01334eceb64314b9ecf7c5fad5188a06d90" 604 | dependencies = [ 605 | "autocfg", 606 | "crossbeam-deque", 607 | "either", 608 | "rayon-core", 609 | ] 610 | 611 | [[package]] 612 | name = "rayon-core" 613 | version = "1.9.1" 614 | source = "registry+https://github.com/rust-lang/crates.io-index" 615 | checksum = "d78120e2c850279833f1dd3582f730c4ab53ed95aeaaaa862a2a5c71b1656d8e" 616 | dependencies = [ 617 | "crossbeam-channel 0.5.2", 618 | "crossbeam-deque", 619 | "crossbeam-utils 0.8.7", 620 | "lazy_static", 621 | "num_cpus", 622 | ] 623 | 624 | [[package]] 625 | name = "redox_syscall" 626 | version = "0.2.10" 627 | source = "registry+https://github.com/rust-lang/crates.io-index" 628 | checksum = "8383f39639269cde97d255a32bdb68c047337295414940c68bdd30c2e13203ff" 629 | dependencies = [ 630 | "bitflags", 631 | ] 632 | 633 | [[package]] 634 | name = "redox_users" 635 | version = "0.4.0" 636 | source = "registry+https://github.com/rust-lang/crates.io-index" 637 | checksum = "528532f3d801c87aec9def2add9ca802fe569e44a544afe633765267840abe64" 638 | dependencies = [ 639 | "getrandom", 640 | "redox_syscall", 641 | ] 642 | 643 | [[package]] 644 | name = "regex" 645 | version = "1.5.4" 646 | source = "registry+https://github.com/rust-lang/crates.io-index" 647 | checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461" 648 | dependencies = [ 649 | "aho-corasick", 650 | "memchr", 651 | "regex-syntax", 652 | ] 653 | 654 | [[package]] 655 | name = "regex-syntax" 656 | version = "0.6.25" 657 | source = "registry+https://github.com/rust-lang/crates.io-index" 658 | checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b" 659 | 660 | [[package]] 661 | name = "rustc_version" 662 | version = "0.2.3" 663 | source = "registry+https://github.com/rust-lang/crates.io-index" 664 | checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" 665 | dependencies = [ 666 | "semver", 667 | ] 668 | 669 | [[package]] 670 | name = "ryu" 671 | version = "1.0.9" 672 | source = "registry+https://github.com/rust-lang/crates.io-index" 673 | checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f" 674 | 675 | [[package]] 676 | name = "scopeguard" 677 | version = "1.1.0" 678 | source = "registry+https://github.com/rust-lang/crates.io-index" 679 | checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" 680 | 681 | [[package]] 682 | name = "semver" 683 | version = "0.9.0" 684 | source = "registry+https://github.com/rust-lang/crates.io-index" 685 | checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" 686 | dependencies = [ 687 | "semver-parser", 688 | ] 689 | 690 | [[package]] 691 | name = "semver-parser" 692 | version = "0.7.0" 693 | source = "registry+https://github.com/rust-lang/crates.io-index" 694 | checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" 695 | 696 | [[package]] 697 | name = "serde" 698 | version = "1.0.136" 699 | source = "registry+https://github.com/rust-lang/crates.io-index" 700 | checksum = "ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789" 701 | 702 | [[package]] 703 | name = "serde_derive" 704 | version = "1.0.136" 705 | source = "registry+https://github.com/rust-lang/crates.io-index" 706 | checksum = "08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9" 707 | dependencies = [ 708 | "proc-macro2", 709 | "quote", 710 | "syn", 711 | ] 712 | 713 | [[package]] 714 | name = "serde_json" 715 | version = "1.0.79" 716 | source = "registry+https://github.com/rust-lang/crates.io-index" 717 | checksum = "8e8d9fa5c3b304765ce1fd9c4c8a3de2c8db365a5b91be52f186efc675681d95" 718 | dependencies = [ 719 | "itoa", 720 | "ryu", 721 | "serde", 722 | ] 723 | 724 | [[package]] 725 | name = "sha1" 726 | version = "0.6.1" 727 | source = "registry+https://github.com/rust-lang/crates.io-index" 728 | checksum = "c1da05c97445caa12d05e848c4a4fcbbea29e748ac28f7e80e9b010392063770" 729 | dependencies = [ 730 | "sha1_smol", 731 | ] 732 | 733 | [[package]] 734 | name = "sha1_smol" 735 | version = "1.0.0" 736 | source = "registry+https://github.com/rust-lang/crates.io-index" 737 | checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012" 738 | 739 | [[package]] 740 | name = "shlex" 741 | version = "0.1.1" 742 | source = "registry+https://github.com/rust-lang/crates.io-index" 743 | checksum = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2" 744 | 745 | [[package]] 746 | name = "skim" 747 | version = "0.9.4" 748 | source = "registry+https://github.com/rust-lang/crates.io-index" 749 | checksum = "4b9d19f904221fab15163486d2ce116cb86e60296470bb4e956d6687f04ebbb4" 750 | dependencies = [ 751 | "atty", 752 | "beef", 753 | "bitflags", 754 | "chrono", 755 | "clap 2.34.0", 756 | "crossbeam", 757 | "defer-drop", 758 | "derive_builder", 759 | "env_logger", 760 | "fuzzy-matcher", 761 | "lazy_static", 762 | "log", 763 | "nix 0.19.1", 764 | "rayon", 765 | "regex", 766 | "shlex", 767 | "time 0.2.27", 768 | "timer", 769 | "tuikit", 770 | "unicode-width", 771 | "vte", 772 | ] 773 | 774 | [[package]] 775 | name = "standback" 776 | version = "0.2.17" 777 | source = "registry+https://github.com/rust-lang/crates.io-index" 778 | checksum = "e113fb6f3de07a243d434a56ec6f186dfd51cb08448239fe7bcae73f87ff28ff" 779 | dependencies = [ 780 | "version_check", 781 | ] 782 | 783 | [[package]] 784 | name = "stdweb" 785 | version = "0.4.20" 786 | source = "registry+https://github.com/rust-lang/crates.io-index" 787 | checksum = "d022496b16281348b52d0e30ae99e01a73d737b2f45d38fed4edf79f9325a1d5" 788 | dependencies = [ 789 | "discard", 790 | "rustc_version", 791 | "stdweb-derive", 792 | "stdweb-internal-macros", 793 | "stdweb-internal-runtime", 794 | "wasm-bindgen", 795 | ] 796 | 797 | [[package]] 798 | name = "stdweb-derive" 799 | version = "0.5.3" 800 | source = "registry+https://github.com/rust-lang/crates.io-index" 801 | checksum = "c87a60a40fccc84bef0652345bbbbbe20a605bf5d0ce81719fc476f5c03b50ef" 802 | dependencies = [ 803 | "proc-macro2", 804 | "quote", 805 | "serde", 806 | "serde_derive", 807 | "syn", 808 | ] 809 | 810 | [[package]] 811 | name = "stdweb-internal-macros" 812 | version = "0.2.9" 813 | source = "registry+https://github.com/rust-lang/crates.io-index" 814 | checksum = "58fa5ff6ad0d98d1ffa8cb115892b6e69d67799f6763e162a1c9db421dc22e11" 815 | dependencies = [ 816 | "base-x", 817 | "proc-macro2", 818 | "quote", 819 | "serde", 820 | "serde_derive", 821 | "serde_json", 822 | "sha1", 823 | "syn", 824 | ] 825 | 826 | [[package]] 827 | name = "stdweb-internal-runtime" 828 | version = "0.1.5" 829 | source = "registry+https://github.com/rust-lang/crates.io-index" 830 | checksum = "213701ba3370744dcd1a12960caa4843b3d68b4d1c0a5d575e0d65b2ee9d16c0" 831 | 832 | [[package]] 833 | name = "strsim" 834 | version = "0.8.0" 835 | source = "registry+https://github.com/rust-lang/crates.io-index" 836 | checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" 837 | 838 | [[package]] 839 | name = "strsim" 840 | version = "0.9.3" 841 | source = "registry+https://github.com/rust-lang/crates.io-index" 842 | checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c" 843 | 844 | [[package]] 845 | name = "strsim" 846 | version = "0.10.0" 847 | source = "registry+https://github.com/rust-lang/crates.io-index" 848 | checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" 849 | 850 | [[package]] 851 | name = "syn" 852 | version = "1.0.86" 853 | source = "registry+https://github.com/rust-lang/crates.io-index" 854 | checksum = "8a65b3f4ffa0092e9887669db0eae07941f023991ab58ea44da8fe8e2d511c6b" 855 | dependencies = [ 856 | "proc-macro2", 857 | "quote", 858 | "unicode-xid", 859 | ] 860 | 861 | [[package]] 862 | name = "term" 863 | version = "0.6.1" 864 | source = "registry+https://github.com/rust-lang/crates.io-index" 865 | checksum = "c0863a3345e70f61d613eab32ee046ccd1bcc5f9105fe402c61fcd0c13eeb8b5" 866 | dependencies = [ 867 | "dirs", 868 | "winapi", 869 | ] 870 | 871 | [[package]] 872 | name = "termcolor" 873 | version = "1.1.2" 874 | source = "registry+https://github.com/rust-lang/crates.io-index" 875 | checksum = "2dfed899f0eb03f32ee8c6a0aabdb8a7949659e3466561fc0adf54e26d88c5f4" 876 | dependencies = [ 877 | "winapi-util", 878 | ] 879 | 880 | [[package]] 881 | name = "textwrap" 882 | version = "0.11.0" 883 | source = "registry+https://github.com/rust-lang/crates.io-index" 884 | checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060" 885 | dependencies = [ 886 | "unicode-width", 887 | ] 888 | 889 | [[package]] 890 | name = "textwrap" 891 | version = "0.14.2" 892 | source = "registry+https://github.com/rust-lang/crates.io-index" 893 | checksum = "0066c8d12af8b5acd21e00547c3797fde4e8677254a7ee429176ccebbe93dd80" 894 | 895 | [[package]] 896 | name = "thread_local" 897 | version = "1.1.4" 898 | source = "registry+https://github.com/rust-lang/crates.io-index" 899 | checksum = "5516c27b78311c50bf42c071425c560ac799b11c30b31f87e3081965fe5e0180" 900 | dependencies = [ 901 | "once_cell", 902 | ] 903 | 904 | [[package]] 905 | name = "time" 906 | version = "0.1.43" 907 | source = "registry+https://github.com/rust-lang/crates.io-index" 908 | checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438" 909 | dependencies = [ 910 | "libc", 911 | "winapi", 912 | ] 913 | 914 | [[package]] 915 | name = "time" 916 | version = "0.2.27" 917 | source = "registry+https://github.com/rust-lang/crates.io-index" 918 | checksum = "4752a97f8eebd6854ff91f1c1824cd6160626ac4bd44287f7f4ea2035a02a242" 919 | dependencies = [ 920 | "const_fn", 921 | "libc", 922 | "standback", 923 | "stdweb", 924 | "time-macros", 925 | "version_check", 926 | "winapi", 927 | ] 928 | 929 | [[package]] 930 | name = "time-macros" 931 | version = "0.1.1" 932 | source = "registry+https://github.com/rust-lang/crates.io-index" 933 | checksum = "957e9c6e26f12cb6d0dd7fc776bb67a706312e7299aed74c8dd5b17ebb27e2f1" 934 | dependencies = [ 935 | "proc-macro-hack", 936 | "time-macros-impl", 937 | ] 938 | 939 | [[package]] 940 | name = "time-macros-impl" 941 | version = "0.1.2" 942 | source = "registry+https://github.com/rust-lang/crates.io-index" 943 | checksum = "fd3c141a1b43194f3f56a1411225df8646c55781d5f26db825b3d98507eb482f" 944 | dependencies = [ 945 | "proc-macro-hack", 946 | "proc-macro2", 947 | "quote", 948 | "standback", 949 | "syn", 950 | ] 951 | 952 | [[package]] 953 | name = "timer" 954 | version = "0.2.0" 955 | source = "registry+https://github.com/rust-lang/crates.io-index" 956 | checksum = "31d42176308937165701f50638db1c31586f183f1aab416268216577aec7306b" 957 | dependencies = [ 958 | "chrono", 959 | ] 960 | 961 | [[package]] 962 | name = "tuikit" 963 | version = "0.4.5" 964 | source = "registry+https://github.com/rust-lang/crates.io-index" 965 | checksum = "8c628cfc5752254a33ebccf73eb79ef6508fab77de5d5ef76246b5e45010a51f" 966 | dependencies = [ 967 | "bitflags", 968 | "lazy_static", 969 | "log", 970 | "nix 0.14.1", 971 | "term", 972 | "unicode-width", 973 | ] 974 | 975 | [[package]] 976 | name = "unicode-width" 977 | version = "0.1.9" 978 | source = "registry+https://github.com/rust-lang/crates.io-index" 979 | checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973" 980 | 981 | [[package]] 982 | name = "unicode-xid" 983 | version = "0.2.2" 984 | source = "registry+https://github.com/rust-lang/crates.io-index" 985 | checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3" 986 | 987 | [[package]] 988 | name = "utf8parse" 989 | version = "0.2.0" 990 | source = "registry+https://github.com/rust-lang/crates.io-index" 991 | checksum = "936e4b492acfd135421d8dca4b1aa80a7bfc26e702ef3af710e0752684df5372" 992 | 993 | [[package]] 994 | name = "vec_map" 995 | version = "0.8.2" 996 | source = "registry+https://github.com/rust-lang/crates.io-index" 997 | checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" 998 | 999 | [[package]] 1000 | name = "version_check" 1001 | version = "0.9.4" 1002 | source = "registry+https://github.com/rust-lang/crates.io-index" 1003 | checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" 1004 | 1005 | [[package]] 1006 | name = "void" 1007 | version = "1.0.2" 1008 | source = "registry+https://github.com/rust-lang/crates.io-index" 1009 | checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" 1010 | 1011 | [[package]] 1012 | name = "vte" 1013 | version = "0.9.0" 1014 | source = "registry+https://github.com/rust-lang/crates.io-index" 1015 | checksum = "6e7745610024d50ab1ebfa41f8f8ee361c567f7ab51032f93cc1cc4cbf0c547a" 1016 | dependencies = [ 1017 | "arrayvec", 1018 | "utf8parse", 1019 | "vte_generate_state_changes", 1020 | ] 1021 | 1022 | [[package]] 1023 | name = "vte_generate_state_changes" 1024 | version = "0.1.1" 1025 | source = "registry+https://github.com/rust-lang/crates.io-index" 1026 | checksum = "d257817081c7dffcdbab24b9e62d2def62e2ff7d00b1c20062551e6cccc145ff" 1027 | dependencies = [ 1028 | "proc-macro2", 1029 | "quote", 1030 | ] 1031 | 1032 | [[package]] 1033 | name = "wasi" 1034 | version = "0.10.2+wasi-snapshot-preview1" 1035 | source = "registry+https://github.com/rust-lang/crates.io-index" 1036 | checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6" 1037 | 1038 | [[package]] 1039 | name = "wasm-bindgen" 1040 | version = "0.2.79" 1041 | source = "registry+https://github.com/rust-lang/crates.io-index" 1042 | checksum = "25f1af7423d8588a3d840681122e72e6a24ddbcb3f0ec385cac0d12d24256c06" 1043 | dependencies = [ 1044 | "cfg-if 1.0.0", 1045 | "wasm-bindgen-macro", 1046 | ] 1047 | 1048 | [[package]] 1049 | name = "wasm-bindgen-backend" 1050 | version = "0.2.79" 1051 | source = "registry+https://github.com/rust-lang/crates.io-index" 1052 | checksum = "8b21c0df030f5a177f3cba22e9bc4322695ec43e7257d865302900290bcdedca" 1053 | dependencies = [ 1054 | "bumpalo", 1055 | "lazy_static", 1056 | "log", 1057 | "proc-macro2", 1058 | "quote", 1059 | "syn", 1060 | "wasm-bindgen-shared", 1061 | ] 1062 | 1063 | [[package]] 1064 | name = "wasm-bindgen-macro" 1065 | version = "0.2.79" 1066 | source = "registry+https://github.com/rust-lang/crates.io-index" 1067 | checksum = "2f4203d69e40a52ee523b2529a773d5ffc1dc0071801c87b3d270b471b80ed01" 1068 | dependencies = [ 1069 | "quote", 1070 | "wasm-bindgen-macro-support", 1071 | ] 1072 | 1073 | [[package]] 1074 | name = "wasm-bindgen-macro-support" 1075 | version = "0.2.79" 1076 | source = "registry+https://github.com/rust-lang/crates.io-index" 1077 | checksum = "bfa8a30d46208db204854cadbb5d4baf5fcf8071ba5bf48190c3e59937962ebc" 1078 | dependencies = [ 1079 | "proc-macro2", 1080 | "quote", 1081 | "syn", 1082 | "wasm-bindgen-backend", 1083 | "wasm-bindgen-shared", 1084 | ] 1085 | 1086 | [[package]] 1087 | name = "wasm-bindgen-shared" 1088 | version = "0.2.79" 1089 | source = "registry+https://github.com/rust-lang/crates.io-index" 1090 | checksum = "3d958d035c4438e28c70e4321a2911302f10135ce78a9c7834c0cab4123d06a2" 1091 | 1092 | [[package]] 1093 | name = "winapi" 1094 | version = "0.3.9" 1095 | source = "registry+https://github.com/rust-lang/crates.io-index" 1096 | checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 1097 | dependencies = [ 1098 | "winapi-i686-pc-windows-gnu", 1099 | "winapi-x86_64-pc-windows-gnu", 1100 | ] 1101 | 1102 | [[package]] 1103 | name = "winapi-i686-pc-windows-gnu" 1104 | version = "0.4.0" 1105 | source = "registry+https://github.com/rust-lang/crates.io-index" 1106 | checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 1107 | 1108 | [[package]] 1109 | name = "winapi-util" 1110 | version = "0.1.5" 1111 | source = "registry+https://github.com/rust-lang/crates.io-index" 1112 | checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" 1113 | dependencies = [ 1114 | "winapi", 1115 | ] 1116 | 1117 | [[package]] 1118 | name = "winapi-x86_64-pc-windows-gnu" 1119 | version = "0.4.0" 1120 | source = "registry+https://github.com/rust-lang/crates.io-index" 1121 | checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 1122 | --------------------------------------------------------------------------------