Oracle® Solaris 11.2 国際化対応言語環境の利用ガイド

印刷ビューの終了

更新: 2014 年 7 月
 
 

ロケールとは

アプリケーションプログラムの重要な概念は、プログラムのロケールの概念です。ロケールとは、あるネイティブ言語環境の明示的なモデルおよび定義のことです。ロケールの概念は、http://opengroup.org からアクセスできる POSIX 規格に明示的に定義されて含まれています。

ロケールは、国に依存する書式設定やその他の仕様が存在するいくつかのカテゴリから構成されます。プログラムのロケールは、そのコードセット、日付や時間の書式設定規則、通貨規則、10 進書式設定規則、および照合 (ソート) 順序を定義します。

ロケール名は、ベースとなる言語、使用する国 (地域)、およびコードセットから構成できます。たとえば、ドイツ語は、Deutsch の略語となる de ですが、スイスのドイツ語は de_CH になります (CH は Confederation Helvetica の略語)。この表記規則により、通貨単位の表記など、国ごとの特定の違いの表現が可能となります。Oracle Solaris 11 のデフォルトのロケールコードセットは、Unicode の ASCII 準拠 8 ビットエンコーディング形式である UTF-8 です。したがって、スイスのドイツ語の完全定義ロケール名は、de_CH.UTF-8 となります。

ある特定の言語に複数のロケールを関連付けることができるため、地域の違いの表現が可能となります。たとえば、英語を話す米国ユーザーが en_US.UTF-8 ロケール (米国向けの英語) を選択できる一方、英語を話す英国ユーザーは en_GB.UTF-8 (英国向けの英語) を選択できます。

一般に、ロケール名は LANG 環境変数で指定します。ロケールカテゴリは LANG に従属しますが、個別に設定することも可能であり、そうした場合にはそれらの設定が LANG をオーバーライドします。LC_ALL 環境変数を設定すると、その設定が、LANG やすべての個別のロケールカテゴリをオーバーライドします。

ロケールの命名規則は次のとおりです。

language[_territory][.codeset][@modifier]

ここで、2 文字の language コードは ISO 639 からのもの、2 文字の territory コードは ISO 3166 からのもの、codeset はこのロケールで使用されるコードセットの名前、modifier は、このロケールと修飾子なしのロケールとを区別するための特性の名前です。

すべての Oracle Solaris 製品のロケールは、US-ASCII コード値を持つポータブル文字セットの文字を保持します。

ポータブル文字セットの詳細については、X/Open CAE Specification: System Interface Definitions, Issue 5" (ISBN 1-85912-186-1) を参照してください。

単一のロケールが複数のロケール名を持つことがあります。たとえば、POSIXC と同じロケールです。