日本-日本語
日本HPホーム 製品 & サービス OpenVMS製品情報
≫  お問い合わせ


OpenVMS マニュアル


 

OpenVMS ドキュメント
ライブラリ

タイトルページ
目次
まえがき
第 1 章:概要
第 2 章:ロケールファイルの形式
第 3 章:文字セット記号ファイル
第 4 章:コマンド・リファレンス
 ≫ GENCAT
 ≫ ICONV COMPILE
 ≫ ICONV CONVERT
 ≫ LOCALE COMPILE
 ≫ LOCALE LOAD
 ≫ LOCALE UNLOAD
 ≫ LOCALE SHOW CHARACTER_DEFINITIONS
 ≫ LOCALE SHOW CURRENT
 ≫ LOCALE SHOW PUBLIC
 ≫ LOCALE SHOW VALUE
 ≫ zic
付録 A:日本語ロケール
索引
PDF
OpenVMS ホーム

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


目次 索引

第 3 章
文字セット記述(Charmap)ファイル

本章では,charmap ファイルと呼ばれる文字セット記述ファイルについて説明します。この charmap ファイルは,文字エンコードとして文字シンボルを定義するもので,コード化文字セット,つまりコードセットに対するソース・ファイルです。

3.1 Portable Character Set

サポートされているすべてのコードセットは,固有のサブセットとして Portable Character Set (PCS)を持ちます。 PCSは,(標準シンボル名で一覧されている)文字シンボル,およびその16進エンコードで構成されます。 表 3-1 を参照してください。

表 3-1 Portable Character Set
シンボル名 16進エンコード
<NUL> \x00
<alert> \x07
<backspace> \x08
<tab> \x09
<newline> \x0A
<vertical-tab> \x0B
<form-feed> \x0C
<carriage-return> \x0D
<space> \x20
<exclamation-mark> \x21
<quotation-mark> \x22
<number-sign> \x23
<dollar-sign> \x24
<percent> \x25
<ampersand> \x26
<apostrophe> \x27
<left-parenthesis> \x28
<right-parenthesis> \x29
<asterisk> \x2A
<plus-sign> \x2B
<comma> \x2C
<hyphen> \x2D
<period> \x2E
<slash> \x2F
<zero> \x30
<one> \x31
<two> \x32
<three> \x33
<four> \x34
<five> \x35
<six> \x36
<seven> \x37
<eight> \x38
<nine> \x39
<colon> \x3A
<semi-colon> \x3B
<less-than> \x3C
<equal-sign> \x3D
<greater-than> \x3E
<question-mark> \x3F
<commercial-at> \x40
<A> \x41
<B> \x42
<C> \x43
<D> \x44
<E> \x45
<F> \x46
<G> \x47
<H> \x48
<I> \x49
<J> \x4A
<K> \x4B
<L> \x4C
<M> \x4D
<N> \x4E
<O> \x4F
<P> \x50
<Q> \x51
<R> \x52
<S> \x53
<T> \x54
<U> \x55
<V> \x56
<W> \x57
<X> \x58
<Y> \x59
<Z> \x5A
<left-bracket> \x5B
<backslash> \x5C
<right-bracket> \x5D
<circumflex> \x5E
<underscore> \x5F
<grave-accent> \x60
<a> \x61
<b> \x62
<c> \x63
<d> \x64
<e> \x65
<f> \x66
<g> \x67
<h> \x68
<i> \x69
<j> \x6A
<k> \x6B
<l> \x6C
<m> \x6D
<n> \x6E
<o> \x6F
<p> \x70
<q> \x71
<r> \x72
<s> \x73
<t> \x74
<u> \x75
<v> \x76
<w> \x77
<x> \x78
<y> \x79
<z> \x7A
<left-brace> \x7B
<vertical-line> \x7C
<right-brace> \x7D
<tilde> \x7E



3.2 charmap ファイルの構成要素

charmapファイルは,次の要素で構成されています。

  • オプションの特殊シンボル名宣言セクション
    このセクション内の各宣言は,特殊シンボル名, 1 つ以上のスペースまたはタブ文字,および値の順で構成されます。次のリストは,宣言セクションに指定できる特殊シンボル名の説明です。
    <code_set_name>
    charmap ファイルの定義の対象となるコードセット名を指定します。この値は,nl_langinfo (CODESET) サブルーチンで返される値を決定します。 <code_set_name> が宣言されない場合, Portable Character Set の名前が使用されます。

    <mb_cur_max>
    コードセット内の文字の最大バイト数を指定します。値は 1〜4 の範囲で有効です。省略時の値は1です。

    <mb_cur_min>
    コードセット内の文字の最小バイト数を指定します。サポートされるコードセットはすべて,固有のサブセットとして Portable Character Set を持つため,この値は必ず 1 です。

    <escape_char>
    16 進または 8 進表記のエンコードを示すエスケープ文字を指定します。省略時の値はバックスラッシュ(\)です。

    <comment_char>
    charmap ファイル内でのコメントを示すために使用される文字を指定します。省略時の値は番号記号(#)です。

  • CHARMAPセクション・ヘッダ
    このヘッダは,文字シンボルとエンコードを対応させるセクションの先頭を指定します。

  • コードセット内の文字のマッピングを指定する文
    各文は,文字のシンボル名,およびその文字に対応するエンコードを指定します。マッピング文は,次の形式で指定します。

    <char_symbol> encoding
    


    シンボル名は左山括弧 (<) 文字ではじまり,右山括弧 (>) 文字で終了します。 char_symbol (<および>で囲まれた名前)は,制御文字とスペース文字を除く, Portable Character Set のすべての文字を使用して指定できます。 char_symbol に > を使用することもできます。この場合,最後の > を除くすべての>文字の前に, <escape_char> 特殊シンボル名で指定されるエスケープ文字を指定します。
    エンコードは 1 文字以上の文字定数で指定しますが,その最大文字数は, <mb_cur_max>特殊シンボル名で指定されます。エンコードは,次の形式の 10 進数,8 進数,または 16 進数の定数で指定します。

    • 10 進定数: \dnnまたは\dnnn。ここで n は任意の 10 進値。

    • 8 進定数: \nnまたは\nnn。ここで n は任意の 8 進値。

    • 16 進定数: \xnn。ここで n は任意の 16 進値。


    文字シンボル定義のサンプルを次に示します。

    <A>        \d65        #decimal constant 
    <B>        \x42        #hexadecimal constant 
    <j10101>   \x81\xA1    #multiple hexadecimal constants 
    


    シンボル名の範囲とこれに対応するエンコード値を定義することもできます。なお,各シンボル名は,数値でない共通接頭辞を持ち, 2 番目のシンボル名の数値部分が,最初のシンボル名の数値部分以上であることが必要です。この形式では,シンボル名値が,ゼロ文字以上の非数値文字,および 1 けた以上の 10 進数の整数の順で構成されます。この指定形式は,一連のシンボル名を定義します。たとえば,文字列 <j0101>...<j0104> は,シンボル名 <j0101>,<j0102>,<j0103>,および <j0104> として,順に解釈されます。
    シンボル名の範囲を定義する文の中で,指定されたエンコード値は,範囲内の先頭のシンボル名の値に相当します。以降のシンボル名は,昇順のエンコード値を持ちます。次にサンプル文を示します。

    <j0101>...<j0104>        \d129\d254 
    


    このサンプル文は,次のように解釈されます。

    <j0101> \d129\d254 
    <j0102> \d129\d255 
    <j0103> \d130\d0 
    <j0104> \d130\d1 
    


    1 つのシンボル名に対して複数のエンコードを割り当てることはできませんが,文字によっては複数の共通名を持つため, 1 つのエンコード値に対して複数の名前を作成することはできます。たとえば,.文字は,ピリオドと呼ぶこともあれば,終止符 ( full stop ) と呼ぶこともあります。両方の名前を,charmapファイルに指定できます。この例を次に示します。

    <period>        \x2e 
    <full-stop>     \x2e 
    


    コメントは, <comment_char> 特殊シンボル名で指定される文字で開始しなければなりません。行全体がコメントの場合は,行の 1 桁目に, <comment_char> を指定することが必要です。

  • END CHARMAPセクション・トレーラ
    このトレーラは,マッピング文の終了を指定します。

サンプルcharmapファイルの一部を,次に示します。

CHARMAP 
<code_set_name>         "ISO8859-1" 
<mb_cur_max>            1 
<mb_cur_min>            1 
<escape_char>           \
<comment_char>          # 
 
<NUL>                   \x00 
<SOH>                   \x01 
<STX>                   \x02 
<ETX>                   \x03 
<EOT>                   \x04 
<ENQ>                   \x05 
<ACK>                   \x06 
<alert>                 \x07 
<backspace>             \x08 
<tab>                   \x09 
<newline>               \x0a 
<vertical-tab>          \x0b 
<form-feed>             \x0c 
<carriage-return>       \x0d 
END CHARMAP 


目次 索引

© 2012 Hewlett-Packard Development Company, L.P.