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.3.tar.gz (301.8 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.3-py3-none-any.whl (185.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: emoji_lexicon-0.1.3.tar.gz
  • Upload date:
  • Size: 301.8 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.3.tar.gz
Algorithm Hash digest
SHA256 eb2d1d982bd48a04f8485bff1e707149230f03a6c6188354860e0e5207b2b6a7
MD5 2484c5487925000202e92c590e383536
BLAKE2b-256 8716e6e79694d5589f59ccce4df69f8545346b8db4bbaea9eae298dda40793ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for emoji_lexicon-0.1.3.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.3-py3-none-any.whl.

File metadata

  • Download URL: emoji_lexicon-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 185.3 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 a17136d8d41ff972a7f613a4beedb9fd6a5bd366b92a0be53b4ec97a52443561
MD5 883813964751f326afc79ff34d9120da
BLAKE2b-256 415deb90f0078ca9d64dd2b7b0a6f71bad7b29b847e553be0fa34fc326beaf40

See more details on using hashes here.

Provenance

The following attestation bundles were made for emoji_lexicon-0.1.3-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