日本-日本語
日本HPホーム 製品 & サービス サポート & ドライバー ソリューション ご購入方法
≫  お問い合わせ

製品とサービス >  ソフトウェアとOS >  OpenVMS >  マニュアル

OpenVMS マニュアル


≫ 

OpenVMS V8.3
ライブラリ

タイトルページ
目次
まえがき
第 1 章:概要
第 2 章:ロケールファイルの形式
第 3 章:文字セット記号ファイル
第 4 章:コマンド・リファレンス
付録 A:日本語ロケール
索引
PDF
OpenVMS ホーム

HP OpenVMS
HP C 国際化ユーティリティ・リファレンス・マニュアル


目次 索引

第 1 章
概要

HP C ランタイム・ライブラリ・ユーティリティは,各国対応ソフトウェア・アプリケーションのローカライゼーション・データ,および時刻データを管理するのに役立ちます。ローカライゼーション・データはアプリケーションとは別に定義され,実行時になってはじめて,アプリケーションに利用されます。

HP C ランタイム・ライブラリには,次のユーティリティが登録されています。



1.1 XPG4 に準拠したローカライズ・アプリケーションの作成

国際的に使用できるアプリケーションを開発するのに役立つように, HP OpenVMS オペレーティング・システムでは, HP C ランタイム・ライブラリの一部として, XPG4 国際化モデル ( X/Open Portability Guide Issue 4 ) をサポートするユーティリティを提供しています。 XPG4 に準拠する次のユーティリティが提供されます。

これらのツールは, XPG4 モデルを対象に作成されたアプリケーションでのみ使用できます。

1.1.1 メッセージ・カタログの作成と起動

メッセージ・カタログとは,アプリケーションが表示または書き出すメッセージを含むバイナリ・ファイルです。このファイルには,アプリケーションが出力するすべてのメッセージ,たとえばエラー・メッセージ,情報メッセージ,画面メッセージ,プロンプトが格納されます。メッセージ・カタログを作成するには,GENCAT コマンドを使用します。

GENCAT は 1 つ以上の入力ソース・ファイルを読み込み,カタログ・ファイルが存在するときは,そのカタログ・ファイルも読み込みます。ソース・ファイルは,プログラムで出力するメッセージを格納するために作成するテキスト・ファイルです。ソース・ファイルにメッセージを入力するときは,任意のテキスト・エディタを使用できます。複数のソース・ファイルを指定した場合には, GENCAT は指定された順に 1 つずつソース・ファイルを処理します。各ソース・ファイルがカタログを変更します。

開発者またはアプリケーションで GENCAT を実行する前に,必要な入力ソース・ファイルを作成し,必要に応じてカタログ・ファイルも作成しておかなければなりません。

GENCAT コマンドについての詳細は, 第 4 章 を参照してください。

入力ソース・ファイルを作成する場合には,次のガイドラインに従ってください。

  • メッセージはプログラムの機能に対応した集合に分類します。

  • 各メッセージに数値の識別子を付けます。識別子は集合内で固有の値でなければなりません。

  • メッセージの集合と個々のメッセージを処理するために, GENCAT が認識するコマンドを追加します。



catfile という名前のメッセージ・カタログが存在する場合には, GENCAT は旧バージョンの内容を格納したファイルの新しいバージョンを作成し,その新しいバージョンを変更します。カタログが存在しない場合には, GENCAT は catfile という名前のファイルを作成します。

OpenVMS アプリケーションでは,次の HP C ランタイム・ライブラリ・ルーチンを使用して,メッセージ・カタログからメッセージを検索します。

  • catopen

  • catgets

  • catclose

詳細は『HP C ランタイム・ライブラリ・リファレンス・マニュアル』を参照してください。

1.1.2 コードセット変換の実行

ICONV ユーティリティは変換テーブル・ファイルを作成し,また,このファイルを使用して文字を 1 つのコードセットから別のコードセットに変換するコマンドを提供します。

  • ICONV COMPILE コマンドは変換テーブル・ファイルを作成します。

  • ICONV CONVERT コマンドはこのファイルを使用して,指定されたファイルの文字を 1 つのコードセットから別のコードセットに変換します。

ICONV コマンドは,状態に依存しない 1〜4 バイトのコードセットをサポートします。

注意

このインプリメンテーションでは,変換先のエンコーディングに制限があります。変換先内の文字の 4 バイト目で 0XFF を使用することはできません。



変換テーブル・ファイルを作成するには, DCL コマンドの ICONV COMPILE を使用します。
ICONV COMPILE sourcefile tablefile

変換ソース・ファイルのフォーマットについては, 第 4 章 の ICONV COMPILE コマンドの説明を参照してください。

tablefile 命名の規則については, 第 4 章 の ICONV CONVERT コマンドの説明を参照してください。

ファイル内の文字を 1 つのコードセットから別のコードセットに変換するには, ICONV CONVERT コマンドを使用します。
ICONV CONVERT infile outfile /FROMCODE=fromcodeset /TOCODE=tocodeset

変換された文字は,出力ファイル・パラメータoutfile に書き込まれます。

1.1.3 国際化環境論理名の設定

LOCALE ユーティリティは,次の操作を行う OpenVMS XPG4 ローカライゼーション・ユーティリティです。

  • バイナリ・ロケール・ファイルを生成します。このファイルは,国際化環境論理名の設定に依存する各ユーティリティや C ルーチンが使用します。

  • 共用の読み込み専用グローバル・データとして,システム・メモリにロケール名をロードします。

  • 使用しているシステムで定義されている現在の国際化環境の概要,および使用しているシステムのロケールの詳細を表示します。

  • システム・メモリからロケール名をアンロードします。

LOCALE ユーティリティは,次のコマンドをサポートしています。

  • LOCALE COMPILE コマンドは,ロケール・ソース・ファイルをバイナリ・ロケール・ファイルに変換します。このファイルは,国際化環境論理名の設定に依存するユーティリティと C ルーチンで使用されます。このコマンドを使用すると, ( 弊社が指定するローケルに加えて ) 新しいローケルをシステムに追加することができます。
    ロケールをコンパイルするために, LOCALE COMPILE コマンドは 2 つのソース・ファイルを使用します。

    • ロケールを記述するカテゴリを含む,ロケール定義ソース・ファイル 表 4-3 に示すロケール・カテゴリには LC_COLLATE, LC_CTYPE,LC_MESSAGES,LC_MONETARY,LC_NUMERIC,LC_TIME があります。

    • ロケールの文字セットを定義する charmap(character set description)ファイル。 charmap はコード化文字セットのソース・ファイルであり,文字シンボルを文字コードとして定義します ( 詳細は 第 3 章 を参照してください )。

  • LOCALE LOAD コマンドは,共用の読み込み可能グローバル・セクションとして,システム・メモリにロケール名をロードします。ロードされたロケールにアクセスするすべてのプロセスは,この 1 つのロケールのコピーを使用します。したがって,全体として必要とされるシステム・メモリの容量を削減することができます。

  • LOCALE UNLOAD コマンドは,システム・メモリから指定したロケール名をアンロードします。

  • LOCALE SHOW CHARACTER_DEFINITIONS コマンドは,論理名 SYS$I18N_LOCALE で定義されるパブリック・ディレクトリ内の文字セット記述ファイル(charmap) の名前の一覧を表示します。 charmap は,コーディングされた文字セットの文字のシンボル名と値を定義します。 charmap ファイルのファイル・タイプは .CMAP です。

  • LOCALE SHOW CURRENT コマンドは,各ロケール・カテゴリを示すいくつかの論理名により定義されている,現在の国際化環境の概要を表示します。このコマンドは各ロケール・カテゴリの設定と,環境変数 LC_ALL と LANG の値を表示します。カテゴリを定義する論理名には,カテゴリと同じ名前が付けられます。たとえば LC_MESSAGES という論理名は,LC_MESSAGES カテゴリの設定を定義します。

  • LOCALE SHOW PUBLIC コマンドは,システム上のすべての公用ロケールをリストします。これには HP C ランタイム・ライブラリにより提供されるシステム・ロケール,および論理名 SYS$I18N_LOCALE で定義されるディレクトリでリストされるロケールが含まれます。

  • LOCALE SHOW VALUE コマンドは,現在の国際化環境での 1 つまたは複数のキーワードの値を表示します。各ケテゴリのロケール・カテゴリおよびキーワードの一覧を 表 4-4 に示します。

LOCALE コマンドについての詳細は 第 4 章 を参照してください。

1.2 タイム・ゾーン変換情報の作成

ZIC コンパイラは Zone Information Compiler(ZIC) ユーティリティを使用して,タイム・ゾーン変換情報を格納したバイナリ・ファイルを作成します。これらのファイルは,ユーザが指定したタイム・ゾーンのソース・ファイルから生成されます。

ソース・ファイルの行は複数のフィールドから構成されます。有効なタイム・ゾーンのソース・ファイルを作成するには,次の形式に従ってください。

  • 各フィールドは任意の数のスペース文字で区切ります。

  • 入力行の先頭と末尾のスペース文字は無視されます。

  • 入力行で引用符で囲まれていないシャープ記号(#)はコメントを示し,この記号から行の末尾まではコメントになります。

  • スペース文字とシャープ文字をフィールドの一部として使用するときは,二重引用符(" ")で囲みます。

  • コメントを取り除いた後,何もない行は無視されます。

  • 空白行以外の行は次の 3 種類のいずれかであると解釈されます。



1.2.1 ルール行

ルール行の形式は次のとおりです。


 Rule  NAME  FROM    TO TYPE IN ON      AT   SAVE LETTER/S

次の例を参照してください。


 Rule  USA   1969 1973 - Apr lastSun    2:00 1:00 D

ルール行は次のフィールドで構成されます。

NAME

このルールが属しているルール集合の任意の名前を指定します。

FROM

ルールが適用される最初の年を指定します。minimum またはその短縮形は,表現可能な時刻値の年の最小値を表します。maximum またはその短縮形は,表現可能な時刻値の年の最大値を表します。

TO

ルールが適用される最後の年を指定します。FROM で定義した minimum と maximum の他に,FROM フィールドの値を繰り返し指定するために, minimum または only (またはその短縮形) が使用できます。

TYPE

ルールが適用される年のタイプを指定します。 TYPE がハイフン - の場合は, FROM から TO までのすべての年にルールが適用されます。 ZIC は年のタイプをチェックするために,次のコマンドを実行します。


yearistype year type 

終了状態が 1 の場合は,年が指定されたタイプであることを示します。終了状態が 5 の場合は,年が指定されたタイプでないことを示します。

IN

ルールが有効になる月を指定します。月の名前は短縮できます。

ON

ルールが有効になる日を指定します。 表 1-1 は認識される形式を示しています。

表 1-1 ルールが有効になる日
形式 意味
5 その月の 5 日
lastSun その月の最後の日曜日
lastMon その月の最後の月曜日
Sun>=8 8 日以降の最初の日曜日
Sun<=25 25 日以前の最後の日曜日

曜日名は短縮することも,つづりを完全に指定することもできます。 ON フィールドの内部でスペース文字を使用することはできません。

AT

ルールが有効になる時刻を指定します。 表 1-2 は認識される形式を示しています。

表 1-2 ルールが有効になる時刻
形式 意味
2
2:00 時と分
15:00 24時間形式の時刻(午後 12 時以降の時刻の場合)
1:28:14 時,分,秒

指定した時刻がローカル wall clock 時刻の場合は,これらの形式の後に w という文字を続けて指定することができ,時刻がローカル標準 (standard) 時の場合はs,時刻が UTC の場合はu (または gもしくはz),という文字を続けることができます。文字が指定されていない時は, wall clock 時刻であると解釈されます。

SAVE

ルールが有効になるときに,ローカル標準時に加算する時間を指定します。このフィールドは AT フィールドと同じ形式ですが,もちろん, ws という接尾語は使用しません。

LETTER/S

このルールが有効になるときに使用するタイム・ゾーンの短縮形の可変部を指定します。たとえば ESTEDT の場合は S または D です。このフィールドが - の場合には,可変部はヌルです。

1.2.2 ゾーン行

ゾーン行の形式は次のとおりです。


 Zone NAME              GMTOFF  RULES/SAVE FORMAT UNTIL

次の例を参照してください。


Zone Australia/South-west 9:30   Aus         CST  1987 Mar 15 2:00

ゾーン行は次のフィールドで構成されます。

NAME

タイム・ゾーンの名前を指定します。この名前はタイム・ゾーンの時刻変換情報ファイルを作成するときに使用されます。

GMTOFF

このタイム・ゾーンの標準時刻を求めるために, GMT (Greenwich Mean Time) に加算する時間を指定します。このフィールドはルール行の AT フィールドや SAVE フィールドと同じ形式です。時間を GMT から減算しなければならない場合には,フィールドの先頭にマイナス記号を指定します。

RULES/SAVE

タイム・ゾーンに適用するルールの名前,またはローカル標準時に加算する時間を指定します。このフィールドが - の場合には,常にそのタイム・ゾーンにおける標準時が適用されます。

FORMAT

このタイム・ゾーンの短縮形の形式を指定します。タイム・ゾーンの短縮形の可変部を示すために %s を使用します。

UNTIL

GMT オフセットの時間,つまりその地域に対してルールが変化する時刻を指定します。これは次のように指定します。




時刻

UNTIL を指定した場合には,タイム・ゾーン情報は,指定された時刻まで指定された GMT オフセットと変換ルールにより生成されます。

UNTIL を指定した場合は,次の行は継続行でなければなりません。継続行はゾーン行と同じ形式ですが, Zone という文字列と名前は省略されます。継続行は,前の行の UNTIL フィールドに指定された時刻から始まる情報を,そのファイルに格納します。継続行にはゾーン行と同様に UNTIL フィールドを指定することができ,その場合は,次の行がさらに継続行であることを示します。

1.2.3 リンク行

リンク行の形式は次のとおりです。


 Link     LINK-FROM      LINK-TO

次の例を参照してください。


 Link      US/Eastern     EST5EDT

OpenVMS インプリメンテーションでは,Link はコピーとして解釈されます。したがって,上記の行は情報を US/Eastern から EST5EDT にコピーします。

LINK-FROM フィールドは,ゾーン行に NAME フィールドとして表示されます。 LINK-TO フィールドは,そのタイム・ゾーンの別の名前として使用されます。

継続行を除き,行はどの順序で入力してもかまいません。

注意

2 つ以上のローカル時刻を使用する地域では,コンパイルされたファイルに記録される最も早い遷移時刻 ( transition time ) が正しくなるように,遷移時刻 ( transition time ) が最も早いルールの AT フィールドで,ローカル標準時を指定する必要があります。


目次 索引

印刷用画面へ
プライバシー 本サイト利用時の合意事項 ウェブマスターに連絡