Unicode 規格は、コンピュータ処理用のテキスト表現に使用される汎用文字コード化規格です。Unicode 規格は、国際規格 ISO/IEC 10646-1:1999 と完全に互換性があり、ISO/IEC 10646 と同一の文字とエンコーディングポイントを含んでいます。この Unicode 規格によって、文字とその使い方に関する追加情報が提供されます。また、Unicode に準拠した実装は、ISO/IEC 10646 にも準拠します。
Unicode によって、多言語のプレーンテキストを矛盾なくコード化でき、国際的にテキストファイルの交換が困難であった問題に秩序をもたらします。多言語のテキストを取り扱うコンピュータユーザー、オフィスワーカー、言語学者、研究員、科学者などにとっては、Unicode 規格によって仕事が非常に単純化されることがわかります。また、数学記号やその他の技術文字を常に使用する数学者と技術者にとっても、Unicode 規格は価値があります。
Unicode の設計は ASCII の単純さと整合性に基づいていますが、ラテンアルファベットしかコード化できない ASCII の限界を超えています。Unicode 規格によって、世界の文字言語で使用されているすべての文字をコード化できます。Unicode 規格は、 65,000 文字以上のコードポイントを提供する 16 ビットのコード化を使用しています。文字コーディングを単純で効果的なものにしておくため、Unicode 規格は各文字に一意の 16 ビット値を割り当て、複雑なモードやエスケープコードを使いません。65,000 文字は、世界の主要な言語で使用されている数千の文字の多くをコード化するのに十分なものですが、Unicode 規格と ISO 10646 には、エスケープコードを使わずに 100 万文字以上をコード化できる UTF-16 と呼ばれる拡張機構が用意されています。これは、世界の歴史上のすべての筆記文字も含めて、既知のすべての文字をコード化できることになります。UTF-16 によって、ちょうど 16 x 65536 の追加コードポイントが可能となり、さらに文字を表すために 2 バイトの構成要素を使用します。しかし、これらの 16 x 65536 文字には、1 文字ごとに 2 個の 2 バイトの構成要素 (合計 4 バイト) が必要となります。UTF-16 の詳細については、Unicode Consortium から出ている「The Unicode Standard, Version 2.0」の section C.3 か、または「ISO/IEC 10646-1:1999, Information Technology-Universal Multiple-Octet Coded Character Set (UCS) - Part 1: Architecture and Basic Multilingual Plane」の Annex C を参照してください。
en_US.UTF-8 ロケールは、Solaris 8 製品では重要な Unicode ロケールです。このロケールは、UTF-8 をコードセットとして使用することで、マルチスクリプト処理能力をサポートし実現します。このロケールは、複数のスクリプトでテキストを入出力できます。これは、Solaris オペレーティング環境で最初にこの機能を持ったロケールでした。
UTF-8 は、1992 年の X/Open-Uniform Joint Internationalization Working Group (XoJIG) によって公式化され、1996 年に ISO と IEC によって ISO/IEC 10646-1:1993 の修正第 2 条として承認された Unicode/ISO/IEC 10646-1 のファイルシステム安全汎用文字セット変換形式です。この規格は、Unicode Consortium、ISO (国際標準化機構)、IEC (国際電気標準会議) によって、Unicode 2.0 および ISO/IEC 10646-1 として採用されました。
en_US.UTF-8 は、Unicode 3.0 および ISO/IEC 10646-1 で定義されている、各コードポイント値の計算をサポートしています。Solaris 8 では、言語スクリプトのサポートは全ヨーロッパロケールだけに限らず、韓国語、繁体字中国語、簡体字中国語、日本語などのアジア言語のスクリプトが含まれます。フォント資源の節約のため、Solaris 8 ソフトウェアには次の文字セットの文字グリフのみ含まれています。
ISO 8859-7 (ギリシャ語)
ISO 8859-8 (ヘブライ語)
TIS 620.2533 (さらに多くの表示形式の文字グリフを含むタイ語)
ISO 8859-15 (ユーロ記号を含む多くの西ヨーロッパ言語)
GB 2312-1980 (簡体字中国語)
Big5 (繁体字中国語)
JIS X0201-1976, JIS X0208-1983 (日本語)
KS C 5601-1992 Annex 3 (韓国語)
対応するグリフが en_US.UTF-8 ロケールに含まれていない文字をユーザーが表示させると、ロケールが、代わりに「No-glyph」というグリフを以下の例のように表示します。
Solaris 8 環境より、このロケールはコアクラスタ以外のすべてのクラスタで使用できるようになりました。
まったく同じレベルの en_US.UTF-8 ロケールのサポートが、64 ビットと 32 ビットの Solaris システムの両方に用意されています。
Motif および Solaris CDE のデスクトップアプリケーションとライブラリは、en_US.UTF-8 ロケールをサポートしています。OpenWindows、XView、および OPENLOOK の DeskSet アプリケーションとライブラリでは en_US.UTF-8 ロケールをサポートしていません。
Solaris CDE では、Xm ツールキットを使用する国際化アプリケーションで、各ロケールの文字の入力を行う機能を提供しています。XmText[Field] ウィジェットは各ロケールの入力メソッドのインタフェースとなります。幾つかの言語環境において、テキストを右から左、上から下などの方向に書くため、入力方式の国際化がされています。同一のアプリケーションにおいて、異なった入力方式に適用させる複数のフォントの使用が可能です。
プリエディット領域は確定前の文字列が表示されます。これは、次の 4 つのモードで行うことができます。
OffTheSpot
OverTheSpot (デフォルト)
Root
None
OffTheSpot モードでは、場所はメインウィンドウの下のステータス領域の右側です。OverTheSpot モードでは、プリエディット領域はカーソル位置です。Root モードではプリエディットおよびステータス領域はクライアントのウィンドウと分けられます。
Solaris 8 環境では、Unicode ロケール用の最新のマルチスクリプト入力方式の他に、簡体字/繁体字の中国語、日本語、韓国語用の現地製の入力方式があります。この節では、選択された入力方式、それらの使用方法、それらの切替方法について説明します。
en_US.UTF-8 ロケールは、複数スクリプトをサポートしています。en_US.UTF-8 ロケールには次の合計 12 個の入力方式が含まれています。
英語 / ヨーロッパ言語
キリル文字
ギリシャ文字
アラビア語
ヘブライ語
タイ語
Unicode の 16 進法と 8 進法の入力方式
表検索入力方式
日本語
韓国語
簡体字中国語
繁体字中国語
他の入力方式に切り替えるには、入力モードごとの入力方式切替 Compose キーシーケンスをタイプするか、またはアプリケーションのステータス領域でマウスの左ボタンを押して入力モード選択ウィンドウを開き、以下のように一覧表示された入力方式から選択します。
英語/ヨーロッパ言語入力モードでは、英語のアルファベットだけではなく、ヨーロッパ言語で使用される発音符号の付いた文字や特殊文字も入力できます。
この入力モードはすべてのアプリケーションのデフォルトのモードです。入力モードは、GUI アプリケーションの左下隅に表示されます。
Latin-1、Latin-2、Latin-4、Latin-5、Latin-9 の発音符号付きの文字や特殊文字を入力するには、次の例のように Compose シーケンスを入力する必要があります。
「A ウムラウト」の場合は、Compose キー、A、" の順に押します。
「+-」 の場合は、Compose キー、+、- の順に押します。
Compose キーがないキーボードの場合は、代わりに Control キーと Shift キーを押しながら T を押します。
ユーロの通貨記号 (Unicode の U+20AC) を入力するには、次のいずれかのシーケンスを使用します。
AltGraph キーを押しながら e を押します。
AltGraph キーを押しながら 4 を押します。
AltGraph キーを押しながら 5 を押します。
キーを同時に押すことに注意してください。AltGraph キーがないキーボードの場合は、代わりに Alt キーを使用します。
次の表に、Solaris オペレーティング環境 で Latin-1、Latin-2、Latin-4、Latin-5、Latin-9 の文字の入力によく使用される Compose シーケンスを示します。
以下のシーケンスでは、最初に Compose キーを押してから、離します。
次の表に、Latin-1 の Compose シーケンスを示します。
表 4-1 Latin-1 の一般的な Compose シーケンス
Compose キー |
説明 |
|
---|---|---|
スペース |
スペース |
スペース (space) |
! |
! |
逆感嘆符 (Inverted exclamation) |
c |
/ |
セント記号 (Cents) |
L |
- |
ポンド記号 (Pounds) |
x |
o |
不特定通貨記号 (Currency symbol) |
Y |
- |
円記号 (Yen) |
| |
| |
破断線 (Broken bar) |
" |
" |
ウムラウトまたはダイエレシス (Umlaut/diaeresis) |
c |
o |
著作権表示記号 (Copyright) |
C |
o |
著作権表示記号 (Copyright) |
- |
a |
女性序数標識 (Feminine ordinal) |
< |
< |
左引用符 (Left guillemet) |
- |
, |
否定 (Not sign) |
- |
- |
ソフトハイフン (Soft hyphen) |
R |
O |
登録商標記号 (Registered) |
- |
^ |
長音記号 (Macron) |
o |
o |
度 (Degree) |
+ |
- |
プラスマイナス (Plus-minus) |
s |
2 |
上付きの 2 (Superscript 2) |
s |
3 |
上付きの 3 (Superscript 3) |
' |
" |
プライム符号またはアキュートアクセント (Prime/acute) |
/ |
u |
ミューまたはマイクロ (Mu/micro) |
P |
! |
段落記号 (Pilcro/paragraph) |
. |
. |
中点 (Middle dot) |
, |
, |
セディラ (Cedilla) |
s |
1 |
上付きの 1 (Superscript 1) |
_ |
o |
男性序数標識 (Masculine ordinal) |
> |
> |
右引用符 (Right guillemet) |
1 |
4 |
4 分の 1 (Quarter) |
1 |
2 |
2 分の 1 (Half) |
3 |
4 |
4 分の 3 (Three quarters) |
? |
? |
逆疑問符 (Inverted question) |
A |
` |
グレーブアクセント付き A (A grave) |
A |
' |
アキュートアクセント付き A (A acute) |
A |
^ |
サーカムフレクトアクセント付き A (A circumflex) |
A |
‾ |
チルド付き A (A tilde) |
A |
" |
A ウムラウト (A umlaut) |
A |
* |
オングストローム付き A (A angstrom) |
A |
E |
AE リゲチャ (AE ligature) |
C |
, |
セディラ付き C (C cedilla) |
E |
` |
グレーブアクセント付き E (E grave) |
E |
' |
アキュートアクセント付き E (E acute) |
E |
^ |
サーカムフレクトアクセント付き E (E circumflex) |
E |
" |
E ウムラウト (E umlaut) |
I |
` |
グレーブアクセント付き I (I grave) |
I |
' |
アキュートアクセント付き I (I acute) |
I |
^ |
サーカムフレクトアクセント付き I (I circumflex) |
I |
" |
I ウムラウト (I umlaut) |
N |
‾ |
チルド付き N (N tilde) |
O |
` |
グレーブアクセント付き O (O grave) |
O |
' |
アキュートアクセント付き O (O acute) |
O |
^ |
サーカムフレクトアクセント付き O (O circumflex) |
O |
‾ |
チルド付き O (O tilde) |
O |
" |
O ウムラウト (O umlaut) |
x |
x |
乗算記号 (Multiply) |
O |
/ |
斜線付き O (O slash) |
U |
` |
グレーブアクセント付き U (U grave) |
U |
' |
アキュートアクセント付き U (U acute) |
U |
^ |
サーカムフレクトアクセント付き U (U circumflex) |
U |
" |
U ウムラウト (U umlaut) |
Y |
' |
アキュートアクセント付き Y (Y acute) |
T |
H |
アイスランド語ソーン (Thorn) |
s |
s |
ドイツ語エスツェット (Eszett/digraph s) |
a |
` |
グレーブアクセント付き a (a grave) |
a |
' |
アキュートアクセント付き a (a acute) |
a |
^ |
サーカムフレクトアクセント付き a (a circumflex) |
a |
‾ |
チルド付き a (a tilde) |
a |
" |
a ウムラウト (a umlaut) |
a |
* |
オングストローム付き a (a angstrom) |
a |
e |
ae リゲチャ (ae ligature) |
c |
, |
セディラ付きの c (c cedilla) |
e |
` |
グレーブアクセント付き e (e grave) |
e |
' |
アキュートアクセント付き e (e acute) |
e |
^ |
サーカムフレクトアクセント付き e (e circumflex) |
e |
" |
e ウムラウト (e umlaut) |
i |
` |
グレーブアクセント付き i (i grave) |
i |
' |
アキュートアクセント付き i (i acute) |
i |
^ |
サーカムフレクトアクセント付き i (i circumflex) |
i |
" |
i ウムラウト (i umlaut) |
d |
- |
エズ (eth) |
D |
- |
キャピタルエズ (Capital eth) |
n |
‾ |
チルド付き n (n tilde) |
o |
` |
グレーブアクセント付き o (o grave) |
o |
' |
アキュートアクセント付き o (o acute) |
o |
^ |
サーカムフレクトアクセント付き o (o circumflex) |
o |
‾ |
チルド付き o (o tilde) |
o |
" |
o ウムラウト (o umlaut) |
- |
: |
除算記号 (Divide) |
o |
/ |
斜線付き o (o slash) |
u |
` |
グレーブアクセント付き u (u grave) |
u |
' |
アキュートアクセント付き u (u acute) |
u |
^ |
サーカムフレクトアクセント付き u (u circumflex) |
u |
" |
u ウムラウト (u umlaut) |
y |
' |
アキュートアクセント付き y (y acute) |
t |
h |
アイスランド語ソーン (thorn) |
y |
" |
y ウムラウト (y umlaut) |
次の表に、Latin-2 と Latin-4 の一般的な Compose シーケンスを示します。
表 4-2 Latin-2 の一般的な Compose シーケンス
最初に押すキー |
2 番目に押すキー |
結果 |
---|---|---|
a |
' |
ogonek 叩 |
u |
' ' |
短音記号 端 |
v |
' ' |
caron |
" |
' ' |
二重揚音アクセント 即 |
A |
a |
ogonek の付いた A |
A |
u |
短音記号の付いた A |
C |
' |
揚音アクセントの付いた C |
C |
v |
caron の付いた C |
D |
v |
caron の付いた D |
- |
D |
ストロークの付いた D |
E |
v |
caron の付いた E |
E |
a |
ogonek の付いた E |
L |
' |
揚音アクセントの付いた L |
L |
- |
ストロークの付いた L |
L |
> |
caron の付いた L |
N |
' |
揚音アクセントの付いた N |
N |
v |
caron の付いた N |
O |
> |
二重揚音アクセントの付いた O |
S |
' |
揚音アクセントの付いた S |
S |
v |
caron の付いた S |
S |
, |
セディラ記号の付いた S |
R |
' |
揚音アクセントの付いた R |
R |
v |
caron の付いた R |
T |
v |
caron の付いた T |
T |
, |
セディラ記号の付いた T |
U |
* |
丸の付いた U |
U |
> |
二重揚音アクセントの付いた U |
Z |
' |
揚音アクセントの付いた Z |
Z |
v |
caron の付いた Z |
Z |
. |
ドットの付いた Z |
k |
k |
kra |
A |
_ |
長音記号の付いた A |
E |
_ |
長音記号の付いた E |
E |
. |
ドットの付いた E |
G |
, |
セディラ記号の付いた G |
I |
_ |
長音記号の付いた I |
I |
‾ |
チルドの付いた I |
I |
a |
ogonek の付いた I |
K |
, |
セディラ記号の付いた K |
L |
, |
セディラ記号の付いた L |
N |
, |
セディラ記号の付いた N |
O |
_ |
長音記号の付いた O |
R |
, |
セディラ記号の付いた R |
T |
| |
ストロークの付いた T |
U |
‾ |
チルドの付いた U |
U |
a |
ogonek の付いた U |
U |
_ |
長音記号の付いた U |
N |
N |
エング |
a |
_ |
長音記号の付いた a |
e |
_ |
長音記号の付いた e |
e |
. |
ドットの付いた e |
g |
, |
セディラ記号の付いた g |
i |
_ |
長音記号の付いた i |
i |
‾ |
チルドの付いた i |
i |
a |
ogonek の付いた i |
k |
, |
セディラ記号の付いた k |
l |
, |
セディラ記号の付いた l |
n |
, |
セディラ記号の付いた n |
o |
_ |
長音記号の付いた o |
r |
, |
セディラ記号の付いた r |
t |
| |
ストロークの付いた t |
u |
‾ |
チルドの付いた u |
u |
a |
ogonek の付いた u |
u |
_ |
長音記号の付いた u |
n |
n |
次の表に、Latin-5 の一般的な Compose シーケンスを示します。
表 4-3 Latin-5 の一般的な Compose シーケンス
最初に押すキー |
2 番目に押すキー |
結果 |
---|---|---|
G |
u |
短音記号の付いた G |
I |
. |
ドットの付いた I |
g |
u |
短音記号の付いた g |
i |
. |
他の表で説明された Compose シーケンスは、この表には示されていません。
次の表は、Latin-9 の一般的な Compose シーケンスを示します。
表 4-4 Latin-9 の一般的な Compose シーケンス
最初に押すキー |
2 番目に押すキー |
結果 |
---|---|---|
o |
e |
oe の合字 |
O |
E |
OEの合字 |
Y |
" |
ウムラウトの付いた Y |
キリル文字入力方式に切り替えるには、キーボードで <Compose> <c> <c> と押すか、またはアプリケーションのステータス領域でマウスの左ボタンを押してから入力モード選択ウィンドウで [Cyrillic] を選択します。
入力モードは、GUI アプリケーションの左下隅に表示されます。
キリル文字入力方式に切り替えると、英語またはヨーロッパ言語のテキストを入力できなくなります。英語またはヨーロッパ言語の入力方式に戻すには、キーボードで <Control> + <Space> とタイプするか、またはマウスを使って入力モード選択ウィンドウで [English/European] 入力方式を選択します。ロシア語のキーボードの配置では、次の図のように表示されます。
また、対応する入力モード切替キーシーケンスを入力することで、他の入力モードに切り替えることもできます。
ギリシャ語入力モードに切り替えるには、キーボードで <Compose> <g> <g> と押すか、またはアプリケーションのステータス領域でマウスの左ボタンを押してから入力モード選択ウィンドウで [Greek] を選択します。
入力モードが、GUI アプリケーションの左下隅に表示されます。
ギリシャ語入力モードに切り替えると、英語またはヨーロッパ言語のテキストを入力できなくなります。英語またはヨーロッパ言語の入力方式に戻すには、キーボードから <Control> + <Space> とタイプするか、またはマウスを使って入力モード選択ウィンドウで [English/European] 入力方式を選択します。ギリシャ語のキーボードの配置では、次の図のように表示されます。
アラビア語入力方式に切り替えるには、キーボードで <Compose> <a> <r> とタイプします。入力方式が、GUI アプリケーションの左下隅に表示されます。アラビア語入力方式に切り替えると、英語またはヨーロッパ言語の文字を入力するには、<Control> と <Space> を同時にタイプして、英語またはヨーロッパ言語入力方式に戻る必要があります。
また、キーボードから対応する入力方式切替キーシーケンスをタイプするか、またはマウスを使って入力モード選択ウィンドウで入力方式を選択することによって、他の入力方式に切り替えることもできます。
ヘブライ語入力方式に切り替えるには、キーボードで <Compose> <h> <h> とタイプします。入力方式が、GUI アプリケーションの左下隅に表示されます。また、アプリケーションのステータス領域でマウスの左ボタンを押して、入力モード選択ウィンドウの [Hebrew] を選択することによって、ヘブライ語入力方式に切り替えることもできます。
ヘブライ語入力方式に切り替えると、英語またはヨーロッパ言語の文字を入力するには、英語またはヨーロッパ言語入力方式に戻る必要があります。入力方式を切り替えるには、キーボードから次の入力方式の入力方式切替キーシーケンスをタイプするか、またはマウスを使って入力モード選択ウィンドウで入力方式を選択します。ヘブライ語のキーボード配置を以下の図に示します。
タイ語入力モードに切り替えるには、<Compose> <t> <t> を押します。入力モードが、GUI アプリケーションの左下隅に表示されます。
タイ語入力方式に切り替えると、英語またはヨーロッパ言語の文字を入力するには、英語またはヨーロッパ言語入力方式に戻る必要があります。入力方式を切り替えるには、キーボードから次の入力方式の対応する入力方式切替キーシーケンスをタイプするか、またはマウスを使って入力モード選択ウィンドウで入力方式を選択します。タイ語のキーボード配置を以下の図に示します。
Unicode 16 進法コード入力方式の入力モードに切り替えるには、現在の入力モードから <Compose> <u> <h> とタイプします。また、マウスを使って入力モード選択ウィンドウで [Unicode Hex] を選択することもできます。
8 進法システムにする場合は、現在の入力モードから <Compose> <u> <o> とタイプするか、または入力モード選択ウィンドウで [Unicode Octal] を選択することによって、Unicode 8 進法コード入力方式の入力モードに切り替えることもできます。
この入力モードを使用するには、文字の 16 進数コード値または、8 進数コード値を知っている必要があります。コード値と文字の対応については、『The Unicode Standard, Version 3.0』を参照してください。Unicode 16 進数コード入力モードを使用して、文字を入力するには、4 桁の 16 進数を入力します。たとえば、逆転した疑問符ならば 00a1、ギリシャ文字の小文字のベータならば 03b2、韓国語の KA ならば ac00、カタカナのアならば 30a2、共通の Han 文字ならば 4e58 などです。16 進数に使用する A、B、C、D、E、F は、大文字でも小文字でもかまいません。16 進法の代わりに 8 進法にする場合、0 から 7 までの 8 進法の数字を入力できます。間違えて入力した 16 進数は、<Delete> キーか <Backspace> キーで削除できます。
表検索入力モードに切り替えるには、<Compose> <l> <l> を押します。入力モードは、GUI アプリケーションの左下隅に表示されます。
入力モードをオンにすると、複数の文字グループを表示する検索グループウィンドウが現れます。これらのグループから 1 つ選択すると、そのグループの文字を入力できます。グループを選択すると、そのグループに属する使用可能な Unicode 文字の複数の候補を表示した第 2 の検索ウィンドウが現れます。ポインタを移動してマウスの左ボタンを押すことで、それらの候補の中から任意のものを選択できます。また、各候補を表す左側の文字をクリックして、候補を選択することもできます。
また、<Control> キーと <n> キーを同時に入力すると、次候補のセットが表示されます。同様に、前候補のセットを見るには、<Control> キーと <p> キーを同時に入力します。<n> は「next (次)」を、<p> は「previous (前)」を意味しています。
現在の入力モードを使い終えたら、対応する入力モード切替キーシーケンスをタイプすることで、別の入力モードに切り替えることができます。
日本語入力モードに切り替えるには、キーボードで <Compose> <j> <a> とタイプするか、またはマウスを使って入力モード選択ウィンドウで [Japanese] を選択します。入力方式が、アプリケーションの左下隅に表示されます。以下の図に ATOK12 の日本語入力方式モードを示します。
日本製の日本語入力システムを使用するには、システムに 1 つ以上の日本語ロケールをインストールする必要があります。日本語ロケールをインストールすると、ATOK12、Wnn6、ATOK8、または cs00 のような日本製の日本語入力システムの中から 1 つを使うことができます。ただし、ja_JP.UTF-8 ロケール以外の UTF-8 ロケールで使用できる入力システムは、ATOK12 か cs00 だけです。
日本語入力システムの使用方法の詳細については、『ATOK12 ユーザーズガイド』、『ATOK8 ユーザーズガイド』、『Wnn6 ユーザーズガイド』、『cs00 ユーザーズガイド』を参照してください。
韓国語入力モードに切り替えるには、キーボードで <Compose> <k> <o> とタイプするか、またはマウスを使って入力モード選択ウィンドウで [Kolean] を選択します。入力方式が、アプリケーションの左下隅に表示されます。以下の図に、表音ハングル入力方式を示します。他にも多くの韓国語入力方式が利用可能です。
韓国製の韓国語入力システムを使うには、システムに Ko.UTF-8 ロケールをインストールする必要があります。韓国語入力システムの使い方の詳細については、『Korean Solaris User's Guide』を参照してください。
簡体字中国語入力モードに切り替えるには、キーボードで <Compose> <s> <c> とタイプするか、またはマウスを使って入力モード選択ウィンドウで [S-Chinese] を選択します。入力方式が、アプリケーションの左下隅に表示されます。以下の図に、New Pin Yin 入力方式を示します。他にも多くの簡体字中国語入力方式が利用可能です。
簡体字中国語入力システムを使うには、システムに zh.UTF-8 ロケールをインストールする必要があります。簡体字中国語入力システムの使い方の詳細については、『Simplified Chinese Solaris User's Guide』を参照してください。
繁体字中国語入力モードに切り替えるには、キーボードで <Compose> <t> <c> とタイプするか、またはマウスを使って入力モード選択ウィンドウで [T-Chinese] を選択します。入力方式が、アプリケーションの左下隅に表示されます。以下の図に、TsangChieh 入力方式を示します。他にも多くの繁体字中国語入力方式が利用可能です。
繁体字中国語入力システムを使うには、システムに zh_TW.UTF-8 ロケールをインストールする必要があります。繁体字中国語入力システムの使い方の詳細については、『Traditional Chinese Solaris User's Guide』を参照してください。
ユーザーは入力モードを自由に切り替えられます。次の表に、各入力モードの切り替えシーケンスを示します。
表 4-5 入力モードの切り替えキーシーケンス入力モード | キーシーケンス |
---|---|
英語/ヨーロッパ言語 | <Control> + スペースバー |
キリル文字 | <Compose> <c> <c> |
ギリシャ文字 | <Compose> <g> <g> |
アラビア語 | <Compose> <a> <r> |
ユダヤ語 | <Compose> <h> <h> |
タイ語 | <Compose> <t> <t> |
Unicode 16 進数コード入力モード | <Compose> <u> <h> |
表検索入力モード | <Compose> <l> <l> |
Unicode 8 進数コード入力モード | <Compose> <u> <o> |
日本語 | <Compose> <j> <a> |
韓国語 | <Compose> <k> <o> |
簡体字中国語 | <Compose> <s> <c> |
繁体字中国語 | <Compose> <t> <c> |
en_US.UTF-8 ロケール環境を使用するには、まずロケールを選択します。システムに en_US.UTF-8 がインストールされていることを確認してください (コアクラスタ以外のクラスタでデフォルトでインストールされます)。
TTY 環境で、まず環境変数 LANG を en_US.UTF-8 に設定してこのロケールを選択します。C シェルの例を以下に示します。
system% setenv LANG en_US.UTF-8 |
他のカテゴリが設定されていない (または、en_US.UTF-8 に設定されている) ことを確認します。これは、ロケールを設定する際、環境変数 LANG の優先順位が、 LC_ALL、LC_COLLATE、LC_CTYPE、LC_MESSAGES、LC_NUMERIC、 LC_MONETARY、LC_TIME などの他の環境変数に比べて低いからです。環境変数の階層についての詳細は、setlocale(3C) のマニュアルページを参照してください。
system% locale LANG=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_ALL= |
また、CDE ログイン画面の「オプション」->「言語」メニューで en_US.UTF-8 を選択することにより、en_US.UTF-8 環境を起動することもできます。
現在使用している dtterm(1) のような端末と端末エミュレータに応じて、あるコードセット固有の STREAMS モジュールをストリームにプッシュしなければならない場合があります。
STREAMS モジュールの詳細および一般的なストリームについては、『STREAM Programming Guide』を参照してください。
次の表に、端末環境で en_US.UTF-8 ロケールによりサポートされる STREAMS モジュールを示します。
表 4-6 en_US.UTF-8 によりサポートされる 32 ビット STREAMS モジュール
32 ビット STREAMS モジュール |
説明 |
---|---|
/usr/kernel/strmod/u8lat1 | |
/usr/kernel/strmod/u8lat2 |
UTF-8 と ISO 8859-2 (東ヨーロッパ) のコード変換 STREAMS モジュール |
/usr/kernel/strmod/u8koi8 |
UTF-8 と KOI8-R (Cyrillic) のコード変換 STREAMS モジュール |
次の表に、en_US.UTF-8 ロケールによりサポートされる 64 ビット STREAMS モジュールを示します。
表 4-7 en_US.UTF-8 によりサポートされる 64 ビット STREAMS モジュール
64 ビット STREAMS モジュール |
説明 |
---|---|
/usr/kernel/strmod/sparcv9/u8lat1 |
UTF-8 と ISO 8859-1 (西ヨーロッパ) のコード変換 STREAMS モジュール |
/usr/kernel/strmod/sparcv9/u8lat2 |
UTF-8 と ISO 8859-2 (東ヨーロッパ) のコード変換 STREAMS モジュール |
/usr/kernel/strmod/sparcv9/u8koi8 |
UTF-8 と KOI8-R (Cyrillic) のコード変換 STREAMS モジュール |
STREAMS モジュールをカーネルにロードするには、まずルートになります。
system% su Password: system# |
次のように isainfo(1) ユーティリティを使用して、Solaris システムが 64 ビットと 32 ビットのどちらであるかを判断します。
system# isainfo -v 64-bit sparcv9 applications 32-bit sparc applications system# |
この情報が返された場合は、実行されているのは 64 ビットの Solaris システムです。実行されているのは 32 ビットの Solaris システムである場合は、次のように表示されます。
system# isainfo -v 32-bit sparc applications system# |
modinfo(1M) を使用して、システムにすでに STREAMS モジュールがロードされていないかを確認します。
system# modinfo | grep u8lat1 modulename system# |
u8lat1 などの STREAMS モジュールがすでにインストールされている場合は、出力は次のようになります。
system# modinfo | grep u8lat1 89 ff798000 4b13 18 1 u8lat1 (UTF-8 <--> ISO 8859-1 module) system# |
モジュールがすでにインストールされている場合は、ロードする必要はありません。ただし、モジュールがロードされていない場合は、次のように modload(1M) を使用します。
system# modload /usr/kernel/strmod/u8lat1 modulename |
32 ビットの u8lat1 STREAMS モジュールがカーネルにロードされ、ストリームにプッシュすることができます。64 ビットの Solaris 製品を実行している場合は、次のように modload(1M) を使用します。
system# modload /usr/kernel/strmod/sparcv9/u8lat1 |
STREAMS モジュールがカーネルにロードされ、ストリームにプッシュすることができます。
モジュールをカーネルからアンロードするには、次のように modunload(1M) を使用します。この例では、u8lat1 モジュールがアンロードされます。
system# modinfo | grep u8lat1 89 ff798000 4b13 18 1 u8lat1 (UTF-8 <--> ISO 8859-1 module) system# modunload -i 89 |
Solaris オペレーティング環境の旧リリースとは異なり、UTF-8 コードセットの入出力をサポートする dtterm(1) とその他の端末では、ストリームにその他の追加 STREAMS モジュールを置く必要はありません。ldterm(7M) モジュールは、現在ではコードセットに依存せず、Unicode/UTF-8 もサポートしています。
Unicode ロケールに関する適切な端末環境の設定については、stty(1) ユーティリティを以下のように使用してください。
system% stty defeucw |
/usr/ucb/stty は国際化されていないので、代わりに /bin/stty を使ってください。
Latin-1 (ISO 8859-1)、Latin-2 (ISO 8859-2)、または KOI8-R だけをサポートする端末の場合、STREAMS は次のように構成されている必要があります。
head <-> ttcompat <-> ldterm <-> u8lat1 <-> TTY |
これは Latin-1 をサポートする端末用の構成です。Latin-2 端末の場合は、STREAMS モジュール u8lat1 を u8lat2 に置き換えます。KOI8-R 端末の場合は、このモジュールを u8koi8 に置き換えます。
STREAMS モジュールがすでにカーネルにロードされていることを確認してください。
上記の STREAMS の構成を設定するには、次のように strchg(1) を使用します。
system% cat > tmp/mystreams ttcompat ldterm u8lat1 ptem ^D system% strchg -f /tmp/mystreams |
strchg(1) を使用する場合、スーパーユーザーかデバイスの所有者としてログインしていることを確認します。現在の構成を確認するには、次のように strconf(1) を使用します。
system% strconf ttcompat ldterm u8lat1 ptem pts system% |
元の構成に戻すには、次のように STREAMS の構成を設定します。
system% cat > /tmp/orgstreams ttcompat ldterm ptem ^D system% strchg -f /tmp/orgstreams |
TTY 上での UTF-8 テキスト編集動作を設定するには、まず、次のように stty(1) を使用して端末オプションを設定してください。
system% /bin/stty defeucw |
/usr/ucb/stty はまだ国際化されていないので、代わりに /bin/stty を使用します。
次のように、stty(1) に -a オプションを指定して、現在の設定を照会することもできます。
system% /bin/stty -a |
必要な STREAMS モジュールがカーネルにロードされたら、以下の行を .cshrc ファイル (C シェルの場合) に保存すると便利です。
setenv LANG en_US.UTF-8 if ($?USER != 0 && $?prompt != 0) then cat >! /tmp/mystreams$$ << _EOF ttcompat u8euc ldtterm eucu8 ptem _EOF /bin/strchg -f /tmp/mystream$$ /bin/rm -f /tmp/mystream$$ /bin/stty cs8 -istrip defeucw endif |
.cshrc ファイルに上記の行があると、毎回すべてのコマンドを入力する必要はありません。2 つめの _EOF は行の先頭になければなりません。C シェルを起動するたびに mystreams という名前のファイルを作成するのではなく、.cshrc ファイルで mystreams を参照することもできます。
en_US.UTF-8 ロケールは、iconv(1) および iconv(3) により、いくつかの国の主なコードセット間のコード変換をサポートしています。
Solaris 8 環境では、ユーティリティ geniconvtbl によって、ユーザー定義のコード変換が行えます。geniconvtbl ユーティリティを使って作成したユーザー定義コード変換は、iconv(1) と iconv(3) の両方で使用できます。このユーティリティの詳細については、geniconvtbl(1) と geniconvtbl(4) のマニュアルページを参照してください。
iconv(1) と iconv_open(3) に適用できる利用可能な fromcode と tocode の名前は、以下の表に表示されています。iconv コード変換の詳細については、iconv(1) および iconv_open(3)、iconv(3)、iconv_close(3) のマニュアルページを参照してください。利用可能なコード変換に関する情報については、iconv_en_US.UTF-8(5) を参照してください。
また、付録 A 「iconv コード変換」 も参照してください。
UCS-2、UCS-4、UTF-16 は、Unicode 3.0 と ISO/IEC10646-1:1999 の規格で定義されたバイト順序マーク (BOM) を認識するすべての固定幅 Unicode/ISO/IEC 10646 表示書式です。UCS-2BE、UCS-4BE、UTF-16BE のような他の書式は、BOM 文字を認識せず、Big Endian バイト順序を仮定する、すべての固定幅 Unicode/ISO/IEC 10646 表示書式です。一方、UCS-2LE、UCS-4LE、UTF-16LE のような表示書式は、Little Endian バイト順序を仮定します。また、これらの表示書式も、BOM 文字を認識しません。
ISO 8859-* と KOI8-* の関連スクリプトおよび言語については、http://czyborra.com/charsets/iso8859.html を参照してください。
Solaris 8 環境で拡張された新しい mp(1) 印刷フィルタは、UTF-8 で作成されたプレーンテキストファイルを含むさまざまな入力ファイル形式を印刷できます。この mp(1) は、Solaris システムで利用できる、TrueType と Type1 の拡大縮小可能なフォントと、X11 のビットマップフォントを使用します。
このユーティリティからの出力は、標準的な PostScript であり、任意の PostScript プリンタへ送ることができます。
Solaris 環境の次のメジャーリリースでは、xutops(1) は、提供されない予定です。
このユーティリティを使うには、以下のように入力します。
system% mp filename | lp |
また、このユーティリティは stdin ストリーム (標準入力) を受け付けるので、フィルタとしても使うことができます。
system% cat filename | mp | lp |
このユーティリティを、ラインプリンタの印刷フィルタとして使用することもできます。たとえば、以下のコマンドシーケンスは、印刷サービス LP に対して、プリンタ lp1 が mp 形式のファイルのみ受け付けるように指示しています。このコマンド行は、プリンタ lp1 をポート /dev/ttya にインストールします。詳細については、lpadmin(1M) のマニュアルページを参照してください。
system# lpadmin -p lp1 -v /dev/ttya -I MP system# accept lp1 system# enable lp1 |
lpfilter(1M) を使用して、次のようにこのユーティリティをフィルタとして追加できます。
system# lpfilter -f filtername -F pathname |
このコマンドは、pathname で指定した名前のフィルタ記述ファイルにより、コンバータ (この場合は、xutops) が使用可能であることを LP に伝えます。pathname は次のように指定できます。
Input types: simple Output types: MP Command: /usr/bin/mp |
このフィルタは、/usr/bin/mp を使用して、デフォルトのファイル入力を PostScript 出力に変換します。
UTF-8 テキストファイルを印刷するには、次のコマンドを使用します。
system% lp -T MP UTF-8-file |
mp(1) の詳細については、mp(1) のマニュアルページを参照してください。
サポートするスクリプトが増えたために、en_US.UTF-8 ロケールで実行される Solaris 8 DtMail は以下に示す各種の MIME 文字セットをサポートします。
US-ASCII (7 ビット US ASCII)
UTF-8 (Unicode の UCS Transmission Format 8)
UTF-7 (Unicode の UCS Transmission Format 7)
ISO-8859-1 (Latin-1)
ISO-8859-2 (Latin-2)
ISO-8859-3 (Latin-3)
ISO-8859-4 (Latin-4)
ISO-8859-5 (Latin/ キリル文字)
ISO-8859-6 (Latin/ アラビア語)
ISO-8859-7 (Latin/ ギリシャ文字)
ISO-8859-8 (Latin/ ヘブライ語)
ISO-8859-9 (Latin-5)
ISO-8859-10 (Latin-6)
ISO-8859-15 (Latin-9)
KOI8-R (キリル文字)
ISO-2022-JP (日本語)
ISO-2022-KR および EUC-KR (韓国語)
ISO-2022-CN (簡体字中国語)
ISO-2022-TW (繁体字中国語)
ISO-8859-13 (Latin-7/ バルト諸言語)
ISO-8859-14 (Latin-8/ ケルト語)
KOI8-U (キリル文字 / ウクライナ語)
Shift_JIS (Shift JIS での日本語)
BIG5 (BIG5 での繁体字中国語)
GB2312 (EUC での簡体字中国語)
TIS-620 (タイ語)
UTF-16 (Unicode の UCS Transmission Format 16)
UTF-16BE (Unicode の UTF-16 Big-Endian)
UTF-16LE (Unicode の UTF-16 Little-Endian)
これによって、世界中のどの地域のどの MIME 文字セットで符号化された電子メールでも、ほとんどの場合は 1 つの DtMail のインスタンスだけで表示できます。到着した電子メールは、指定されている MIME 文字セットと Content-Transfer-Encoding を DtMail が判断して複合化します。
しかし送信の場合は、en_US.UTF-8 ロケールでデフォルトに指定されている MIME 文字セットを使用するのでなければ、受信者のメールユーザーエージェント (メールクライアント) が理解できる MIME 文字セットを指定する必要があります。送信する電子メールの文字セットを切り替えるには、「New Message」ウィンドウで <CONTROL> + <y> を押すか、「Format」メニューボタンをクリックしてから、「Change Char Set」ボタンをクリックします。使用可能な次の文字セットが、「Send」ボタンの上の左下隅に表示されます。
電子メールのヘッダーか本体に、その MIME 文字セットで表せない文字が含まれていると、システムはすべての文字を表せる UTF-8 に自動的に切り替わります。
メッセージに 7 ビット US-ASCII 文字しか使用されていない電子メールは、デフォルトの MIME 文字セットは US-ASCII です。このような電子メールは、すべてのメールユーザーエージェントで文字や情報の欠落なしに解釈できます。
複数のスクリプトの文字が含まれている電子メールの、デフォルトの MIME 文字セットは UTF-8 です。この場合、UTF-8 の 8 ビット文字はすべて Quoted-Printable エンコーディングによって符号化されます。MIME、登録されている MIME 文字セット、および Quoted-Printable エンコーディングについての詳細は、RFC 2045、2046、2047、2048、2049、2279、2152、2237、1922、1557、1555、1489 を参照してください。
正しく国際化されたアプリケーションは自動的に en_US.UTF-8 ロケールが有効になりますが、アプリケーションのリソースファイルで、適切な FontSet/XmFontList を定義することが必要です。
国際化されたアプリケーションについての詳細は、『Creating Worldwide Software: Solaris International Developer's Guide』の第 2 版を参照してください。
Solaris 8 環境の en_US.UTF-8 ロケールでは、以下の文字セットのフォントをサポートしています。
ISO 8859-1
ISO 8859-2
ISO 8859-4
ISO 8859-5
ISO 8859-7
ISO 8859-9
ISO 8859-15
BIG5
GB 2312-1980
JIS X0201.1976
JIS X0208.1983
KS C 5601.1992 Annex 3
ISO 8859-6 and Unicode based one
ISO 8859-8
TIS 620.2533 based one
Solaris 8 環境は CDE デスクトップ環境をサポートしているので、各文字セットにはフォントのセットが保証されています。
以下のリストは、Solaris 8 製品でサポートされている Latin-1 のフォントです。
フォント別名については、『共通デスクトップ環境 プログラマーズ・ガイド (国際化対応編)』を参照してください。
en_US.UTF-8 ロケールでは、utf も共通のフォント別名としてサポートされています。アプリケーションのフォントセットは、次の例に示されているように、上記の各文字セットを含むフォントの集合である必要があります。
fs = XCreateFontSet(display, "-dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-1, -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-2, -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-4, -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-5, -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-6, -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-7, -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-8, -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-9, -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-15, -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-big5-1, -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-jisx0208.1983-0, -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-jisx0201.1976-0, -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-ksc5601.1992-3, -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-gb2312.1980-0, -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-tis620.2533-0, -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-unicode-fontspecific", &missing_ptr, &missing_count, &def_string); |
あるいは、次のように簡単に記述することもできます。
fs = XCreateFontSet(display, "-dt-interface system-medium-r-normal-*s*utf*", &missing_ptr, &missing_count, &def_string); |
FontSet の定義に関しては、ロケールがサポートする文字セットのフォントはすべて、アプリケーションの XmFontList リソース定義にも含める必要があります。
*fontList:¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-1;¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-2;¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-4;¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-5;¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-6;¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-7;¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-8;¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-9;¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-iso8859-15;¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-big5-1;¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-jisx0208.1983-0;¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-jisx0201.1976-0;¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-ksc5601.1992-3;¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-gb2312.1980-0;¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-tis620.2533-0;¥ -dt-interface system-medium-r-normal-s*utf*-*-*-*-*-*-*-unicode-fontspecific: |
あるいは、次のように簡単に記述することもできます。
*XmPushButton.fontList:¥ -dt-interface system-medium-r-normal-*s*utf*: |
XmFontList と XmNFontList についての詳細は、XmFontList(3X) のマニュアルページ、『OSF/Motif Programmer's Guide』、および『OSF/Motif Programmers's Reference Manual』の各 Motif ウィジェットのリソースセクションを参照してください。