#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 296665/week @ 2024-08-19 325467/week @ 2024-08-26 326614/week @ 2024-09-02 335201/week @ 2024-09-09 322513/week @ 2024-09-16 359693/week @ 2024-09-23 375424/week @ 2024-09-30 386917/week @ 2024-10-07 393035/week @ 2024-10-14 420450/week @ 2024-10-21 411511/week @ 2024-10-28 407359/week @ 2024-11-04 391876/week @ 2024-11-11 407109/week @ 2024-11-18 384277/week @ 2024-11-25 411033/week @ 2024-12-02

1,619,518 downloads per month
Used in 2,368 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