[ 前のページ ] [ 次のページ ] [ 目次 ] [ 索引 ] [ DOC Home ]

4 コマンド・リファレンス

DEC Cランタイム・ライブラリ・ユーティリティで提供される, 次のコマンドとその構文について説明します。


GENCAT

メッセージ・テキスト・ソース・ファイルをメッセージ・ カタログ・ファイルにマージします。

フォーマット

     GENCAT   msgfile[,...] catfile

パラメータ

msgfile

必須。

メッセージ・テキスト・ソース・ファイルの名前。 省略時のファイル・タイプは.MSGXです。

catfile

必須。

メッセージ・カタログ出力ファイルの名前。catfileがすでに存在する場合には, 既存のカタログのメッセージも含んだ新しいバージョンが作成されます。 ファイル・タイプは.CATでなければなりません。

修飾子

なし。

説明

GENCATコマンドは,1つ以上の入力ソース・ファイル, および既存のカタログ・ファイル(ある場合)から, メッセージ・カタログを新しく作成します。メッセージ・カタログは, アプリケーション用のメッセージを含むバイナリ・ファイルです。 エラー・メッセージ,画面表示,プロンプトなど, アプリケーションが出力するすべてのメッセージがここに含まれます。 アプリケーションは,Cランタイム・ライブラリ・ルーチンの catopen,catgets,およびcatcloseを使用して, メッセージ・カタログからメッセージを検索します。 これらのルーチンについての詳細は, 『DEC C Run-Time Library Reference Manual for OpenVMS Systems』 を参照してください。

メッセージ・テキスト・ソース・ファイルは, ユーザが作成するテキスト・ファイルであり, ユーザのプログラムから出力されるメッセージをここに入れます。 テキスト・ソース・ファイルには,任意のテキスト・エディタで, メッセージを入力できます。メッセージは,通常, プログラムの機能サブセットに相当するセットにグループ化できます。 各メッセージは,そのセット内で一意の数字の識別子を持ちます。 メッセージ・テキスト・ソース・ファイルには, セットおよび個別メッセージを処理するための, GENCATで認識されるコマンドを指定することもできます。

メッセージ・テキスト・ソース・ファイルは,いくつ指定しても構いません。 GENCATコマンドは,複数のソース・ファイルを,指定された順に1つずつ処理します。 連続する各ソース・ファイルが,カタログを変更します。

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

catfileには,次のコマンドを指定できます。

各初期キーワードまたは番号のあとに,空白がなければなりません。 GENCATユーティリティは,行の先頭にスペース,タブ,またはドル記号($)文字 (スペース,タブ,または改行文字が続く場合)がある場合,その行を無視します。 このため,この並びを使用して,catfile内でコメントを指定できます。 空白行も無視されます。GENCATは,$delset,$quote,または $setコマンドに続く文字を無視するため, これらのコマンドの後にコメントを指定することもできます。

数字ではじまる行は,カタログに取り込まれるメッセージを表します。メッセージ ID番号とメッセージ・テキストの間に,任意の数の空白を指定できます。ただし, メッセージ・テキストが引用符で区切られていない場合は,スペースまたはタブ文字を 1つだけ指定することをおすすめします。 メッセージ・テキストが引用符で区切られていない場合,GENCATは, 空白もメッセージの一部として処理します。なお, メッセージ・テキストが引用符で区切られている場合には,GENCATは, メッセージIDと先頭の引用符とのあいだのスペースまたはタブを,すべて無視します。

C言語で認識されるようなエスケープ・シーケンスを,テキストの中で使用できます。 エスケープ文字のバックスラッシュ(\)を使用すると, メッセージ・テキストに特殊文字を挿入できます。 表 4-1を参照してください。

表 4-1 特殊文字

エスケープ・
シーケンス
文字
\n 改行
\t 水平タブ
\v 垂直タブ
\b バックスペース
\r キャリッジ・リターン
\f 改ページ
\\ バックスラッシュ文字(\)。 メッセージ・テキストを次の行に継続するのに使用する。
\ddd 8進数ddd に対応するシングル・バイト文字。1〜3桁の8進数を指定できる。ただし, 8進数に続く文字がやはり有効な8進数の場合は,先頭にゼロを指定する必要がある。 たとえば,$ (ドル記号)の8進数は44である。メッセージに$5.00を挿入するには, \445.00ではなく,\0445.00を使用する。そうでない場合には,5が, 8進数の一部として解析される。

エラー

GENCATがエラーを報告した場合, コマンドに対して何らかの処理が行われることはなく, 既存のカタログはそのまま変更されません。

  1. $set 10 Communication Error Messages
    
    この例は,ソース・ファイルの中で$setコマンドを使用し, メッセージ・グループに対してセット番号を割り当てます。

    メッセージ・セット番号は10です。この$setコマンドと次の $setコマンドの間のすべてのメッセージに,メッセージ・セット番号 10が割り当てられます(セット番号は昇順に割り当てられなければなりませんが, 番号が連続している必要はありません)。

    なお,$setコマンドにはコメントを指定できます。

  2. $delset 10 Communication Error Messages
    
    この例は,$delsetコマンドを使用して,指定されたメッセージ・セット (この場合は10)に属するすべてのメッセージを,カタログから削除します。

    $delsetコマンドは,同じソース・ファイル内の$setコマンドに関して, 正しいセット番号の順序で指定する必要があります。なお, $delsetコマンドにはコメントを指定できます。

  3. 12 "file removed"
    
    この例は,メッセージ・テキストの入力,およびそれに対するメッセージ ID番号の割り当て方法を示します。この場合,メッセージID 12が, これに続くテキストに割り当てられます。

    メッセージID番号とメッセージ・テキストのあいだには,少なくとも 1つのスペースまたはタブ文字が必要ですが, 複数のスペースまたはタブを指定しても構いません。 複数のスペースまたはタブを指定した場合,これらは, メッセージ・テキストが引用符で囲まれていると無視され, メッセージ・テキストが引用符で囲まれていなければテキストの一部と見なされます。

    メッセージ番号は,1つのメッセージ・セットの中で昇順でなければなりませんが, 番号が連続している必要はありません。

    メッセージ番号の後から行の終端までのすべてのテキストが, メッセージ・テキストとして取り込まれます。 行の最終文字としてエスケープ文字のバックスラッシュ(\)を指定すると, メッセージ・テキストは次の行に継続します。次の例を参照してください。

         This is the text associated with \
         message number 5.
    

    この例に示す2行は,次の1行のメッセージを定義します。

    This is the text associated with message number 5.

  4. $quote "   Use a double quote to delimit message text
    $set 10            Message Facility - Quote command messages
    1 "Use the $quote command to define a character \
    \n for delimiting message text" \n
    2 "You can include the \"quote\" character in a message \n \
    by placing a \\ (backslash) in front of it" \n
    3 You can include the "quote" character in a message \n \
    by having another character as the first nonspace \
    \n character after the message ID number \n
    $quote
    4 You can disable the quote mechanism by \n \
    using the $quote command without \n a character \
    after it \n
    
    この例は,引用文字(引用符)の効果を示します。

    $quoteコマンドは,二重引用符(")を引用文字として定義します。引用文字は, メッセージ番号の後に指定されるスペース以外の最初の文字でなければなりません。 2番目の引用文字以降のテキストは,すべて無視されます。

    この例は,メッセージ・テキストに引用文字を指定する 2通りの方法についても示しています。

    この例は,次のことも示しています。


ICONV COMPILE

変換ソース・ファイルから変換テーブル・ファイルを作成します。 変換テーブル・ファイルは,ICONV CONVERTコマンドが,ファイル内の文字を, あるコードセットから別のコードセットに変換するのに使用されます。

フォーマット

     ICONV COMPILE   sourcefile tablefile

パラメータ

sourcefile

必須。

変換ソース・ファイルの名前。省略時のファイル・タイプは.ISRCです。 弊社は変換ソース・ファイルのファイル命名規則として,次の規則を使用します。

     fromcodeset_tocodeset.isrc

tablefile

必須。

作成する変換テーブル・ファイルの名前。省略時のファイル・タイプは.ICONVです。 変換テーブル・ファイルのファイル命名規則は次のとおりです。

     fromcodeset_tocodeset.iconv

公用変換テーブル・ファイルは,論理名 SYS$I18N_ICONVで定義されるディレクトリにあります。 新しく作成した変換テーブル・ファイルを, システム単位で使用できるようにするには,これを同じディレクトリに格納します。

修飾子

/LISTING[=listfile]

ICONV COMPILEに対して,ソース・ファイル・リスト, およびコンパイル中に生じたエラー・メッセージを含む, リスト・ファイルの作成を指定します。ファイル名の指定が修飾子で省略された場合, 省略時リスト・ファイル名は,sourcefile.LISとなります。

説明

ICONVコマンドは,状態独立の1〜4バイト・コードセットをサポートします。 状態依存のコードセットはサポートしません。

注意
このインプリメンテーションにおける tocodesetエンコードには,インプリメンテーションの制約があります。 tocodeset内の文字は,4番目のバイトに0XFFを使用してはなりません。

変換ソース・ファイルには,特定の変換についての文字変換規則が含まれます。

コードセット変換ソース・ファイルの形式は,次のように定義されます。

     <fromcodeset_mb_cur_max>    value
     <fromcodeset_mb_cur_min>    value
     <tocodeset_mb_cur_max>      value
     <tocodeset_mb_cur_min>      value
     <fallback_code>             value
     <escape_char>               value
     <comment_char>              value
     <fromcodeset_range>         value...value;value...value;...;value...value
     ICONV_TABLE
     fromvalue                         tovalue
     fromvalue                         tovalue
        .                                 .
        .                                 .
        .                                 .
     fromvalue                         tovalue
     END ICONV_TABLE

ここで,シンボル<...>およびこれに対応する値は,コードセット定義であり, fromvalue/tovalueのペアは,文字変換規則です。

コードセット宣言

コードセット宣言は,文字変換規則の前に指定しなければなりません。各宣言は, 1桁目からはじまる山括弧で囲まれたシンボル,1つ以上の空白(タブまたはスペース), シンボルに割り当てられる値の順に構成されます。 表 4-2を参照してください。

表 4-2 コードセット宣言 :(クリックで表示)


fromcodesetに対してコードセット・エンコード範囲を指定する場合, すべての文字ゾーンを指定しなければなりません。 <fromcodeset_range>の指定で文字ゾーンが抜けている場合, コードセット変換が正しく行われないことがあります。他の DEC Cランタイム・ライブラリ(RTL)でサポートされるfromcodesetに対して, コードセット・エンコード範囲を正しく指定することは,きわめて重要です。 この指定が正しく行われなければ,iconvと,他の DEC C RTLでのコードセット・サポートが一致しません。

たとえば,EUCJPに対するfromcodeset範囲は次のように指定されます。

     <fromcodeset_range> \x0...\x7f;\x8e\xa1...\x8e\xfe;
                         \xa1\xa1...\xfe\xfe;\x8f\xa1\xa1...\x8f\xfe\xfe

<fromcodeset_range>値の設定は,文字変換規則値の設定と同じです。 8進,10進,または16進数を使用できます。

文字変換規則

文字変換規則は,1桁目から文字列ICONV_TABLEが指定されている行と, 1桁目から文字列END ICONV_TABLEが指定されている行のあいだの,すべての行です。

文字変換規則は,1桁目からはじめる必要があります。

空白行,および1桁目にコメント文字が指定されている行は,無視されます。 なお,コメントは省略可能です。

文字変換規則は,次の2種類の形式のいずれかで指定します。

     fromvalue                   tovalue

     fromvalue...fromvalue       tovalue

fromvaluetovalueの間には,1つ以上の空白 (タブまたはスペース)を指定します。

単一文字変換規則を定義するには,最初の形式を使用します。この例を次に示します。

     \d32       \d101
     \d37       \d106

文字変換規則の範囲を定義するには,2番目の形式を使用します。この形式の場合, 最後に指定するfromvalueは,先頭のfromvalue以上でなければなりません。 範囲で定義される連続するfromvalueは,昇順でtovalueに変換されます。

たとえば,次の行について考えてみます。

     \d223\d32...\d223\d35       \d129\d254

この行は,次のように解釈されます。

     \d223\d32       \d129\d254
     \d223\d33       \d129\d255
     \d223\d34       \d130\d0
     \d223\d35       \d130\d1

fromvalueおよびtovalueは,次のように設定されます。

各定数は,シングル・バイト値を表します。2つ以上の10進,8進,または 16進定数を連結することによって,マルチバイト値を表すことができます。


注意
定数を連結してマルチバイト値を構成する場合,その基数(10進,8進,または 16進)は同じでなければなりません。変換ソース・ファイルには, Portable Character Set内の文字のみ使用できます。

ICONV CONVERTコマンドの説明も参照してください。

エラー

処理中にエラーが発生した場合,ICONV COMPILEはtablefile出力を作成しません。 警告メッセージが出された場合は,有効なテーブル・ファイルが作成されます。 ただし,警告はユーザ・エラーを示すものなので, 返された警告メッセージをチェックすることが必要です。

いくつかのICONV COMPILEエラー・メッセージ,およびその説明を次に示します。

     %ICONV-E-INVFCSRNG, syntax error in <fromcodeset_range> definition

このエラーは,<fromcodeset_range>シンボルの定義が, 決められた構文に従っていない場合に発生します。 <fromcodeset_range>シンボルはエンコード範囲を定義するもので, マルチバイト・コードセットでは必要です。

     %ICONV-E-INVSYNTAX, invalid file syntax

このエラーは,ソース内の行が,決められた構文に従っていない場合に発生します。

     %ICONV-E-BADTABLE, bad table caused by invalid value for <fromcodeset_range> definition

このエラーは,コードセット・エンコード範囲に, 無効な値が指定された場合に発生します。エンコード範囲は, <fromcodeset_range>シンボルで定義されます。

  1. $ ICONV COMPILE /LISTING EUCTW_DECHANYU.ISRC EUCTW_DECHANYU.ICONV
    
    この例は,EUCTWコードセットをDECHANYUコードセットに変換するための, 変換テーブル・ファイルの作成方法を示しています。リスト・ファイル EUCTW_DECHANYU.LISには,ソース・ファイルのリスト, およびコンパイラによって生じたエラー・メッセージが含まれます。


ICONV CONVERT

ファイル内の文字を,あるコードセットから別のコードセットへ変換します。 変換された文字は,出力ファイルに書き込まれます。

フォーマット

    ICONV CONVERT   infile outfile

パラメータ

infile

必須。

変換する文字を格納したファイルの名前。 /FROMCODE修飾子はこのファイルの文字コードセットを指定します。

outfile

必須。

ICONV CONVERTによって作成されるファイルの名前。 /TOCODE修飾子はこのファイルの文字のコードセットを指定します。

修飾子

/FROMCODE=fromcodeset

必須。

infileの文字のコードセットを指定します。

/TOCODE=tocodeset

必須。

outfileの文字コードセットを指定します。

説明

ICONV CONVERTコマンドは,infile内の文字を, /FROMCODE修飾子で指定されるコードセットから, /TOCODE修飾子で指定されるコードセットへ変換します。 変換されたファイルは,outfileに書き込まれます。

変換は,次の2種類の方法のいずれかで行われます。

コンバータのファイルの命名規則は次のとおりです。

     fromcodeset_tocodeset.iconv

注意
変換ファイルをシステムに追加する場合には, 同じファイル命名規則を使用しなければなりません。

ICONV CONVERTは,現在のディレクトリでコンバータ・ファイルを検索します。 現在のディレクトリ内でこのファイルが見つからなかった場合は,論理名 SYS$I18N_ICONVによって定義されるシステム・ディレクトリを検索します。

  1. $ ICONV CONVERT /FROMCODE=EUCTW /TOCODE=DECHANYU -
    _$ FROMFILE.DAT TOFILE.DAT
    
    この例は,EUCTW文字からDECHANYU文字への変換を示しています。ファイル FROMFILE.DAT内のEUCTW文字は,対応するDECHANYU文字へ変換されます。 変換された文字は,ファイルTOFILE.DATに格納されます。


LOCALE COMPILE

ロケール・ソース・ファイルを,バイナリのロケール・ファイルに変換します。 バイナリのロケール・ファイルは,国際化の論理名の設定に依存する, ユーティリティおよびCルーチンによって使用されます。

フォーマット

    LOCALE COMPILE   sourcefile

パラメータ

sourcefile

必須。

ロケールの各カテゴリを定義するロケール・ソース・ファイルの名前。 ソース・ファイルの省略時のファイル・タイプは.LSRCです。 ロケール・ソース・ファイルの形式の定義については,第2章を参照してください。

修飾子

/CHARACTER_DEFINITIONS=filename

オプション。省略時の設定:/NOCHARACTER_DEFINITIONS

ロケール用の文字セット記述ファイル(charmap)を指定します。このファイルは, 文字を実際の文字エンコードにマップします。

charmapが指定されない場合には,ロケール・ソース・ファイルの中で, シンボル名(照合シンボル・キーワードで定義された照合シンボルを除く) を使用できません。

charmapファイル形式の定義については,第3章を参照してください。 charmapの省略時のファイル・タイプは.CMAPです。

/DISPLAY[=[NO]HOLE]

オプション。省略時の設定:/NOHOLE

中国に関するロケールおよびターミナルとともに使用して, 4バイト文字がターミナル・ディスプレイ上で4つの印字位置(桁) を占めることを指定します。省略時の値(/DISPLAY=NOHOLE)は,4バイト文字が 2つの印字位置を占めることを指定します。

/IGNORE=WARNINGS

オプション。省略時の設定:/NOIGNORE

LOCALE COMPILEが警告メッセージを出した場合でも, 出力ファイルを作成することを指定します。警告メッセージは, 結果として出力されたロケール・ファイルを使用する前に, 修正が必要なユーザ・エラーを示していることがあるので, /IGNOREキーワードは十分に注意して使用してください。

/LISTING[=filename]

オプション。バッチの場合の省略時の設定:/LISTING。 会話型の場合の省略時の設定:/NOLISTING。

リスト・ファイルの名前を指定します。/SHOW修飾子は, リスト・ファイルに含まれる情報の内容を制御します。ファイル名が省略された場合, 省略時のファイル名はsourcefile.LISになります。

/OUTPUT=[filename]

オプション。省略時の設定:/OUTPUT=sourcefile.LOCALE

出力ファイルの名前を指定します。/OUTPUT修飾子の指定が省略された場合, 省略時の出力ファイル名はsourcefile.LOCALEになります。公用のロケールは, 論理名SYS$I18N_LOCALEで定義されるディレクトリに保存されます。 出力ファイルが別の場所にある場合,ロケールはプライベートです。

/NOOUTPUTが指定された場合,コンパイルが正常に終了しても, コンパイラは出力ファイルを作成しません。

/SHOW[=(keyword[,...])]

オプション。省略時の設定:/SHOW=(SOURCE,TERMINAL)

/SHOWは/LISTINGとともに使用して, リスト・ファイルに含まれる情報の内容を制御します。 次のキーワードを指定できます。

キーワード 説明
ALL すべての情報を含む。
BRIEF シンボル・テーブルの要約を含む。
[NO]CHARACTER_
DEFINITIONS
charmapファイルを含む,または含まない。
NONE 情報をいっさい出力しない。 NONEが指定された場合,リスト・ファイルは,発生したエラー・メッセージだけを含む。
[NO]SOURCE ソース・ファイルのリストを含む,または含まない。
[NO]STATISTICS コンパイラ性能情報を含む,または含まない。
[NO]SYMBOLS charmapシンボル・テーブルのリストを含む,または含まない。
[NO]TERMINAL ターミナルにコンパイラ・メッセージを表示する。

説明

弊社が提供するロケールに加えて,新たなロケールをシステムに追加するには, LOCALE COMPILEコマンドを使用します。ロケールをコンパイルするのに, LOCALE COMPILEは次の2つのファイルを必要とします。

エラー

次に示すエラー・メッセージは,LOCALE COMPILEコマンドに関係があります。

  1. $ LOCALE COMPILE EN_GB_ISO8859-1 /CHARACTER_DEFINITIONS=ISO8859-1 -
    _$ /LIST /SHOW=(CHARACTER_DEFINITIONS,SYMBOLS,STATISTICS)
    
    この例は,charmapファイルISO8859-1.CMAPを使用して,ソース・ファイル EN_GB_ISO8859-1.LSRCから,ロケール・ファイル EN_GB_ISO8859-1.LOCALEを作成する方法を示しています。 このロケール・ファイルを使用するには,これを SYS$I18N_LOCALEディレクトリにコピーし,LANG論理名を "EN_GB.ISO8859-1"に設定します。リスト・ファイルには,charmapファイルのリスト, シンボル・テーブル,性能情報, およびコンパイラで生じたエラー・メッセージが含まれます。


LOCALE LOAD

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

フォーマット

    LOCALE LOAD   locale_identifier

パラメータ

locale_identifier

必須。

ロードするロケールを識別する文字列。次のいずれかを指定します。

修飾子

なし。

説明

LOCALE LOADコマンドは,指定されたロケール名を, いくつかの共用読み込み専用グローバル・セクションとして, システムのメモリにロードします。 ロードされたロケールにアクセスするプロセスはすべて,ロケールの 1つのコピーを使用するため,システム・メモリ全体に対する需要が抑制されます。

このDCLコマンドは特権付きであり,通常はシステム管理者が実行します。 この場合,次の特権が必要です。

  1. $ LOCALE LOAD JA_JP_DECKANJI
    
    これは,JA_JP_DECKANJIロケールをロードする例です。


LOCALE UNLOAD

指定されたロケール名を,システムのメモリからアンロードします。

フォーマット

     LOCALE UNLOAD   locale

パラメータ

locale

必須。

アンロードするロケールを識別する文字列。このパラメータの指定形式については, LOCALE LOADコマンドの説明を参照してください。

修飾子

なし。

説明

LOCALE UNLOADコマンドは,指定されたロケール名を, システムのメモリからアンロードします。UNLOADコマンドが入力されたときに, プロセスがそのロケールにアクセスしている場合には,このアクセスが終了した後で, グローバル・セクションが削除されます。

このDCLコマンドは特権付きであり,通常はシステム管理者が実行します。 この場合,次の特権が必要です。


注意
LOCALE LOADコマンドでロードされたロケール・ファイルのみ,アンロードできます。

  1. $ LOCALE UNLOAD JA_JP_DECKANJI
    
    これは,JA_JP_DECKANJIロケールをアンロードする例です。


LOCALE SHOW CHARACTER_DEFINITIONS

文字セット記述ファイル(charmap)をリストします。

フォーマット

     LOCALE SHOW CHARACTER_DEFINITIONS

パラメータ

なし。

修飾子

なし。

説明

LOCALE SHOW CHARACTER_DEFINITIONSコマンドは,論理名 SYS$I18N_LOCALEで定義される公用ディレクトリ内の,文字セット記述ファイル (charmap)をすべてリストします。

charmapは,シンボル名,およびコード化文字セット内の文字の値を定義します。 また,ロケールをコンパイルするとき,LOCALE COMPILEコマンドによって使用されます。 charmapファイルのファイル・タイプは.CMAPです。

  1. $ LOCALE SHOW CHARACTER_DEFINITIONS
    
    [SYS$I18N.LOCALES.SYSTEM]DECHANYU
    [SYS$I18N.LOCALES.SYSTEM]DECHANZI
    [SYS$I18N.LOCALES.SYSTEM]DECKANJI
    [SYS$I18N.LOCALES.SYSTEM]DECKOREAN
    [SYS$I18N.LOCALES.SYSTEM]EUCJP
    [SYS$I18N.LOCALES.SYSTEM]EUCTW
    [SYS$I18N.LOCALES.SYSTEM]ISO8859-1
    [SYS$I18N.LOCALES.SYSTEM]ISO8859-2
    [SYS$I18N.LOCALES.SYSTEM]ISO8859-3
    [SYS$I18N.LOCALES.SYSTEM]ISO8859-4
    [SYS$I18N.LOCALES.SYSTEM]ISO8859-5
    [SYS$I18N.LOCALES.SYSTEM]ISO8859-7
    [SYS$I18N.LOCALES.SYSTEM]ISO8859-8
    [SYS$I18N.LOCALES.SYSTEM]ISO8859-9
    [SYS$I18N.LOCALES.SYSTEM]MITACTELEX
    [SYS$I18N.LOCALES.SYSTEM]SDECKANJI
    [SYS$I18N.LOCALES.SYSTEM]SJIS
    
    この例は,SYS$I18N_LOCALEディレクトリにあるすべての charmapファイルを示しています。


LOCALE SHOW CURRENT

各種の国際化論理名で定義された,現在の国際化環境の要約を表示します。

フォーマット

     LOCALE SHOW [CURRENT]

パラメータ

なし。

修飾子

なし。

説明

LOCALE SHOW CURRENTコマンドは,ロケール・カテゴリごとの設定,および環境変数 LC_ALLとLANGの値をリストします。

CURRENTキーワードは省略時の値のため,省略しても構いません。 カテゴリを定義する論理名は,カテゴリと同じ名前です。たとえば, LC_MESSAGESという論理名は,LC_MESSAGESカテゴリの設定を定義します。 表 4-3は, ロケール・カテゴリについて説明しています。

表 4-3 ロケール・カテゴリ

カテゴリ 説明
LC_COLLATE 照合シーケンスについての情報
LC_CTYPE 文字分類についての情報
LC_MESSAGES プログラム・メッセージの言語,および yes/noプロンプトの形式についての情報
LC_MONETARY 通貨編集形式についての情報
LC_NUMERIC 数値編集形式についての情報
LC_TIME 日付/時刻についての情報

ロケール・カテゴリは,次に示す順序で論理名を検索することによって, それぞれ定義されます。検索は,論理名が見つかるまで行われます。 見つかった論理名が,有効なロケール・ファイルを表していない場合, LOCALE SHOWは,すべてのカテゴリに対して,文字列"C"を表示します。

  1. LC_ALL

  2. テーブルの中で指定されているカテゴリに対応する論理名(たとえば, 有効なロケール・カテゴリとしてLC_NUMERICが指定されている場合, LOCALE SHOW CURRENTコマンドは,カテゴリ名, およびこれが定義するロケール名を表示する)。

  3. LANG

  4. SYS$LC_ALL

  5. SYS$*論理名で指定される,ロケール・カテゴリのシステムの省略時の値。 たとえば,カテゴリLC_NUMERICの省略時の値は,SYS$LC_NUMERIC論理名で定義される。

  6. SYS$LANG

システム管理者は,サイト別システム・スタートアップ・ファイルで SYS$*論理を定義して,省略時のロケールを設定することもできます。 定義が指定されない場合,プログラムは,組み込みのロケール "C"を使用して処理を行います。この場合,LOCALE SHOW CURRENTコマンドは, 現在のロケール・カテゴリに対して,文字列"C"を表示します。

エラー

環境を定義する論理名が誤って定義されていても, 警告メッセージが表示されることはありません。ただし, DEC Cランタイム・ライブラリ・ルーチン setlocaleを使用するアプリケーションが受け取るであろう実際の国際化環境が 正確にリストされます(たとえば,下の例でSPECIAL.LOCALEファイルが存在しない場合, LC_MESSAGESカテゴリの表示はLC_MESSAGES="C"となります)。

  1. $ DEFINE LC_COLLATE EN_US.ISO8859-1 ! NOTE: the collate category in unquoted
    $ DEFINE LANG EN_GB_ISO8859-1
    $ DEFINE LC_MESSAGES PRIVATE$DISK:[APPL.LOCALES]SPECIAL.LOCALE
    $ LOCALE SHOW CURRENT
    
    LANG="EN_GB_ISO8859-1"
    LC_CTYPE="EN_GB_ISO8859-1"
    LC_COLLATE=EN_US_ISO8859-1
    LC_TIME="EN_GB_ISO8859-1"
    LC_NUMERIC="EN_GB_ISO8859-1"
    LC_MONETARY="EN_GB_ISO8859-1"
    LC_MESSAGES=PRIVATE$DISK:[APPL.LOCALES]SPECIAL.LOCALE;1
    LC_ALL=
    
    この例は,LC_COLLATEとLC_MESSAGESを除くすべてのロケール・カテゴリの省略時の値を, EN_GB.ISO8859-1という同じロケールに設定するプロセスを示しています。 二重引用符で囲まれた設定は,その内容が,LANG,LC_ALL,SYS$LC_ALL, SYS$LANGのいずれかの論理名の設定に含まれていることを表します。これに対して, 二重引用符で囲まれていない設定は,そのカテゴリに対する論理名が, 国際化環境を定義していることを表します。この例は, ロケール・カテゴリが完全なファイル名で指定された場合, 完全なファイル名が表示されることも示しています。


LOCALE SHOW PUBLIC

システム上の公用のロケールをすべてリストします。

フォーマット

     LOCALE SHOW PUBLIC

パラメータ

なし。

修飾子

なし。

説明

LOCALE SHOW PUBLICコマンドは,システム上の公用のロケールをすべてリストします。 公用のロケールのセットには,DEC Cランタイム・ライブラリで提供される, システム組み込みのロケールに加えて,論理名 SYS$I18N_LOCALEで定義されるディレクトリにあるロケールがすべて含まれます。

  1. $ LOCALE SHOW PUBLIC
    
    C (Built-in)
    POSIX (Built-in)
    [SYS$I18N.LOCALES.SYSTEM]EN_GB_ISO8859_1
    [SYS$I18N.LOCALES.SYSTEM]EN_US_ISO8859_1
    [SYS$I18N.LOCALES.SYSTEM]FR_CA_ISO8859_1
    [SYS$I18N.LOCALES.SYSTEM]GRBAGE_LOCALE (bad file header checksum)
    [SYS$I18N.LOCALES.SYSTEM]JA_JP_DECKANJI (Permanently Loaded)
    
    この例は,SYS$I18N_LOCALEディレクトリに 3つのロケール・ファイルを持つシステムを示しています。Cおよび POSIXロケールはシステムに組み込まれているため, SYS$I18N_LOCALEディレクトリにはありません。

    この例は, 公用ディレクトリに不良ファイルまたはロケールでないファイルがある場合の動作, およびLOCALE LOADコマンドでシステムのメモリにロードされたロケール・ ファイルがある場合の動作も示しています。


LOCALE SHOW VALUE

現在の国際化環境をもとに,1つ以上のキーワードの値を表示します。

フォーマット

     LOCALE SHOW VALUE   name

パラメータ

name

必須。複数の名前を指定できます。

次のいずれかの名前を指定します。

表 4-4は, 指定できるカテゴリとキーワードを示しています。

表 4-4 ロケール・カテゴリとキーワード :(クリックで表示)


注意
現在のロケールの設定に影響を及ぼす環境変数が, 無効なロケールを指定している場合,ロケール"C"が設定されます。

カテゴリの一部として,省略時の設定で表示されない他の有効なキーワードには, 次のキーワードが含まれます。

修飾子

/CATEGORY

オプション。省略時の設定:カテゴリ名を表示しない。

各キーワードの前にカテゴリ名を表示します。

/KEYWORD

オプション。省略時の設定:キーワード名を表示しない。

キーワードの値の前にキーワード名を表示します。

説明

LOCALE SHOW VALUEコマンドは,現在の国際化環境をもとに, 1つ以上のキーワードの値を表示します。

エラー

%LOCALE-E-NOKEYFND, no keyword keyword-name found

keyword-nameは,有効なキーワードではありません。 表 4-4 にリストされているキーワードだけを指定してください。

  1. $ LOCALE SHOW VALUE NOEXPR
    
    "^[nN][[:alpha:]]*"
    
    修飾子を指定せずにLOCALE SHOW VALUEを実行すると,NOEXPR文字列の値 が表示されます。
  2. $ LOCALE SHOW VALUE /CATEGORY NOEXPR
    
    LC_MESSAGES
    "^[nN][[:alpha:]]*"
    
    /CATEGORYを指定すると,NOEXPR文字列の値の前に,カテゴリ名 (LC_MESSAGES)が表示されます。
  3. $ LOCALE SHOW VALUE /KEYWORD NOEXPR
    
    noexpr= "^[nN][[:alpha:]]*"
    
    /KEYWORDを指定すると,キーワード値の前に,キーワード名が表示されます。
  4. $ LOCALE SHOW VALUE /KEYWORD /CATEGORY NOEXPR
    
    LC_MESSAGES
    noexpr= "^[nN][[:alpha:]]*"
    
    /KEYWORDおよび/CATEGORYを指定すると,キーワード値の前に, カテゴリおよびキーワード名が表示されます。


zic

指定されたタイム・ゾーンのソース・ファイルのデータを使用して, タイム・ゾーン変換情報を格納したバイナリ・ファイルを作成します。

フォーマット

    zic   [-v] ["-L" leapseconds] [-d directory] [-y yearistype] infile

パラメータ

infile

必須。

zicが読み込むソース・ファイル。

修飾子

-v

省略可能。

データ・ファイルに指定されている年が, 時刻値によって表現可能な年の範囲をこえている場合は通知します。

"-L"

省略可能。

指定された名前のファイルから,うるう秒情報を読み込みます。 このオプションを使用しない場合は,うるう秒情報が出力ファイルに格納されません。

-d

省略可能。

標準ディレクトリではなく, 指定されたディレクトリに時間変換情報ファイルを作成します。

-y

省略可能。

年のタイプを確認するときに,yearistypeではなく, 指定されたコマンド・ファイルを使用します。

説明

zicコマンドを使用すると, ZICコンパイラはコマンド行に指定されたファイルからテキストを読み込み, この入力に指定された時間変換情報ファイルを作成できます。

ファイル名が - の場合には,標準入力が読み込まれます。

入力行は複数のフィールドで構成されます。 フィールドの間は任意の数のスペース文字で区切ることができます。 入力行の先頭と末尾の空白は無視されます。入力行で, 引用符で囲まれていないシャープ記号(#)はコメントの先頭を示し, この記号から行の末尾までがコメントであると解釈されます。 スペース文字とシャープ文字をフィールドの一部として使用するときは,二重引用符 (" ")で囲みます。コメントの後の空白行は無視されます。

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

  1. $ zic -v  "-L" leapseco -d [-] myafrica
    
    ZICコンパイラはmyafricaというタイム・ゾーンのソース・ファイルをコンパイルします。 指定されたパラメータをもとに,ZICは次の処理を行います。

    1. 表現可能な範囲をこえる年を通知します。

    2. うるう秒を適用して出力ファイルを作成します。

    3. 現在のディレクトリに結果を格納します。

    日付/時刻関数についての詳細は, 『DEC C Run-Time Library Reference Manual for OpenVMS Systems』 を参照してください。


[ 前のページ ] [ 次のページ ] [ 目次 ] [ 索引 ] [ DOC Home ]