Make sure all emoji are fully qualified

Open
#166 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Quiet
Tech stack
rust
Domain
content

Research direction

Start by comparing the entries in the emoji data against Unicode 17.0.0's emoji-test.txt or emoji-ordering.txt, paying particular attention to qualification sequences with selectors in the middle. The issue is done when the intended qualification policy is decided and the affected entries match it, including any required U+20E3 sequences.

Written by the indexing model from the issue text.

Description

we may want to make sure all emoji in emoji are fully qualified. This is more complex than just having an emoji presentation selector at the end. Sometimes it is in the middle, such as for 2764 FE0F 200D 1F525 ❤️‍🔥.

Data at https://www.unicode.org/Public/17.0.0/emoji/emoji-test.txt. More succinct data which seems to only contain fully-qualified and component entries: https://unicode.org/emoji/charts/emoji-ordering.txt.

Currently, two emoji are not even valid: ast should be 002A FE0F 20E3 and hash should be 0023 FE0F 20E3. They are both missing U+20E3. See: https://github.com/typst/codex/pull/167#issuecomment-4447816396.

I am not sure whether we actually want to do that. I am opening this issue now to make sure I don't forget to look into it later.

Dominant language
Rust
Stars
53
Forks
22
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from typst/codex

All issues in typst/codex

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.