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

no-std unicode-properties

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

2 releases

0.1.1 Jan 18, 2024
0.1.0 Jul 27, 2023

#12 in No standard library

Download history 20753/week @ 2024-01-03 21391/week @ 2024-01-10 26236/week @ 2024-01-17 26358/week @ 2024-01-24 34149/week @ 2024-01-31 36249/week @ 2024-02-07 41101/week @ 2024-02-14 40945/week @ 2024-02-21 36398/week @ 2024-02-28 38387/week @ 2024-03-06 37052/week @ 2024-03-13 35019/week @ 2024-03-20 34949/week @ 2024-03-27 32610/week @ 2024-04-03 32208/week @ 2024-04-10 29266/week @ 2024-04-17

134,341 downloads per month
Used in 169 crates (5 directly)

MIT/Apache

290KB
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;

fn main() {
    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