Unicode 标准中正确的表情符号列表是什么?

What is the correct list of emoji in the Unicode Standard?

我正在尝试查找由 Unicode 标准定义的表情符号代码点的官方列表,并且 运行 进入了一些相互冲突的来源:根据 emoji-data.txt even digits are emoji; other sources at unicode.org suggest only a subset of that list to be emoji, for instance the emoji chart and the emoji test file. There is even a section within Unicode Technical Report #51 called Which Characters are Emoji 但它并没有真正回答我的问题,或者至少我在那里看不到它。

那么,哪些 Unicode 代码点是表情符号?

并非所有表情符号字形都是从单个 Unicode 代码点创建的。某些字符只有在组合成 "emoji sequence" 时才会出现表情符号。这使得很难仅通过代码点来计算表情符号字符。这就是 Section 3 in UTR #51 试图传达的意思,但可能会通过一些示例进行改进:

  • U+0031 为 1,但与 U+FE0F U+20E3 组合时呈现表情符号外观:1️⃣(或与 U+FE0E U+20E3 组合时呈现普通外观:1︎⃣)。
  • U+1F170 是 ,但在与 U+FE0F 组合时呈现表情符号外观:️.
  • U+2620 是 ☠︎,但与 U+FE0F 组合时呈现表情符号外观:☠️.
  • (通常,U+FE0F 用于将许多现有字符转换为相应的表情符号序列,而无需将它们编码为单独的代码点。)
  • 区域指示符号仅在形成 country/region 代码时显示为表情符号:U+1F1E6 U+1F1F6,而不是 U+1F1E6 U+1F1F5

emoji-data.txt 文件列出了所有具有 Emoji=Yes 字符 属性 的字符。这些都是基本字符(例如 1、 、☠︎、 、 、 ),它们至少可以开始一个表情符号序列,即使它们本身并不是一个完整的序列。 emoji-test.txt 文件列出了所有完整的表情符号序列。