Linuxインストールで他のプログラムの言語を変更せずにgitの言語を(英語に)変更したいのですが、設定が見つかりませんでした。どうやってするの?
8 に答える
これらの行を に追加するか~/.bashrc
、git にすべてのメッセージを英語で表示するように強制するには:~/.bash_profile
~/.zprofile
# Set Git language to English
#alias git='LANG=en_US git'
alias git='LANG=en_GB git'
LC_ALL
環境変数LC_ALL
が設定されている場合、エイリアスは一部のシステムでオーバーライドする必要があります。これは よりも優先されLANG
ます。詳細については、UNIX 仕様 - 環境変数を参照してください。
# Set Git language to English
#alias git='LC_ALL=en_US git'
alias git='LC_ALL=en_GB git'
これらの行を~/.bashrc
エイリアスに追加した場合、新しい対話型シェルが開始されたときに定義されます。~/.bash_profile
エイリアスに追加した場合、ログイン時に適用されます。
代わりに英語のコマンドを 1 つだけ使用したい場合はLC_ALL=C
、コマンドの前に次のように記述できます。
LC_ALL=C git status
結果として
# On branch master
nothing to commit, working directory clean
使用されているロケールC
は英語で、追加の言語パックをインストールしなくてもいつでも利用できます
( https://askubuntu.com/a/142814/34298を参照) 。
現在のbashセッション全体で変更するには、次のように入力します
LANG=C
たとえば、ドイツ語に変更するには、次のように入力します
LANG=de_DE.UTF-8
注: Git 2.3.1+ (2015 年第 1 四半期/第 2 四半期) 以降、Git は可能であれば Accept-Language ヘッダーを追加します。Yi EungJunによるコミット f18604b
を
参照してください( )eungjun-yi
、、 で定義
Accept-Language
されたユーザーの優先言語を示すヘッダーを追加します。$LANGUAGE
$LC_ALL
$LC_MESSAGES
$LANG
これにより、git サーバーはリモート エラー メッセージをユーザーの好みの言語で表示できます。
git guiまたはその他の GUI のロケールがある場合、GitSurvey 2010の質問の1つであったことを考えると、コマンドライン用ではありません
localization of command-line messages (i18n) 258 3.6%
もちろん、2010年以降、次のようにpo/README
説明されています。
文字列を翻訳する前に、まず翻訳対象としてマークする必要があります。
gettext
Git は、システムのライブラリをラップする国際化インターフェイスを使用する ため、gettext ドキュメント (info gettext
端末の GNU システム) のほとんどのアドバイスが適用されます。
git 1.7.9+ (2012 年 1 月)以降:
Git は
gettext
、翻訳が利用可能でロケールが適切に設定されている場合、最も一般的なインターフェイス メッセージをユーザーの言語に翻訳するために使用します。
配布者は、新しいPO
ファイルをドロップしpo/
て新しい翻訳を追加できます。
したがって、更新によって翻訳が台無しになっている場合は、何gettext
が使用されているかを確認して
ください。たとえば、「Locale Environment Variables」を参照してください。
ロケールは、複数のロケール カテゴリで構成されます。「アスペクト」を参照してください。プログラムがロケールに依存する値を検索する場合、次の環境変数に従って、優先順位に従ってこれを行います。
LANGUAGE
LC_ALL
LC_xxx, according to selected locale category: LC_CTYPE, LC_NUMERIC, LC_TIME, LC_COLLATE, LC_MONETARY, LC_MESSAGES, ...
LANG
値が設定されているが空の変数は、このルックアップでは無視されます。
LANG
ロケールを指定するための通常の環境変数です。/etc/profile
ユーザーとして、通常、この変数を設定します (他の変数の一部がシステムによって、または同様の初期化ファイルで既に設定されている場合を除きます)。
LC_CTYPE
、LC_NUMERIC
、LC_TIME
、LC_COLLATE
、LC_MONETARY
などは、単一のロケール カテゴリのみLC_MESSAGES
をオーバーライドして影響を与えることを意図した環境変数です。 たとえば、スペインに住むスウェーデン人のユーザーが、スペイン語の規則に従って数字と日付をプログラムで処理し、メッセージのみをスウェーデン語にする必要があるとします。次に、プログラムを使用して、'<code>sv_ES' または '<code>sv_ES.UTF-8' という名前のロケールを作成できます。しかし、変数を に設定し、変数をに設定する方が簡単で、同じ効果が得られます。これら 2 つのロケールは、オペレーティング システムにあらかじめインストールされています。LANG
localedef
LANG
es_ES.UTF-8
LC_MESSAGES
sv_SE.UTF-8
LC_ALL
これらすべてをオーバーライドする環境変数です。通常、特定のプログラムを実行するスクリプトで使用されます。たとえば、GNU によって生成された構成スクリプトをautoconf
使用LC_ALL
して、構成テストがロケールに依存する方法で動作しないようにします。残念ながら、一部のシステムでは、または同様の初期化ファイルに設定
LC_ALL
されています。/etc/profile
したがって、ユーザーとして、LANG
オプションで他のLC_xxx
変数のいくつかを設定したい場合は、この変数を設定解除する必要があります。
LC_ALL LC_MESSAGES=C git
=C または LANG=C ではなく、ファイルを削除または名前変更する必要はありません。
このコマンドは、Git メッセージの出力を英語に変更します。