COLLDEF(1) FreeBSD 一般コマンドマニュアル COLLDEF(1)
名称
colldef − 照合シークエンスのソース定義を変換する |
書式
colldef [−I map_dir] [−o out_file] [filename] |
解説 |
colldef ユーティリティは、照合シークエンスのソース定義を strxfrm() と strcoll() 関数で使えるフォーマットに変換します。すなわち、文字列をソート や照合できるようにする様々な方法を定義するために使われます。 strxfrm() 関 数は、その第一引数を変換して第二引数の結果に置き換えます。変換された文字 列は、 strcmp(), strncmp(), memcmp() を使って別の変換された文字列と比較し て正しくソートできるようになります。 strcoll() 関数はその引数を変換し、比 較を行ないます。 colldef ユーティリティは、標準入力から照合シークエンスソース定義を読み込 み、変換された定義を filename に格納します。生成される出力ファイルの内容 は、システムコマンドやシステムルーチンが使える形式の照合シークエンス情報 を持つデータベースです。 次のオプションが使用可能です: |
−I map_dir
charmap ファイルを探すディレクトリ名を設定します。デフォルトでカ レントディレクトリです。 −o out_file 照合シークエンス定義は、照合要素集合、およびこれを含む文字列をどのように 順序付けるかを定義する規則を指定します。これは異なる言語定義に最も便利で す。 指定ファイルは次の三つのステートメントから成ります: charmap, substitute, order この中で order ステートメントだけが必須です。 charmap や substitute が与 えられたときは、ステートメントの順序は上のようになっていなければなりませ ん。 orderステートメントの後のステートメントは無視されます。 指定ファイルの中で ‘#’ で始まる行はコメントと扱われ、無視されます。空行も 無視されます。 charmap charmapfile charmap は、文字のマッピングと実際の文字エンコーディングへの照合要素シン ボルが見つかる場所を定義します。 charmapfile のフォーマットを以下に示します。シンボル名とその値は、タブま たは空白文字によって区切られます。 symbol-value は 16 進 (\x??) または 8 進 (\???) 表現で指定でき、長さは一文字を意味します。 symbol-name1 symbol-value1 シンボル名は substitute フィールドでは指定できません。 charmap ステートメントはオプション指定です。 substitute "symbol" with "repl_string" substitute ステートメントは、文字 symbol を文字列 repl_string に置き換え ます。 substitute ステートメントはオプション指定です。 |
order order_list |
order_list は、セミコロンで区切られた、照合シークエンスを定義するシンボル のリストです。特殊シンボル ... は、簡略な形の機械語順で連なったシンボルを 指定します。 orderリストの要素は、次の方法のうちのどれかで表現できます。 |
• シンボル自身 (例えば、小文字の a は a と書きます)。
• 8 進表現のシンボル (例えば、文字 a には \141) 。 • 16 進表現のシンボル (例えば、文字 a には \x61) 。 • charmap ファイル内で定義されたシンボル名 (例えば、 charmapfile の letterA \023 に対して <letterA> )。文字マップ名が、文字 > を持つ場合 は、 /> のようにエスケープされなければならず、文字 / は // のようにエ スケープされなければなりません。 • シンボル \a, \b, \f, \n, \r, \v は、通常の C言語の意味で使うことが許 されています。 • シンボルチェーン (例えば、 abc, <letterA><letterB>c, \xf1b\xf2) 。 • シンボルの範囲 (例えば a;...;z) 。 • コンマ区切りのシンボル、範囲、チェーンは括弧でくくられます。 (例えば ( sym1, sym2, ... )) は同じ一次順序で割り当てられますが、異なる二次順 序となります。 • 鈎括弧でくくられたコンマ区切りのシンボル、範囲、チェーン (例えば、 { sym1, sym2, ... }) は、同じ一次順序だけに割り当てられます)。 バックスラッシュ文字 \ は、行の継続に使われます。この場合、バックスラッ シュ文字の後にはどんな文字も書かれてはなりません。 診断 |
colldef ユーティリティは、次の戻り値で終了します。 |
0
エラーがなく、出力の生成に成功した場合 !=0 関連ファイル |
/usr/share/locale/〈 language〉/LC_COLLATE
locale 〈language〉 の配下で、locale の照合順序のための標準共有位置 関連項目 |
mklocale(1), setlocale(3), strcoll(3), strxfrm(3) FreeBSD 10.0 January 27, 1995 FreeBSD 10.0 |