この章では、日本語環境で使用する日本語ロケールの定義を説明します。
Solaris オペレーティングシステムでは、日本語ロケールとして、日本語 EUC を扱う ja または ja_JP.eucJP ロケール、PCK を扱う ja_JP.PCK ロケール、 UTF-8 を扱う Ja_JP.UTF-8 ロケールを提供します。
ja ロケールは、過去の Solaris オペレーティングシステムのリリースの ja ロケールと互換性を維持するように定義されています。一方、ja_JP.eucJP ロケールは、「UI-OSF 日本語環境実装規約 Version 1.1」を基準に定義されていす。よって、ja ロケールは従来の Solaris オペレーティングシステムの ja ロケールと同じ動作が必要な場合、ja_JP.eucJP ロケールは他の UNIX ベンダーと同じ動作が必要な場合に使用するのが適しています。
ja_JP.PCK ロケールは、使用される文字コードが PCK である点を除いて、ja ロケールと互換性を維持するように定義されています。ja_JP.UTF-8 は Unicode Consortium の Unicode 4.0 をもとに定義されていて、これは他の言語の UTF-8 ロケール (たとえば、en_US.UTF-8) も同様です。ただし、日本語固有の定義に関しては、ja_JP.eucJP ロケールと同様「UI-OSF 日本語環境実装規約 Version 1.1」を基準に定義されています。
各カテゴリごとの相違点に関しては以下を参照してください。
特定の似かよった文字の集合 (クラスと呼びます) を作ることによって、プログラム上、そのクラスを意識するだけで (そのクラスにどの文字が含まれているかを意識することなく)、ロケールに依存しない国際化プログラミングが可能になります。
文字分類クラスは regex(5) をサポートしたコマンドの文字クラス表現として、また、wctype(3C) の文字クラスとしても使用可能です。日本語ロケールの文字クラスの詳細は wctype_ja(3C) のマニュアルページを参照してください。
日本語文字の照合順序は、以下のようになります。
表 2–1 日本語文字の照合順序
ロケール |
|
---|---|
ja |
文字コード順 |
ja_JP.eucJP |
JIS X 0208 は JIS X 0212 より先、その他は文字コード順 |
ja_JP.PCK |
JIS X 0201 片仮名用図形キャラクタ集合は JIS X 0208 よりも先、その他は文字コード順 |
ja_JP.UTF-8 |
JIS X 0201 ローマ文字用集合 |
ISO 6429 C1 制御文字 | |
JIS X 0201 片仮名用図形キャラクタ集合 | |
JIS X 0208 (1 - 84 区) | |
JIS X 0208 (1 - 84 区) | |
その他の文字(コード順) |
Solaris オペレーティングシステムにおける日本語の日付と時刻の表示形式は、以下のとおりです。
表 2–2 日付と時刻の表示形式
Solaris オペレーティングシステムでの定義 |
|
---|---|
1月 |
|
|
2月 |
|
3月 |
|
4月 |
|
5月 |
|
6月 |
|
7月 |
|
8月 |
|
9月 |
|
10月 |
|
11月 |
|
12月 |
月の名前 (%B) 注 – ja, ja_JP.PCK ロケールでは %b と同じ。ja_JP.eucJP、 ja_JP.UTF-8 では、1-9 までの数字の前に半角スペースが入らない。 |
1月 |
|
2月 |
|
3月 |
|
4月 |
|
5月 |
|
6月 |
|
7月 |
|
8月 |
|
9月 |
|
10月 |
|
11月 |
|
12月 |
注 – ja_JP.eucJP、ja_JP.UTF-8 ロケールでは ( ) が付かない。 |
(日) |
|
(月) |
|
(火) |
|
(水) |
|
(木) |
|
(金) |
|
(土) |
曜日の名前 (%A) |
日曜日 |
|
月曜日 |
|
火曜日 |
|
水曜日 |
|
木曜日 |
|
金曜日 |
|
土曜日 |
%H時%M分%S秒 |
|
%Y年%m月%d日 |
|
日付/時刻 (%c) |
ja, ja_JP.PCK %Y年%m月%d日 %a %H時%M分%S秒 ja_JP.eucJP, ja_JP.UTF-8 %Y年%m月%d日 %H時%M分%S秒 |
午前 |
|
午後 |
|
午前/午後を伴う 12 時間表示形式(%r) |
%p%I時%M分%S秒 |
時刻の代替表示形式 (%EX) |
%H時%M分%S秒 |
日付の代替表示形式 (%Ex) |
%EY%m月%d日 |
日付および時刻の代替形式 (%Ec) |
ja, ja_JP.PCK %Y年%m月%d日 %a %H時%M分%S秒 ja_JP.eucJP, ja_JP.UTF-8 %Y年%m月%d日 %H時%M分%S秒 |
1927/01/01 - 1989/01/07 |
昭和%Ey年 |
1989/01/08 - 1989/12/31 |
平成元年 |
1990/01/01 - |
平成%Ey年 |
日付/時刻、長形式 (%C: デフォルト) |
ja, ja_JP.PCK %Y年%m月%d日 %a %H時%M分%S秒 %Z ja_JP.eucJP, ja_JP.UTF-8 %Y年%m月%d日 (%a) %H時%M分%S秒 %Z |
Solaris オペレーティングシステムの提供する単語処理用共有オブジェクトは、単語処理用文字分類情報、詰め込み処理用単語分割・結合処理情報などをアプリケーションに提供します。これらの情報を利用するための API は今のところ公開されていません。