#unicode-characters #unicode #unicode-text #character-property #no-alloc #text

no-std unicode-properties

Query character Unicode properties according to UAX #44 and UTR #51

4 releases

0.1.3 Sep 30, 2024
0.1.2 Aug 19, 2024
0.1.1 Jan 18, 2024
0.1.0 Jul 27, 2023

#13 in No standard library

Download history 264950/week @ 2024-07-23 259580/week @ 2024-07-30 276467/week @ 2024-08-06 270550/week @ 2024-08-13 302955/week @ 2024-08-20 317875/week @ 2024-08-27 340761/week @ 2024-09-03 334053/week @ 2024-09-10 323277/week @ 2024-09-17 361641/week @ 2024-09-24 383994/week @ 2024-10-01 380296/week @ 2024-10-08 403732/week @ 2024-10-15 417668/week @ 2024-10-22 415058/week @ 2024-10-29 336328/week @ 2024-11-05

1,638,226 downloads per month
Used in 2,209 crates (12 directly)

MIT/Apache

295KB
3.5K SLoC

unicode-properties

Build Status Current Version License: MIT/Apache-2.0


lib.rs:

Query character Unicode properties according to Unicode Standard Annex #44 and Unicode Technical Standard #51 rules.

Currently we support the General_Category property as well as Emoji and Emoji_Component.

Future properties can be added as requested.

use unicode_properties::UnicodeEmoji;
use unicode_properties::UnicodeGeneralCategory;

let ch = '🦀'; // U+1F980 CRAB
let is_emoji = ch.is_emoji_char();
let group = ch.general_category_group();
println!("{}({:?})", ch, group);
println!("The above char {} for use as emoji char.",
         if is_emoji { "is recommended" } else { "is not recommended" });

Features

general-category

Provides the most general classification of a character, based on its primary characteristic.

emoji

Provides the emoji character properties of a character.

No runtime deps

Features