淺談Unicode 14.0中為什麼會有“懷孕男人”的emoji?
隨著iOS 15.4測試版的發布,Unicode 14.0標準中出現了存在爭議的“懷孕男人”emoji表情符號。以下是Unicode U+1FAC3的產生過程。
Unicode Emoji小組委員會
在討論表情符號本身之前需要了解下Unicode Emoji小組委員會(ESC)的成立情況。
ESC是負責維護和創建新emoji表情的管理機構。他們提出指導方針、徵求反饋意見並編纂標準供供應商實施。
根據ESC的網站上的介紹,這個委員會的工作內容包括:
更新、修訂和擴展表情符號文件,如UTS #51: Unicode Emoji和Unicode Emoji Charts;
接受來自不同渠道的意見並審查新的表情符號的要求;
為Unicode技術委員會創建關於額外的表情符號和新emoji相關機制的建議;
調查支持emoji作為圖像(貼紙)的長期機制。
該團隊是統一碼聯盟(Unicode Consortium)的一個小組委員會,其中包括我們熟悉的所有大型科技公司,像微軟、Google、蘋果、Meta、Adobe和其他公司。
ZWJ和emoji構建
自從Unicode 12.0在2019年發布以來,官方Unicode標準使用了三種性別–女人,男人和“性別中立”。雖然後者的官方定義會隨著語言的轉變而演變,但從本質上講,人們談論的是男性、女性和非二元性別。
對於那些問為什麼一開始就規定了三種性別的人,這裡是官方給出的標準理由:“通常情況下,性別是未知的或不相關的,如’飛機上有醫生嗎?’的用法,或不希望有性別的外觀。這種情況被稱為“性別中立”、“性別包容”、“未指定性別”或其他許多術語。除上述列表外,人類形態的表情符號通常應以性別中立的方式進行描述,除非使用表情符號ZWJ序列明確指定性別外觀。”
“中立emoji跟其他emoji和一個被稱為零寬度連接符(前面提到的ZWJ)的特殊字符相結合以修改基礎表情符號。
那麼比如如何製作一個中淺膚色的女性做“不”字的emoji呢?
一般情況下,會從“人做出不的手勢”emoji(U+1F645)開始,然後加上中淺膚色的medium-light skin tone(U+1F3FC),接著在“女性”emoji(U+2640或U+FE0F)旁邊則會加上一個零寬度連接器(U+200D)。這就形成了一個中淺膚色的女性做“不”手勢的ZWJ序列。
這個系統的結構是這樣的:每一個組成部分都可以在邏輯上拼接起來從而創造出所需的結果。
不過有些emoji則是以女性或男性作為基本字符開始的,而非普通人。這些通常是在規範的早期版本中存在的表情符號的結果,是例外列表的一部分或是更複雜並試圖適合更小的空間。
我們可以對字符的字節大小編碼展開更多的技術討論,但這已經遠遠超出了本文的範圍。系統中也有例外情況,後面將會談到。
L2/19-101:未來RGI表情符號序列的優先順序
現在我們知道了ESC的工作,它是由誰組成的並對錶情符號系統的運作有了基本的了解,我們可以談談最終導致“懷孕男人”emoji產生的過程。
這份題為《Priorities for Future RGI Emoji Sequences》的文件標誌著ESC開始認真地倡議開始使表情符號更具有代表性。
ESC定義了其在文件中增加更多膚色、性別選擇、方向和顏色變化的路線圖。另外,它還提出了每項工作的優先次序並將性別中立的變化放在首位,其次是混合膚色。
Emoji技術規範中則直接說明了這樣做的理由:“ A(性別中立)和B(混合膚色)都是針對現有emoji集的空白,因此被認為比C(方向性)或D(顏色變化)更需要優先實施,後者則是為了擴大表情符號的功能範圍。”
很明顯,ESC的目標是代表各種各樣的人類和他們的獨特經歷。從混血兒的握手、夫婦到同性家庭,他們正在慢慢地覆蓋盡可能多的領域,從而確保每個人都能在他們選擇的情況下代表自己。
那麼為什麼孕婦不是那些特殊的性別案例之一呢?
為了回答這個問題,我們需要看一下L2/21-055號文件:ESC對2020年第四季度反饋的意見。這份文件存在的唯一原因是解釋發生了什麼。
按照標準做法,最初的計劃是用非二元性表示法取代原來的“孕婦”emoji(U+1F930),然後用男性(U+2642和U+FE0F)和女性(U+2640和U+FE0F)將其修改為所需性別。從理論上講,這個系統得到了尊重,所以大家都很高興。
為了確保現有的性別化表情符號的完整性並為未來的添加保留一條長長的跑道,基於“人”的emoji永遠不應該被編碼為性別符號。因此,“人”和“男人”的變體正在被添加為原子字符。
換言之,由於該emoji的遺留使用和性別在其意義中的重要性,再加上沒有非二元性別的修飾符,反而得到了兩個額外的獨立變體。“懷孕男人”(U+1FAC3)和“懷孕的人”(U+1FAC4)將與原來的“懷孕的女人”(U+1F930)並存,打破慣例。
例外情況需要變通
如果你讀過L2/21-055,那麼你可能已經看到最初為該emoji的中性和男性版本提出了不同的名稱:分別是“脹肚的人”和“脹肚的男人”。為什麼這兩個都沒有堅持,原因也是明擺著的:
“新字符的擬議名稱“脹肚的人”和“脹肚的男人”在語義上完全脫離了U+1F930的含義,這對於形成性別三聯體的emoji來說從來都是這樣的。懷孕和脹肚並不是同義詞;一個不能合理地用來替代另一個。雖然U+1F930有時確實被幽默地用來表達臃腫的一般概念,但這跟它作為Unicode字符的實際語義沒有關係。U+1F930是為一個非常特殊的目的而編碼的–代表懷孕和為人父母–並且追溯性地改變其官方含義以包括任何胃部膨脹,這既是對預期父母的不尊重也是對現有數據的破壞。”
翻譯一下:所有包含三種性別變化的emoji都有一個共同的命名方案,在這裡改變三種表現形式中的兩種名稱沒有意義。它在一個應該是相當有邏輯的系統中引入了更多的不規則性。
此外,將女性改為非二元性別堅持改變了原來的emoji的含義從而破壞了向後兼容。
簡而言之,跳過公司之間一些多餘的對話,這就是如何最終得到一個“懷孕男人”的emoji。