Skip to main content

A build-time generated emoji lexicon for Python

Project description

emoji-lexicon

Tests coverage PyPI version Python License

🚀 emoji-lexicon is a fast, build-time generated emoji lexicon for Python, powered by Unicode emoji-test and CLDR annotations.

Features

  • Fast emoji lookup by short name, alias, or tag
  • Designed for CLI, IME, and dictionary tools
  • Unicode / CLDR based canonical data
  • Build-time normalization, runtime zero-cost lookup
  • Optional gemoji-compatible export

Requirements

  • Python 3.12+

Installation

pip install emoji-lexicon

Usage

from emoji_lexicon import get_catalog

catalog = get_catalog()

# lookup by short name or alias
catalog.get("smile")
# -> Emoji | None

# Slack / gemoji style
catalog.get(":smile:")

# lookup by emoji character
catalog.get_by_char("😁")
# -> Emoji | None

# get all emojis
catalog.get_all()

# total emoji count
len(catalog)

# iterator
for emoji in catalog:
	print(emoji.char, emoji.short_name)

.search() , .find()

# partial match (short_name / alias / tag)
catalog.search("happy")
# -> tuple[Emoji, ...]

# alias of .search()
catalog.find("happy")
# -> tuple[Emoji, ...]

.search() and .find() perform partial matching and return multiple emojis. .find() is a user-facing alias of .search().

.groups(), .subgroups()

from emoji_lexicon import get_catalog
catalog = get_catalog()

# available emoji groups
catalog.groups()

# available emoji subgroups
catalog.subgroups()

Application examples:

  • Categories UI
  • IME candidate narrowing down
  • emoji picker

Design philosophy

  • runtime zero-cost
  • immutable catalog
  • Pythonic & typed

License

MIT License © 2026 Kiminori Kato

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

emoji_lexicon-0.1.2.tar.gz (301.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

emoji_lexicon-0.1.2-py3-none-any.whl (185.4 kB view details)

Uploaded Python 3

File details

Details for the file emoji_lexicon-0.1.2.tar.gz.

File metadata

  • Download URL: emoji_lexicon-0.1.2.tar.gz
  • Upload date:
  • Size: 301.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for emoji_lexicon-0.1.2.tar.gz
Algorithm Hash digest
SHA256 07741f562899cfd89b21cf6913da55716454aef90e04feeb4c83cc22dee411c2
MD5 7e1fb22735dac3229d7fe7b696dadf7c
BLAKE2b-256 60ffb174974d6edb1f07dc332fecab840edf7093dc6d0664da9f0ef014f5ef6a

See more details on using hashes here.

Provenance

The following attestation bundles were made for emoji_lexicon-0.1.2.tar.gz:

Publisher: release.yml on kimikato/emoji-lexicon

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file emoji_lexicon-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: emoji_lexicon-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 185.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for emoji_lexicon-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9a8a7b592ef82a905d9fa60f43cc9b686fbb4e37b8b7f3702f4e52488642ac9d
MD5 6e92ad5e3a459eb8b5d85167e2254b32
BLAKE2b-256 aaa4489b91d5bb91530d1ffec4ebbbf902fdcf173de2cccd76160da92bf5622c

See more details on using hashes here.

Provenance

The following attestation bundles were made for emoji_lexicon-0.1.2-py3-none-any.whl:

Publisher: release.yml on kimikato/emoji-lexicon

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page