書記素クラスター

Technical/Unicode

複数のUnicodeコードポイントで構成されていても、1つの視覚的な単位として表示されるユーザーが認識する文字。

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.

関連用語

ICU (ICU) ICU (ICU)
絵文字処理を含むUnicodeと国際化のサポートを提供する、広く使われているオープンソースライブラリ「International Components for Unicode」。
コードポイント コードポイント
Unicode規格で各文字に割り当てられた固有の数値。U+XXXX形式で表記される(例:😀はU+1F600)。
ゼロ幅接合子(ZWJ) (ZWJ) ゼロ幅接合子(ZWJ) (ZWJ)
複数の絵文字を1つの複合絵文字に結合するために使われる不可視のUnicode文字(U+200D)。人物と物体を組み合わせた職業絵文字などに使用される。

関連ツール

🔍 シーケンスアナライザー シーケンスアナライザー
ZWJ シーケンス、肌の色の修飾子、キーキャップシーケンス、国旗のペアを個別のコンポーネントに分解します。
🔢 Unicode 検索 Unicode 検索
U+1F600 のようなコードポイントを入力すると、対応する絵文字、エンコード詳細、UTF-8/16 バイト、HTML エンティティを確認できます。