EN JA
MKLOCALE(1)
MKLOCALE(1) FreeBSD General Commands Manual MKLOCALE(1)

名称

mklocaleLC_CTYPE locale ファイルの作成

書式

mklocale [ -d] < src-file > language/LC_CTYPE

mklocale [ -d] -o language/LC_CTYPE src-file

解説

mklocale ユーティリティは標準入力から LC_CTYPE のソースファイルを読み込み、 /usr/share/locale/ language /LC_CTYPE に置くのに適した LC_CTYPE のバイナリファイルを標準出力へ書き込みます。

src-file のフォーマットは非常に単純です。キーワードから始まり、それに付随するデータが続く複数の行から構成されます。ファイル中にコメントを書く場合は、 C のスタイルのコメントを使用することができます。

次のオプションを使用可能です:

-d
デバッグ用メッセージを有効にします。
-o
出力ファイルを指定します。

後述するキーワードの他に、 src-file の中で有効なトークンとして以下のものがあります。

RUNE
RUNE は以下のいずれかです。
'x'
ASCII 文字の x
'\x'
ANSI 文字の \x。ここで、 \x\a, \b, \f, \n, \r, \t, \v のいずれかになります。
0x[0-9a-z]*
rune コードを表す16進数です。
0[0-7]*
rune コードを表す8進数です。
[1-9][0-9]*
rune コードを表す10進数です。
STRING
ダブルクォーテーション (") で囲まれた文字列です。
THRU
...- のいずれかで、範囲を示すために使われます。
literal
以下の文字は文字通りに解釈されます。
<([
マッピングを開始します。これらは全て同じ意味を持ちます。
>)]
マッピングを終了します。これらは全て同じ意味を持ちます。
:
マッピング中の区切り文字として使用されます。

ソースファイル中に一度のみ現れるキーワードには以下のものがあります。

ENCODING
これに続く STRING トークンによって、作成中の locale にて使われるエンコーディング機構を指定します。現在指定できるエンコーディングとして以下のものがあります。
ASCII
情報交換用米国標準コード。
BIG5
中国語の“Big5”エンコーディングです。
EUC
いくつかの UNIX のベンダで使われている EUC エンコーディングです。
GB18030
中国語テキストの PRC 国家標準エンコーディングです。
GB2312
中国語テキストの古い PRC 国家標準エンコーディングです。
GBK
広範囲に使用されている、中国語テキストのエンコーディングであり、 GB 2312-1980 との後方互換性があります
MSKanji
Microsoft が使用する日本語エンコーディング方法であり、ゆるやかに JIS を基にしています。“Shift JIS”や“SJIS”としても知られています。
NONE
変換を行ないません。デフォルトのエンコーディングです。
UTF-8
ISO 10646 の UTF-8 変換フォーマットであり、RFC 2279 で定義されています。
VARIABLE
1 つのタブ文字もしくはスペース文字がこのキーワードに続き、その後にエンコーディングに特有のデータが置かれます。現在は EUC エンコーディングのみで、この可変データが必要となります。詳しくは euc(5) を参照してください。
INVALID
(古くなっています) 1 つの RUNE を続いて指定し、作成中の locale における不正な rune を指定します。

以下のキーワードは複数回指定でき、次の形式を取ります。

<RUNE1 RUNE2>
RUNE1RUNE2 にマップされます。
<RUNE1 THRU RUNEn: RUNE2>
RUNE1 から RUNEn の rune が RUNE2 から RUNE2 + n-1 にマップされます。
MAPLOWER
小文字への変換マッピングを定義します。 RUNE2RUNE1 の小文字表現となります。
MAPUPPER
大文字への変換マッピングを定義します。 RUNE2RUNE1 の大文字表現となります。
TODIGIT
rune からその数値へのマッピングを定義します。 RUNE2RUNE1 の整数値表現となります。例えば、ASCII 文字の‘ 0’は 10進数の 0 にマップされます。 255 以下の値のみが指定可能です。

以下のキーワードは複数回指定でき、次の形式を取ります。

RUNE
この rune はキーワードによって定義された属性を持ちます。
RUNE1 THRU RUNEn
RUNE1RUNEn を含む、この間に指定された全ての rune はキーワードによって定義された属性を持ちます。
ALPHA
アルファベットで表示可能な文字である rune を定義します。
CONTROL
制御文字である rune を定義します。
DIGIT
10 進数字で表示可能な文字である rune を定義します。
GRAPH
表示可能な文字である rune を定義します。
LOWER
小文字で表示可能な文字である rune を定義します。
PUNCT
句読点で表示可能文字な rune を定義します。
SPACE
スペース文字である rune を定義します。
UPPER
大文字で表示可能な文字である rune を定義します。
XDIGIT
16 進数字で表示可能な文字である rune を定義します。
BLANK
空白文字である rune 定義します。
PRINT
表示可能な rune を定義します。
IDEOGRAM
表意記号 (訳註:7, = &などの記号) で表示可能な文字である rune を定義します。
SPECIAL
特殊文字で印刷可能な文字である rune を定義します。
PHONOGRAM
表音文字で表示可能な文字である rune を定義します。
SWIDTH0
表示幅 0 の rune を定義します。
SWIDTH1
表示幅 1 の rune を定義します。
SWIDTH2
表示幅 2 の rune を定義します。
SWIDTH3
表示幅 3 の rune を定義します。

表示幅を明示的に定義しない場合、デフォルトでは、表示可能 rune に対しては幅 1 が仮定されます。

歴史

mklocale ユーティリティは 4.4BSD ではじめて登場しました。

バグ

mklocale ユーティリティはあまりに割り切り過ぎです。
October 17, 2004 FreeBSD