Grapheme Cluster

Technical/Unicode

A user-perceived character that may be composed of multiple Unicode code points displayed as a single visual unit.

A grapheme cluster is what a user sees as "one character" on screen, even though it may be encoded as several code points. This concept is crucial for emoji because many emoji are composed of multiple code points.

For example, a flag emoji like 🇰🇷 is two Regional Indicator code points. A person emoji with skin tone like 👍🏽 is two code points (the gesture + a modifier). ZWJ sequences can combine even more.

Programming languages differ in how they handle grapheme clusters. JavaScript's `.length` counts UTF-16 code units, so `'👨‍👩‍👧'.length` returns 8, not 1. Proper grapheme-aware APIs (like `Intl.Segmenter`) return the expected count of 1.

Istilah Terkait

Code Point Code Point
A unique numerical value assigned to each character in the Unicode standard, written in the format U+XXXX (e.g., U+1F600 for 😀).
Zero Width Joiner (ZWJ) Zero Width Joiner (ZWJ)
An invisible Unicode character (U+200D) used to join multiple emoji into a single composite emoji, such as combining people and objects into profession emoji.
ICU (ICU) ICU (ICU)
International Components for Unicode — a widely-used open-source library providing Unicode and internationalization support, including emoji processing.

Alat Terkait

🔍 Penganalisis Urutan Penganalisis Urutan
Dekode urutan ZWJ, modifier warna kulit, urutan keycap, dan pasangan bendera menjadi komponen individual.
🔢 Pencarian Unicode Pencarian Unicode
Masukkan codepoint seperti U+1F600 untuk mendapatkan emoji, detail encoding, byte UTF-8/16, dan HTML entity.