Expand description

✨ Lookup and iterate over emoji names, shortcodes, and groups.

Examples

Lookup any emoji by Unicode value or GitHub shortcode.

let hand = emojis::get("🤌").unwrap();
// Or
let hand = emojis::get_by_shortcode("pinched_fingers").unwrap();

assert_eq!(hand.as_str(), "\u{1f90c}");
assert_eq!(hand.name(), "pinched fingers");
assert_eq!(hand.unicode_version(), emojis::UnicodeVersion::new(13, 0));
assert_eq!(hand.group(), emojis::Group::PeopleAndBody);
assert_eq!(hand.shortcode().unwrap(), "pinched_fingers");
assert_eq!(hand.skin_tone().unwrap(), emojis::SkinTone::Default);

Iterate over all the emojis.

let smiley = emojis::iter().next().unwrap();
assert_eq!(smiley, "😀");

Iterate and filter out newer emoji versions.

let iter = emojis::iter().filter(|e| {
    e.unicode_version() < emojis::UnicodeVersion::new(13, 0)
});
assert_eq!(iter.count(), 1738);

Iterate over all the emojis in a group.

let grapes = emojis::Group::FoodAndDrink.emojis().next().unwrap();
assert_eq!(grapes, "🍇");

Iterate over the skin tones for an emoji.

let raised_hands = emojis::get("🙌🏼").unwrap();
let iter = raised_hands.skin_tones().unwrap();
let skin_tones: Vec<_> = iter.map(emojis::Emoji::as_str).collect();
assert_eq!(skin_tones, ["🙌", "🙌🏻", "🙌🏼", "🙌🏽", "🙌🏾", "🙌🏿"]);

Structs

Represents an emoji.

Represents a Unicode version.

Enums

A category for an emoji.

Represents the skin tone of an emoji.

Functions

Find an emoji by Unicode value.

Find an emoji by GitHub shortcode.

Returns an iterator over all emojis.