Provided by:
manpages-ja_0.5.0.0.20060115-1_all 
LINUX UNICODE
GNU/Linux では、C 言語の型 wchar_t は符号付 32 ビット整数型である。
その値は C ライブラリにより (すべてのロケールにおいて) 常に UCS
コードの値として解釈される。 これを GNU C
ライブラリがアプリケーションに知らせるための規約として、 定数
__STDC_ISO_10646__ を定義する。 これは ISO C 99 規格で指定されている。
ASCII 互換の UTF-8
マルチバイトエンコードでは、入出力ストリーム・端末通信・ プレーンテ-
ストファイル・ファイル名・環曲竸瑤砲いて、 UCS/Unicode を ASCII
のように使うことがでい襦 UTF-8 を文字エンコードとして使うことを
全てのアプリケーションに知らせるためには、 ("LANG=en_GB.UTF-8"
のように) 環曲竸瑤鮖箸辰禿切な (locale)
を選択しなければならない。
nl_langinfo(CODESET) 関数は選択されたエンコードの名前を返す。 内部的な
wchar_t 文字や文字列をシステム文字列エンコードに変換 (逆変換)
するのに使われる wctomb(3) や mbsrtowcs(3)、 さらには wcwidth(3)
といったライブラリ関数は、 文字出力でどれだけカーソルが進んだか (0-2)
を返す。
一般的に言うと、Linux では現在のところ BMP の level 1
実装のみを使うべい任△襦 ある言語の文字 (とくにタイ文字) では、
ベース文字当たり 2 つまでの合成文字を使うことが UTF-8
端末エミュレータと ISO 10646 フォント (level 2) でサポートされている。
しかし一般的に言えば、もし可能ならばあらかじめ合成した文字を使うべ-
である (Unicode では、これを Normalization Form C
() という)。
ア
BMP の 0xe000 〜 0xf8ff の範囲は、規格ではいかなる文字も割り当てず、
私的な使用のために予約されている。 Linux コミュニティでは、
このプライベート・エリアをさらに細かく分割して使用する。 0xe000 〜
0xefff の範囲はエンド・ユーザーが個々に使用することがでい襦 0xf000 〜
0xf8ff の範囲は Linux Zone で 全ての Linux ユーザーで共通に使用する。
Linux Zone への文字割り当ての登録は、 現在 H. Peter Anvin
<Peter.Anvin@linux.org> によって管理されている。
献
* Information technology -- Universal Multiple-Octet Coded Character
Set (UCS) -- Part 1: Architecture and Basic Multilingual Plane.
International Standard ISO/IEC 10646-1, International Organization
for Standardization, Geneva, 2000.
これは UCS の公式な仕様である。 http://www.iso.ch/ から注文でい CD-
ROM で PDF ファイルとして入手でい襦
* The Unicode Standard, Version 3.0. The Unicode Consortium, Addison-
Wesley, Reading, MA, 2000, ISBN 0-201-61633-5.
* S. Harbison, G. Steele. C: A Reference Manual. Fourth edition,
Prentice Hall, Englewood Cliffs, 1995, ISBN 0-13-326224-3.
C プログラム言語についてのとても良い参考書である。
第四版では、ワイド文字やマルチバイト文字エンコードを扱うための
多くの新しい C ライブラリ関数が 加えられた ISO C 90 規格の 1994
Amendment 1 をカバーしている。
しかし、ワイド文字やマルチバイト文字のサポートを 更に改善した ISO C
99 は、まだカバーしていない。
* Unicode 技術レポート。
http://www.unicode.org/unicode/reports/
* Markus Kuhn: Unix/Linux のための UTF-8 と Unicode の FAQ。
http://www.cl.cam.ac.uk/~mgk25/unicode.html
linux-utf8 メーリングリストを購読するための情報がある。 Linux で
Unicode を使う場合のアドバイスを探すのに一番良い場所である。
* Bruno Haible: Unicode HOWTO.
ftp://ftp.ilog.fr/pub/Users/haible/utf8/Unicode-HOWTO.html
グ
このマニュアル・ページを最後に改訂した時点で、 GNU C ライブラリの UTF-8
サポートは完成している。 XFree86 によるサポートは進行中である。 UTF-8
ロケールで快適に使えるアプリケーション (多くの楊召淵┘妊タ)
の作成は、まだ進行中である。 Linux での UCS サポートでは通常 CJK の 2
ワイド文字が提供される。
単純な重ね打ちによる合成文字が提供される場合もある。
しかし、右から左へ書く文字やヘブライ文字・アラビア文字・インド語系文字などの
合字の置ご垢┐鯢要とする文字はサポートされていない。
現在、これらの文字は洗練されたテゥ好班漸茱┘鵐献鵑鯣えた GUI
アプリケーション (HTML ビューア・ワードプロセッサ) でのみ
サポートされている。
者
Markus Kuhn <mgk25@cl.cam.ac.uk>
目
setlocale(3), charsets(7), utf-8(7)