.\" Copyright (c) 1993, 1994 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Paul Borman at Krystal Technologies. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)mklocale.1 8.2 (Berkeley) 4/18/94 .\" jpman %Id: mklocale.1,v 1.3 1997/05/20 08:56:54 mihara Stab % .\" .Dd April 18, 1994 .Dt MKLOCALE 1 .Os .Sh 名称 .Nm mklocale .Nd LC_CTYPE locale ファイルの作成 .Sh 書式 .Nm mklocale .Ar "< src-file" .Ar "> language/LC_CTYPE" .Sh 解説 .Nm mklocale ユーティリティは標準入力から .Dv LC_CTYPE のソースファイルを読み込み、 .Dv /usr/share/locale/\fIlanguage\fP/LC_CTYPE に置くのに適した .Dv LC_CTYPE のバイナリファイルを標準出力へ書き出します。 .Pp .Ar src-file のフォーマットは非常に単純です。 キーワードから始まり、それに付随するデータが続く複数の行から構成されます。 ファイル中にコメントを書く場合は、 Cのスタイルのコメントを使用することができます。 .Pp 後述するキーワードの他に、 .Ar src-file の中で有効なトークンとして以下のものがあります。 .Bl -tag -width literal .It Dv RUNE .Dv RUNE は以下のいずれかです。 .Bl -tag -width 0x[0-9a-z]* .It Ar 'x' ASCII文字の .Ar x 。 .It Ar '\ex' ANSI文字の .Ar \ex 。 ここで、 .Ar \ex は .Dv \ea , .Dv \eb , .Dv \ef , .Dv \en , .Dv \er , .Dv \et , .Dv \ev のいずれかになります。 .It Ar 0x[0-9a-z]* rune コードを表す16進数です。 .It Ar 0[0-7]* rune コードを表す8進数です。 .It Ar [1-9][0-9]* rune コードを表す10進数です。 .El .It Dv STRING ダブルクォーテーション (") で囲まれた文字列です。 .It Dv THRU .Dv ... か .Dv - のいずれかで、範囲を示すために使われます。 .It Ar literal 以下の文字は文字通りに解釈されます。 .Bl -tag -width "<\|\|(\|\|[" .It Dv "<\|(\|[" マッピングを開始します。これらは全て同じ意味を持ちます。 .It Dv ">\|\^)\|]" マッピングを終了します。これらは全て同じ意味を持ちます。 .It Dv : マッピング中の区切り文字として使用されます。 .El .El .sp ソースファイル中に一度のみ現れるキーワードには以下のものがあります。 .Bl -tag -width PHONOGRAM .It Dv ENCODING これに続く .Dv STRING トークンによって、 作成中の locale にて使われるエンコーディング機構を指定します。 現在指定できるエンコーディングとして以下のものがあります。 .Bl -tag -width NONE .It Dv NONE 変換を行ないません。デフォルトのエンコーディングです。 .It Dv UTF2 .Nm "Bell Labs の Plan 9" から移植された .Dv "Universal character set Transformation Format" です。これは好ましいエンコーディングです。 .It Dv EUC いくつかの .Ux のベンダで使われている .Dv EUC エンコーディングです。 .El .It Dv VARIABLE 1 つのタブ文字もしくはスペース文字がこのキーワードに続き、 その後にエンコーディングに特有のデータが置かれます。 現在は .Dv "EUC" エンコーディングのみで、この可変データが必要となります。 詳しくは .Xr euc 4 を参照してください。 .It Dv INVALID 1 つの .Dv RUNE を続いて指定し、作成中の locale における不正な rune を指定します。 .El .sp 以下のキーワードは複数回指定でき、次の形式を取ります。 .in +.5i .Bl -tag -width "" .It Dv .Dv RUNE1 が .Dv RUNE2 にマップされます。 .It Dv .Dv RUNE1 から .Dv RUNEn の rune が .Dv RUNE2 から .Dv RUNE2 + n-1 にマップされます。 .El .in -.5i .Bl -tag -width PHONOGRAM .It Dv MAPLOWER 小文字への変換マッピングを定義します。 .Dv RUNE2 は .Dv RUNE1 の小文字表現となります。 .It Dv MAPUPPER 大文字への変換マッピングを定義します。 .Dv RUNE2 は .Dv RUNE1 の大文字表現となります。 .It Dv TODIGIT rune からその数値へのマッピングを定義します。 .Dv RUNE2 は .Dv RUNE1 の整数値表現となります。 例えば、ASCII文字の .Nm '0' は 10進数の .Nm 0 にマップされます。 .Nm 255 以下の値のみが指定可能です。 .El .sp 以下のキーワードは複数回指定でき、次の形式を取ります。 .in +.5i .Bl -tag -width "RUNE1 THRU RUNEn" .It Dv RUNE この rune はキーワードによって定義された属性を持ちます。 .It Dv "RUNE1 THRU RUNEn" .Dv RUNE1 と .Dv RUNEn を含む、この間に指定された全ての rune はキーワードによって定義された属性を持ちます。 .El .in -.5i .Bl -tag -width PHONOGRAM .It Dv ALPHA アルファベットで表示可能な文字である rune を定義します。 .It Dv CONTROL 制御文字である rune を定義します。 .It Dv DIGIT 10進数字で表示可能な文字である rune を定義します。 .It Dv GRAPH 表示可能な文字である rune を定義します。 .It Dv LOWER 小文字で表示可能な文字である rune を定義します。 .It Dv PUNCT 句読点で表示可能文字な rune を定義します。 .It Dv SPACE スペース文字である rune を定義します。 .It Dv UPPER 大文字で表示可能な文字である rune を定義します。 .It Dv XDIGIT 16進数字で表示可能な文字である rune を定義します。 .It Dv BLANK 空白文字である rune 定義します。 .It Dv PRINT 表示可能な rune を定義します。 .It Dv IDEOGRAM 表意記号 (訳註:7, = & などの記号) で表示可能な文字である rune を定義します。 .It Dv SPECIAL 特殊文字で印刷可能な文字である rune を定義します。 .It Dv PHONOGRAM 表音文字で表示可能な文字である rune を定義します。 .El .Sh 関連項目 .Xr mklocale 1 , .Xr mbrune 3 , .Xr rune 3 , .Xr setlocale 3 , .Xr euc 4 , .Xr utf2 4 .Sh バグ .Nm mklocale ユーティリティはあまりに割り切り過ぎです。 .Sh 歴史 .Nm mklocale ユーティリティは .Bx 4.4 から登場しました。