175 lines
6.9 KiB
ReStructuredText
175 lines
6.9 KiB
ReStructuredText
|
.. SPDX-License-Identifier: GPL-2.0
|
|||
|
|
|||
|
.. include:: ../disclaimer-zh_TW.rst
|
|||
|
|
|||
|
:Original: Documentation/admin-guide/unicode.rst
|
|||
|
|
|||
|
:譯者:
|
|||
|
|
|||
|
吳想成 Wu XiangCheng <bobwxc@email.cn>
|
|||
|
胡皓文 Hu Haowen <src.res@email.cn>
|
|||
|
|
|||
|
Unicode(統一碼)支持
|
|||
|
======================
|
|||
|
|
|||
|
(英文版)上次更新:2005-01-17,版本號 1.4
|
|||
|
|
|||
|
此文檔由H. Peter Anvin <unicode@lanana.org>管理,是Linux註冊名稱與編號管理局
|
|||
|
(Linux Assigned Names And Numbers Authority,LANANA)項目的一部分。
|
|||
|
現行版本請見:
|
|||
|
|
|||
|
http://www.lanana.org/docs/unicode/admin-guide/unicode.rst
|
|||
|
|
|||
|
簡介
|
|||
|
-----
|
|||
|
|
|||
|
Linux內核代碼已被重寫以使用Unicode來將字符映射到字體。下載一個Unicode到字體
|
|||
|
(Unicode-to-font)表,八位字符集與UTF-8模式都將改用此字體來顯示。
|
|||
|
|
|||
|
這微妙地改變了八位字符表的語義。現在的四個字符表是:
|
|||
|
|
|||
|
=============== =============================== ================
|
|||
|
映射代號 映射名稱 Escape代碼 (G0)
|
|||
|
=============== =============================== ================
|
|||
|
LAT1_MAP Latin-1 (ISO 8859-1) ESC ( B
|
|||
|
GRAF_MAP DEC VT100 pseudographics ESC ( 0
|
|||
|
IBMPC_MAP IBM code page 437 ESC ( U
|
|||
|
USER_MAP User defined ESC ( K
|
|||
|
=============== =============================== ================
|
|||
|
|
|||
|
特別是 ESC ( U 不再是「直通字體」,因爲字體可能與IBM字符集完全不同。
|
|||
|
例如,即使加載了一個Latin-1字體,也允許使用塊圖形(block graphics)。
|
|||
|
|
|||
|
請注意,儘管這些代碼與ISO 2022類似,但這些代碼及其用途都與ISO 2022不匹配;
|
|||
|
Linux有兩個八位代碼(G0和G1),而ISO 2022有四個七位代碼(G0-G3)。
|
|||
|
|
|||
|
根據Unicode標準/ISO 10646,U+F000到U+F8FF被保留用於作業系統範圍內的分配
|
|||
|
(Unicode標準將其稱爲「團體區域(Corporate Zone)」,因爲這對於Linux是不準確
|
|||
|
的,所以我們稱之爲「Linux區域」)。選擇U+F000作爲起點,因爲它允許直接映射
|
|||
|
區域以2的大倍數開始(以防需要1024或2048個字符的字體)。這就留下U+E000到
|
|||
|
U+EFFF作爲最終用戶區。
|
|||
|
|
|||
|
[v1.2]:Unicodes範圍從U+F000到U+F7FF已經被硬編碼爲直接映射到加載的字體,
|
|||
|
繞過了翻譯表。用戶定義的映射現在默認爲U+F000到U+F0FF,模擬前述行爲。實際上,
|
|||
|
此範圍可能較短;例如,vgacon只能處理256字符(U+F000..U+F0FF)或512字符
|
|||
|
(U+F000..U+F1FF)字體。
|
|||
|
|
|||
|
Linux 區域中定義的實際字符
|
|||
|
---------------------------
|
|||
|
|
|||
|
此外,還定義了Unicode 1.1.4中不存在的以下字符;這些字符由DEC VT圖形映射使用。
|
|||
|
[v1.2]此用法已過時,不應再使用;請參見下文。
|
|||
|
|
|||
|
====== ======================================
|
|||
|
U+F800 DEC VT GRAPHICS HORIZONTAL LINE SCAN 1
|
|||
|
U+F801 DEC VT GRAPHICS HORIZONTAL LINE SCAN 3
|
|||
|
U+F803 DEC VT GRAPHICS HORIZONTAL LINE SCAN 7
|
|||
|
U+F804 DEC VT GRAPHICS HORIZONTAL LINE SCAN 9
|
|||
|
====== ======================================
|
|||
|
|
|||
|
DEC VT220使用6x10字符矩陣,這些字符在DEC VT圖形字符集中形成一個平滑的過渡。
|
|||
|
我省略了掃描5行,因爲它也被用作塊圖形字符,因此被編碼爲U+2500 FORMS LIGHT
|
|||
|
HORIZONTAL。
|
|||
|
|
|||
|
[v1.3]:這些字符已正式添加到Unicode 3.2.0中;它們在U+23BA、U+23BB、U+23BC、
|
|||
|
U+23BD處添加。Linux現在使用新值。
|
|||
|
|
|||
|
[v1.2]:添加了以下字符來表示常見的鍵盤符號,這些符號不太可能被添加到Unicode
|
|||
|
中,因爲它們非常討厭地取決於特定供應商。當然,這是糟糕設計的一個好例子。
|
|||
|
|
|||
|
====== ======================================
|
|||
|
U+F810 KEYBOARD SYMBOL FLYING FLAG
|
|||
|
U+F811 KEYBOARD SYMBOL PULLDOWN MENU
|
|||
|
U+F812 KEYBOARD SYMBOL OPEN APPLE
|
|||
|
U+F813 KEYBOARD SYMBOL SOLID APPLE
|
|||
|
====== ======================================
|
|||
|
|
|||
|
克林貢(Klingon)語支持
|
|||
|
------------------------
|
|||
|
|
|||
|
1996年,Linux是世界上第一個添加對人工語言克林貢支持的作業系統,克林貢是由
|
|||
|
Marc Okrand爲《星際迷航》電視連續劇創造的。這種編碼後來被徵募Unicode註冊表
|
|||
|
(ConScript Unicode Registry,CSUR)採用,並建議(但最終被拒絕)納入Unicode
|
|||
|
平面一。不過,它仍然是Linux區域中的Linux/CSUR私有分配。
|
|||
|
|
|||
|
這種編碼已經得到克林貢語言研究所(Klingon Language Institute)的認可。
|
|||
|
有關更多信息,請聯繫他們:
|
|||
|
|
|||
|
http://www.kli.org/
|
|||
|
|
|||
|
由於Linux CZ開頭部分的字符大多是dingbats/symbols/forms類型,而且這是一種
|
|||
|
語言,因此根據標準Unicode慣例,我將它放置在16單元的邊界上。
|
|||
|
|
|||
|
.. note::
|
|||
|
|
|||
|
這個範圍現在由徵募Unicode註冊表正式管理。規範性引用文件爲:
|
|||
|
|
|||
|
https://www.evertype.com/standards/csur/klingon.html
|
|||
|
|
|||
|
克林貢語有一個26個字符的字母表,一個10位數的位置數字書寫系統,從左到右
|
|||
|
,從上到下書寫。
|
|||
|
|
|||
|
克林貢字母的幾種字形已經被提出。但是由於這組符號看起來始終是一致的,只有實際
|
|||
|
的形狀不同,因此按照標準Unicode慣例,這些差異被認爲是字體變體。
|
|||
|
|
|||
|
====== =======================================================
|
|||
|
U+F8D0 KLINGON LETTER A
|
|||
|
U+F8D1 KLINGON LETTER B
|
|||
|
U+F8D2 KLINGON LETTER CH
|
|||
|
U+F8D3 KLINGON LETTER D
|
|||
|
U+F8D4 KLINGON LETTER E
|
|||
|
U+F8D5 KLINGON LETTER GH
|
|||
|
U+F8D6 KLINGON LETTER H
|
|||
|
U+F8D7 KLINGON LETTER I
|
|||
|
U+F8D8 KLINGON LETTER J
|
|||
|
U+F8D9 KLINGON LETTER L
|
|||
|
U+F8DA KLINGON LETTER M
|
|||
|
U+F8DB KLINGON LETTER N
|
|||
|
U+F8DC KLINGON LETTER NG
|
|||
|
U+F8DD KLINGON LETTER O
|
|||
|
U+F8DE KLINGON LETTER P
|
|||
|
U+F8DF KLINGON LETTER Q
|
|||
|
- Written <q> in standard Okrand Latin transliteration
|
|||
|
U+F8E0 KLINGON LETTER QH
|
|||
|
- Written <Q> in standard Okrand Latin transliteration
|
|||
|
U+F8E1 KLINGON LETTER R
|
|||
|
U+F8E2 KLINGON LETTER S
|
|||
|
U+F8E3 KLINGON LETTER T
|
|||
|
U+F8E4 KLINGON LETTER TLH
|
|||
|
U+F8E5 KLINGON LETTER U
|
|||
|
U+F8E6 KLINGON LETTER V
|
|||
|
U+F8E7 KLINGON LETTER W
|
|||
|
U+F8E8 KLINGON LETTER Y
|
|||
|
U+F8E9 KLINGON LETTER GLOTTAL STOP
|
|||
|
|
|||
|
U+F8F0 KLINGON DIGIT ZERO
|
|||
|
U+F8F1 KLINGON DIGIT ONE
|
|||
|
U+F8F2 KLINGON DIGIT TWO
|
|||
|
U+F8F3 KLINGON DIGIT THREE
|
|||
|
U+F8F4 KLINGON DIGIT FOUR
|
|||
|
U+F8F5 KLINGON DIGIT FIVE
|
|||
|
U+F8F6 KLINGON DIGIT SIX
|
|||
|
U+F8F7 KLINGON DIGIT SEVEN
|
|||
|
U+F8F8 KLINGON DIGIT EIGHT
|
|||
|
U+F8F9 KLINGON DIGIT NINE
|
|||
|
|
|||
|
U+F8FD KLINGON COMMA
|
|||
|
U+F8FE KLINGON FULL STOP
|
|||
|
U+F8FF KLINGON SYMBOL FOR EMPIRE
|
|||
|
====== =======================================================
|
|||
|
|
|||
|
其他虛構和人工字母
|
|||
|
-------------------
|
|||
|
|
|||
|
自從分配了克林貢Linux Unicode塊之後,John Cowan <jcowan@reutershealth.com>
|
|||
|
和 Michael Everson <everson@evertype.com> 建立了一個虛構和人工字母的註冊表。
|
|||
|
徵募Unicode註冊表請訪問:
|
|||
|
|
|||
|
https://www.evertype.com/standards/csur/
|
|||
|
|
|||
|
所使用的範圍位於最終用戶區域的低端,因此無法進行規範化分配,但建議希望對虛構
|
|||
|
字母進行編碼的人員使用這些代碼,以實現互操作性。對於克林貢語,CSUR採用了Linux
|
|||
|
編碼。CSUR的人正在推動將Tengwar和Cirth添加到Unicode平面一;將克林貢添加到
|
|||
|
Unicode平面一被拒絕,因此上述編碼仍然是官方的。
|
|||
|
|