other languages
other sections
UNICODE(7) | Linux Programmer's Manual | UNICODE(7) |
NAME¶
Unicode - 16 位統一超級字符集描述 (DESCRIPTION)¶
國際標準 ISO 10646 定義了 通用字符集 (Universal Character Set, UCS). UCS 包含所有別的字符集標準裏的字符,並且保証了 互換相容性 (round-trip compatibility), 也就是說,當一個字符串在 UCS 和任何別的字符集之間轉換時, 轉換表可以保証不會有信息丟失現象發生.組合字符 (COMBINING CHARACTERS)¶
一些 UCS 編碼被分配給了 組合字符(combining characters). 這樣的情形有點類似於打字機上的重音鍵. 一個組合字符只是 給前面的字符添加一個重音. 在 UCS 裏最重要的重音字符都有他們自己的編碼, 不過, 組合字符機制允許給任一字符添加重音和其他的可識別記號. 組合字符總是跟在那些他們所修飾的字符後面. 例如,德語符號 Umlaut-A (帶分音符的大寫拉丁字母 A)既可以表示為 UCS 編碼 0x00c4, 也可以 用一個正常的"大寫拉丁字母 A"後面跟一個"組合分音符號": 0x0041 0x0308 來表示.實現級別 (IMPLEMENTATION LEVELS)¶
由於不是所有系統都支持像組合字符這樣的高級機制, ISO 10646 指明了 UCS 的三種實現級別:- 級別 1 (Level 1)
- 不支持組合字符和 Hangul Jamo 字符(朝鮮語的一種更復 雜的專用的編碼, Hangul 音節編碼成兩或三個亞字符).
- 級別 2 (Level 2)
- 類似於級別1, 卻在一些語言裏面也支持一些組合字符. (比如. Hebrew, Arabic, Devangari, Bengali, Gurmukhi, Gujarati, Oriya, Tamil, Telugo, Kannada, Malayalam, Thai 和 Lao).
- 級別 3 (Level 3)
- 支持所有 UCS 字符.
LINUX 下的 UNICODE (UNICODE UNDER LINUX)¶
在 Linux 下, 為了降低組合字符的實現復雜性, 目前只包括了執 行級別 1 下的 BMP. 更高的執行級別更適合於專門的字處理格式, 而不是一個普通的系統字符集. 在 linux 下 C 的類型 wchar_t 是一個 有符號位的 32 位整型並且其值解釋為 UCS4 編碼.私有區 (PRIVATE AREA)¶
在 BMP 裏, 0xe000 到 0xf8ff 的范圍被標準保留做私用因而永遠不會 被分配給任何字符. 對於 Linux 社區, 該私有區被再細分為可以被任何終端使用者 獨立使用的 0xe000 到 0xefff 的范圍, 以及從 0xf000 到 0xf8ff 給所有 linux 使用者所共用的 linux 區.H. Peter Anvin(<Peter.Anvin@linux.org>, Yggdrasil Computing,Inc) 現在維護登記分配到 linux 區的字符. 該區包括一些 Unicode 中缺少的 DEC VT100 的圖形字符, 這使控制台 的字型緩沖區可以直接獲得這些字符, 該區還包括一些像 Klingon 這樣的古老語言所使用的字符.文獻 (LITERATURE)¶
- *
- Information technology - Universal Multiple-Octet Coded
Character Set (UCS) - Part 1: Architecture and Basic Multilingual Plane.
International Standard ISO 10646-1, International Organization for
Standardization, Geneva, 1993.
- *
- The Unicode Standard - Worldwide Character Encoding Version
1.0. The Unicode Consortium, Addison-Wesley, Reading, MA, 1991.
- *
- S. Harbison, G. Steele. C - A Reference Manual. Fourth
edition, Prentice Hall, Englewood Cliffs, 1995, ISBN 0-13-326224-3.
缺憾 (BUGS)¶
在寫這個手冊頁的時候,linux 對 UCS 的 C 語言庫支持遠未完成.作者 (AUTHOR)¶
Markus Kuhn <mskuhn@cip.informatik.uni-erlangen.de>又見(SEE ALSO)¶
utf-8(7), http://www.linuxforum.net/books/UTF-8-Unicode.html[中文版維護人]¶
mapping <mapping@263.net>[中文版最新更新]¶
2000/11/06《中國linux論壇man手冊頁翻譯計劃》:¶
http://cmpp.linuxforum.net1995-12-27 | Linux |