#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

#12 in No standard library

Download history 328935/week @ 2024-09-18 365876/week @ 2024-09-25 384345/week @ 2024-10-02 380709/week @ 2024-10-09 414404/week @ 2024-10-16 413062/week @ 2024-10-23 412932/week @ 2024-10-30 394991/week @ 2024-11-06 395952/week @ 2024-11-13 415899/week @ 2024-11-20 384974/week @ 2024-11-27 406747/week @ 2024-12-04 420347/week @ 2024-12-11 338589/week @ 2024-12-18 210067/week @ 2024-12-25 256686/week @ 2025-01-01

1,304,428 downloads per month
Used in 2,482 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