説明
ロケール (locale)
定義ファイルは localedef(1)
コマンドがバイナリのロケール・データベースに変換するのに
必要な全ての情報を含んでいる。
定義ファイルは、いくつかのセクションから構成されており、各セクション
にはロケールのカテゴリが詳細に記述される。
文法
ロケール定義ファイルは以下のキーワードから構成されるヘッダーで始まる:
- <escape_char>
- ファイルの残りの部分でエスケープ・キャラクターとして使用する文字を
指定する。これは特殊な意味に解釈される文字をエスケープするのに使用する。
デフォルトはバックスラッシュ
(\) である。
- <comment_char>
- ファイルの残りの部分でコメント・キャラクターとして使用する文字
を指定する。デフォルトではシャープ
(#) である。
ロケールの定義はロケールのカテゴリ毎の定義を行う部分から構成される。
各部分は、定義済みの他のロケールのコピーを元に定義することもできるし、
最初から定義することもできる。カテゴリをコピーする場合、定義の中に
copy
というキーワードに続けてコピーするロケールの名前を書く。
LC_CTYPE
カテゴリの定義は最初のカラムに
LC_CTYPE
という文字列を置くことで始める。
ここでは以下のキーワードが使用できる:
- upper
- 大文字 (uppercase letter)
のリストを指定する。
A から Z
までの文字は自動的に含まれる。
cntrl, digit, punct, space
に指定された文字を指定することはできない。
- lower
- 小文字 (lowercase letter)
のリストを指定する。
a から z
までの文字は自動的に含まれる。
cntrl, digit, punct, space
に指定された文字を指定することはできない。
- alpha
- アルファベットの文字を指定する。
upper と lower
を指定した全ての文字は自動的に含まれる。
cntrl, digit, punct, space
に指定された文字を指定することはできない。
- digit
- 数字として使用される文字を指定する。数字としては
0 から 9
のみが使用できる。これらはデフォルトで含まれている。
- space
- 空白として使用する文字のリストを指定する。
upper, lower, alpha, digit, graph,
xdigit
に指定された文字を指定することはできない。
<space>, <form-feed>, <newline>,
<carriage-return>, <tab>,
<vertical-tab>
は自動的に含まれる。
- cntrl
- コントロール・キャラクターのリストを指定する。
upper, lower, alpha, digit, punct,
graph, print, xdigit
に指定された文字を指定することはできない。
- punct
- 句読点文字のリストを指定する。
upper, lower, alpha, digit, cntrl,
xdigit, <space>
に指定された文字を指定することはできない。
- graph
- 表示可能文字のリストを指定するが、
<space>
文字は含まない。
upper, lower, alpha, digit, xdigit,
punct
を指定した文字は自動的に含まれる。
cntrl
に指定された文字を指定することはできない。
- print
- <space>
文字を含めた表示可能文字のリストを指定する。
upper, lower, alpha, digit, xdigit,
punct, <space>
に指定した文字は自動的に含まれる。
cntrl
に指定された文字を指定することはできない。
- xdigit
- 16
進数として使用する文字のリストを指定する。10
進の数字に加えて、 6
文字を昇順で続ける。デフォルトでは以下の文字が含まれている:
0 から 9、 a から
f、 A から F。
- blank
- 無地 (blank)
に分類される文字のリストを指定する。
<space> と <tab>
は自動的に含まれる。
- toupper
- 小文字から大文字への対応リストを指定する。各対応は小文字と大文字のペアを
,
で区切って括弧で括って指定する。
リストの各メンバーはセミコロンで区切る。
- tolower
- 大文字から小文字への対応リストを指定する。tolower
という
キーワードが無い場合には
toupper
を逆にしたものが使用される。
LC_CTYPE の定義は END
LC_CYTPE
という文字列で終了する。
LC_COLLATE
カテゴリは整列順序を定義している。libc
による制限のため POSIX
オプションの全てが実装されているわけではない。
このカテゴリの定義は最初のカラムに
LC_COLLATE
を置くことで始める。
ここでは以下のキーワードが使用できる:
- collating-element
- collating-symbol
順序の定義は以下の行で始める:
- order_start
これに forward, backward,
position
のいずれかのキーワードが続く。
順序を記述する行が続き、以下のキーワードで終る:
- order_end
より詳しくは
/usr/lib/nls/src
にあるソース・ファイルを参照のこと。特に
POSIX の例、 Example と
Example2 を見るとよい。
LC_COLLATE 定義は END LC_COLLATE
という文字列で終了する。
LC_MONETARY
の定義は最初のカラムに
LC_MONETARY
を置くことで始める。
ここでは以下のキーワードが使用できる:
- int_curr_symbol
- 国際通貨記号を指定する。これは
ISO 4217
規格に定義された国際通貨
記号 (3 文字)
に区切り文字を続けた
4
文字である必要がある。
- currency_symbol
- 地域的な通貨記号を指定する。
- mon_decimal_point
- 金額をフォーマットする際の小数点に使用する文字列を指定する。
- mon_thousands_sep
- 金額をフォーマットする際に桁の区切りに使用する文字列を指定する。
- mon_grouping
- 数字をフォーマットする際に何桁ごとに区切るかを指定する。
- positive_sign
- 数値において正の符号に使用する文字列を指定する。
- negative_sign
- 数値において負の符号に使用する文字列を指定する。
- int_frac_digits
- int_curr_symbol
でフォーマットする時に使用すべき端数の桁数を指定する。
- frac_digits
- currency_symbol
でフォーマットする際に使用すべき端数の桁数を指定する。
- p_cs_precedes
- currency_symbol または int_curr_symbol
をフォーマットした金額の前に付ける場合には
1
を、後ろに付ける場合には
0 を指定する。
- p_sep_by_space
- 以下の整数のいずれかを指定する。
- 0
- 記号と数値の間に空白を入れない。
- 1
- 記号と数値の間に空白を入れる。
- 2
- 記号と数値が隣接していれば間に空白を入れる。
- n_cs_precedes
- 0
- -
記号は数値の後におく。
- 1
- -
記号は数値の前におく。
- n_sep_by_space
- 以下の整数のいずれかを指定する。
0 は currency_symbol または
int_curr_symbol
と負の金額との間に空白を入れないことを、
1
は負の数値と記号の間に空白を入れることを、
2
は隣接していた場合にのみ空白を入れることを意味する。
- p_sign_posn
- 0
- 値と currency_symbol または
int_curr_symbol
を括弧で括る。
- 1
- 符号を値と currency_symbol
または int_curr_symbol
の前に置く。
- 2
- 符号を値と currency_symbol
または int_curr_symbol
の後に置く。
- 3
- 符号を currency_symbol または
int_curr_symbol
の前に置く。
- 4
- 符号を currency_symbol または
int_curr_symbol
の後に置く。
- n_sign_posn
- 0
- 値と currency_symbol または
int_curr_symbol
を括弧で括る。
- 1
- 符号を値と currency_symbol
または int_curr_symbol
の前に置く。
- 2
- 符号を値と currency_symbol
または int_curr_symbol
の後に置く。
- 3
- 符号を currency_symbol または
int_curr_symbol
の前に置く。
- 4
- 符号を currency_symbol または
int_curr_symbol
の後に置く。
LC_MONETARY の定義は END
LC_MONETARY
という文字列で終了する。
このカテゴリの定義は最初のカラムに
LC_NUMERIC
という文字列を置くことで始める。
ここでは以下のキーワードが使用できる:
- decimal_point
- 数値をフォーマットする際に小数点に使用する文字列を指定する。
- thousands_sep
- 数値をフォーマットする際に桁の区切りに使用する文字列を指定する。
- grouping
- 数字をフォーマットする際に何桁ごとに区切るかを指定する。
The LC_NUMERIC の定義は END
LC_NUMERIC
という文字列で終了する。
このカテゴリの定義は最初のカラムに
LC_TIME
という文字列を置くことで始める。
ここでは以下のキーワードが使用できる:
- abday
- 曜日の名前の省略形のリストを指定する。
リストは week
で指定された週の開始曜日
(デフォルトでは日曜日)
から始める。
- day
- 曜日の名前のリストを指定する。
リストは week
で指定された週の開始曜日
(デフォルトでは日曜日)
から始める。
- abmon
- 月の名前の省略形のリストを指定する。
- mon
- 月の名前のリストを指定する。
- am_pm
- それぞれ 午前 (am) と
午後 (pm)
に対応する文字列を指定する。
- d_t_fmt
- 適切な日付け (date)
と時刻 (time)
のフォーマットを指定する。
- d_fmt
- 適切な日付け (date)
のフォーマットを指定する。
- t_fmt
- 適切な時刻 (time)
のフォーマットを指定する。
- t_fmt_ampm
- 12
時間方式を使用した時刻のフォーマットを指定する。
- week
- 3
つの値からなるリストを指定する。
リストは、一週間の日数
(デフォルトでは 7)、
週の開始曜日
(デフォルトでは日曜に対応)、
一年の最初の週の最小の長さ
(デフォルトでは 4)
から構成される。
週の開始曜日については、週の開始日が日曜日の場合には
19971130
を、月曜日の場合には
19971201
を使用する。したがって、
day
リストの最初の日として、
19971130
を使う国ではその地域の日曜日の名前を、
19971201
を使う国ではその地域の月曜日の名前を設定すべきである。
- first_weekday
(glibc 2.2 以降)
- カレンダーアプリケーションで最初に表示する曜日の
day
リストにおける番号。
デフォルト値の 1
は日曜日か月曜日に対応する。
どちらに対応するかは
week
リストの二番目の項目の値で決まる。
- first_workday
(glibc 2.2 以降)
- 最初の就業日を示す
day
リストにおける曜日の番号。
LC_TIME の定義は END LC_TIME
という文字列で終了する。
このカテゴリの定義は最初のカラムに
LC_MESSAGES
という文字列を置くことで始める。
ここでは以下のキーワードが使用できる:
- yesexpr
- 「はい
(yes)」を意味する正規表現を指定する。
- noexpr
- 「いいえ
(no)」を意味する正規表現を指定する。
LC_MESSAGES の定義は END
LC_MESSAGES
という文字列で終了する。
より詳しくは POSIX.2
規格を参照のこと。
ファイル
/usr/lib/locale/ —
現在のロケール設定のデータベース
/usr/lib/nls/charmap/* —
文字定義ファイル
準拠
バグ
関連項目
この文書について
この man ページは Linux
man-pages
プロジェクトのリリース
3.54 の一部
である。プロジェクトの説明とバグ報告に関する情報は
http://www.kernel.org/doc/man-pages/
に書かれている。