用戶:Arnie97/Unicode字元屬性

Unicode 字元屬性(Character Properties)是Unicode標準中與碼位實體相對應的一組欄位,每個屬性都有獨一無二的名稱,同時標準預先定義了每個屬性的有效取值範圍[1]

Properties have levels of forcefulness: normative, informative, contributory, or provisional.

這些屬性有助於正確的處理Unicode文字,例如確定合適的換行位置、文字書寫方向等。 屬性和屬性的值有預先定義好的名稱和縮寫[2]。Unicode標準#44號附錄中詳細描述了這些屬性[3]

名稱

編輯

Unicode字元擁有一個獨一無二的名稱(Name),用英文描述了對應字元的性質。名稱只由大寫拉丁字母AZ),阿拉伯數字09),連字元(-) 和空格這些ASCII字元組成;其中連字元和空格不會連續出現,且不會位於名稱的開頭和結尾。例如,中文句號 U+3002 的名稱是IDEOGRAPHIC FULL STOP中日韓統一表意文字 U+6F22 的名稱是CJK UNIFIED IDEOGRAPH-6F22

用於排版的空格等字元同樣有自己的名稱,如 U+00A0   的名稱是NO-BREAK SPACE。但並非所有碼位都有相應的名稱;控制字元私人使用區(PUA)碼位、代理對(Surrogates)、非字元碼位(Non-characters)、保留碼位和未分配碼位等並沒有對應的名稱。為了便於辨識這些碼位,Unicode為這些碼位分配了標籤(Code Point Labels)[4];標籤的形式通常是包含在尖括號中的小寫英文描述,以避免與名稱相混淆,例如換行符的碼位和標籤分別是 U+000A <control-000A>

自Unicode 2.0版本起,已發佈的碼位名稱將永遠保持不變。若名稱當中出現了拼寫錯誤等情形,更正後的新名稱被作為字元別名(Name Alias)分配給這個碼位。別名同樣是獨一無二的,不允許與其他字元的名稱或別名相同。

除了上面這些標準化的名稱以外,字元還可以有多條非正式名稱。這些非正式名稱往往取自字元的常用稱呼,起到補充說明的作用,不保證唯一性。

區段

編輯

區段(Block)指的是碼位所屬的範圍,通常用於組織碼位的分配方式。區段會被給予唯一的名稱,且區段與區段間不會重疊。通常一個最小的區段至少包含16個碼位。

通用類別

編輯

每個Unicode碼位都屬於某個通用類別(General Category),即便是未分配的碼位也不例外[5]

參考文獻

編輯
  1. ^ The Unicode Consortium. 3.5. The Unicode Standard (pdf) 11.0. Mountain View, CA. 2018-06: 95 [2018-07-04]. ISBN 978-1-936213-19-1 (英語). D19 Property: A named attribute of an entity in the Unicode Standard, associated with a defined set of values. 
  2. ^ The Unicode Standard, Version 11.0, Chapter 3: Conformance
  3. ^ UAX #44: Properties
  4. ^ UAX #44: Code Point Labels
  5. ^ UAX #44: General Category Values