#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

#14 in No standard library

Download history 405442/week @ 2024-11-16 390024/week @ 2024-11-23 407608/week @ 2024-11-30 421530/week @ 2024-12-07 409146/week @ 2024-12-14 216830/week @ 2024-12-21 249901/week @ 2024-12-28 429402/week @ 2025-01-04 506681/week @ 2025-01-11 552536/week @ 2025-01-18 602940/week @ 2025-01-25 659560/week @ 2025-02-01 671783/week @ 2025-02-08 670413/week @ 2025-02-15 752240/week @ 2025-02-22 647679/week @ 2025-03-01

2,854,949 downloads per month
Used in 2,759 crates (14 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