Localization/Guide/ja

タイムゾーン
現在位置に応じて、システム時間を維持するために、時間帯を設定する必要があります. および のためにこれを行う方法手順は、の記事で見つけることができます.

ロケールとは何ですか?
ロケールは、国や言語に特有の設定を決定するために使う情報の集合体で、大抵のプログラムがこれを利用します. ロケールとそのデータはシステムライブラリの一部であり、ほとんどのシステムにおいて ディレクトリ下にあります. ロケール名は一般に、 という形式で命名されます. ここで  は 2 (または 3) 文字の言語コード (ISO-639 で規定) であり、  は 2 文字の国コード (ISO-3166 で規定) になります. または  のような変形情報 (バリアント) がロケール名に追加されることもよくあります. 例えば、 や   です. ロケールと関連する記事をもっと読むには、Wikipedia (英語) を探してみてください.

ロケール関連の環境変数
ロケール設定の色々な側面を制御する環境変数を以下の表に示します. これらのすべては、上記の 形式で表記されたロケール名を1つだけ設定できます.

最も一般的なのは、ユーザが LANG 変数のみをグローバルに設定することです.

特定のロケールの生成
ほとんどのユーザは、おそらくシステムで1つ、もしかしたら2つのロケールを使用するでしょう. 追加のロケールをどのように指定するかについては、ファイルの中に説明があります.

次のステップは、 を実行することです. これは、 ファイルの中で指定された全てのロケールを生成し、ロケールアーカイブ に書き込みます.

を実行して、選択したロケールが使用可能かを確認してください.

ファイルは、 を使って表示できます.

その未加工の内容は、 コマンドを使って表示可能です.

OpenRC
OpenRC を使用する際、ロケール設定は環境変数に格納されます. 一般的には、 (システム全体の設定用) と (ユーザ固有の設定用) で設定します. 詳細は記事 に記載されています. システム全体の設定 は  を通じて管理できます. 例えば、 LANG 変数を  という値に設定するには:

もちろん、手動でファイルを編集することで、ロケール変数を様々に変化させることも可能です.

このコマンドは、小文字でハイフンの無い形式の接尾辞を表示します. glibc はどちらの形式も認識できますが、多くのプログラムはそうではありません. もっともよく使用される例が X です. そのため、いつでも utf8 より UTF-8 を優先して使うのがベストです.

いくつかの場合では、ユーザはKrusaderのような一部のアプリケーションにおいて、英語でない表記に欠陥を見つけるかもしれません(https://bugs.kde.org/show_bug.cgi?id=371582). から の行を取り除くかコメントアウトすることでこの問題は直るはずです.

特に、より伝統的なUNIX環境ではかなり一般的なのですが、グローバル設定 を不変のまま (すなわち  ロケール) にしておくことも可能です. それでもユーザは、自分のシェルの設定ファイルで自分の優先ロケールを指定することが可能です:

システムを構成する別の方法は、既定は ロケールにしたまま、同時にUTF-8での文字表示を有効にすることです. このオプションは、 で下記のような設定を使用することで実現できます:

上記のスニペットを使うと、ユーザは選択した言語を全面的に使用しなくとも、ローカライズされたファイル名を適切に見ることができるようになります.

一旦、正しいロケールを設定したら、変更をシステムに認識させるため、環境変数を更新してください.

システム全体の既定ロケールならば:

ユーザ固有のロケールならば:

その後、++を押してXサーバを殺し 、ログアウトしてからユーザとしてログインしてください.

では、変更内容が反映されていることを確認してください:

明示的に設定されているロケール環境変数の値、例えば export 文 (bash を使用している場合) によって設定されているものは、ダブルクォーテーション無しで表示されます. 他のロケール環境変数から継承された値は、ダブルクォーテーション付きで表示されます.

systemd
systemdの場合、ロケールの設定には コマンドを使います. 利用可能なロケール一覧を確認するには:

次に、目的のロケールを設定します:

最後に結果がうまくいっているかを確認してください:

OpenRC
コンソールが使用するキーボードのレイアウトは、の中の keymap 変数によって設定されています. 有効な値はに記載されています. は、更にレイアウトごとに細分化されています (例えば、). さまざまなオプションの、どれがニーズに対して最高に適合しているかの決定を試みるため、いくつかの言語には複数のオプションがあります.

systemd
systemdでは、コンソールで使用されるキーマップレイアウトは コマンドを使って設定できます. 最初に、利用可能なキーマップレイアウトを確認します:

次に、要求されたコンソールキーマップレイアウトを設定します:

最後に適切にコンソールキーマップレイアウトが設定されているかを確認します:

OpenRC
X サーバが使用するキーボードレイアウトは、 の中の XkbLayout オプションで指定されています. 詳細は、との記事を参照してください.

systemd
systemdでは、X11サーバで使用されるキーマップレイアウトは コマンドを使って設定できます. 最初に、利用可能なX11キーマップレイアウトを確認します:

次に、要求されたX11キーマップレイアウトを設定します:

最後に適切にX11キーマップレイアウトが設定されているかを確認します:

Native Language Support
USEフラグを持っていてメッセージベースのローカライゼーションに対応しているプログラムでこれを使うためには、このフラグをセットしてプログラムをコンパイルしてください. メッセージ文字列は ファイルにインストールされます. Native Language Support (NLS)を使っているプログラムの大半は、ローカライズされたメッセージを展開し使用するためにgettextライブラリも必要とします. もちろん、Portageは必要なら自動でこれをインストールしてくれます.

USEフラグを設定した後は、いくつかのパッケージを再emergeする必要があるかもしれません:

LINGUAS
他にも、どのローカライゼーションファイルがビルドされインストールされたかをコントロールする、gettext をベースとする一部のビルドシステムが使用する LINGUAS 変数が存在します. この変数はスペース区切りの言語コードのリストを受け取ります. 変数を設定する場所の候補は です：

LINGUAS に何もセットされていないのと、 LINGUAS が空の値であることには大きな違いがあることに注意してください. のようにすると、大抵のebuildはパッケージのデフォルト言語だけをインストールし、 ファイルは何もインストールしません.

L10N
L10N と呼ばれる USE_EXPAND 変数は、どの追加ローカライゼーションサポートがインストールされるかを決定します. これは一般に、パッケージによる追加の言語パックのインストールに使用されます. LINGUAS と同じように、この変数は空白区切りで言語タグのリストを持ち、 で設定することができます:

パッケージ毎に設定するには、次の例のように、 を編集し、要求する言語パックの先頭に "l10n_" を付けます:

一般的な2文字の言語コード( や のようなもの)は LINGUAS と L10N で等価ですが、より複雑なエントリーでは文法が異なります. これは L10N がIETF language tags (BCP 47 とも呼ばれる)を使っているためです. たとえば、 LINGUAS での と は、 L10N ではそれぞれ と になります.

利用可能な L10N の値のリストは にあります:

L10N USE_EXPAND フラグを設定した後は、いくつかのパッケージを再emergeする必要があるかもしれません:

関連項目

 * (Gentoo ハンドブック)
 * (Evdev の記事内)

外部の情報

 * Locales and Internationalization (gnu.org)
 * L10N USE_EXPAND variable replacing LINGUAS
 * Michał Górny: How LINGUAS are thrice wrong!
 * [gentoo-dev [RFC] How to deal with LINGUAS mess? ]
 * [gentoo-dev [RFC] Masterplan for solving LINGUAS problems ]