web-dev-qa-db-ja.com

端末の言語のみを変更するにはどうすればよいですか?

ターミナルの言語を英語に変更するにはどうすればよいですか?

viの使用に慣れています。

端末の言語がetc/default/localeによって制御されている場合、そこで何を変更するのですか?

LANG="el_GR.UTF-8"
LANGUAGE="el:en"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
4
OJeik

Tl;博士

すべてを英語に設定するため(GNU gettextを使用するプログラムはフォールバック言語としてギリシャ語を使用すると仮定):

export LANG=en_US.UTF-8
export LANGUAGE=en:el

または、いくつかのLC_*変数がシェルの環境で既に定義されていて、それらをオーバーライドしたい場合:

export LC_ALL=en_US.UTF-8
export LANGUAGE=en:el

設定を固定するには、~/.bashrcの最後にexportsを追加します。


/etc/default/localeを変更すると、システム全体のロケール、したがって特定のロケールを設定しなかったすべてのユーザーのロケールに影響するため、ユーザーの実行中のコマンドの言語のみを変更する場合は、変更しないでください端末/コンソール。

ユーザーの端末/コンソールで実行されているコマンドのロケールは、次の環境変数をエクスポートすることで変更できます。

LANG
LANGUAGE
LC_ADDRESS
LC_ALL
LC_COLLATE
LC_CTYPE
LC_IDENTIFICATION
LC_MEASUREMENT
LC_MESSAGES
LC_MONETARY
LC_NAME
LC_NUMERIC
LC_PAPER
LC_TELEPHONE
LC_TIME

LANGは、明示的に定義されていないLC_*変数ごとに使用される値を定義します。シェルの環境でLC_*変数が現在定義されていない場合(デフォルトの動作です。env | grep '^LC_'が何も出力しない場合は、そうです)の値を設定したい場合すべてのカテゴリをen_US.UTF-8に、単純にLANGをエクスポートします:

export LANG=en_US.UTF-8

それ以外の場合は、以前に定義された各LC_*変数をオーバーライドするか、(またはより簡単に)事前に定義されたLC_ALL変数をオーバーライドするLC_*をエクスポートする必要があります。

export LC_ALL=en_US.UTF-8

ただし、GNU gettextを使用するプログラムは、LANGUAGE/LC_ALLではなくLANGに依存し(LANG/LC_ALLCに設定されていない限り)、その内容に基づいて言語を設定します。 LANGUAGEは、コロンで区切られた言語のリストを定義する必要があります。リストされている最初のコロン区切り言語の翻訳が利用できない場合、プログラムはリストされている2番目のコロン区切り言語などへの使用を試みます。たとえば、優先言語として英語を設定し、代替言語としてギリシャ語を設定するには:

export LANGUAGE=en:el

あなたの場合、すべてを英語に設定したいので(GNU gettextを使用するプログラムはフォールバック言語としてギリシャ語を使用すると仮定します):

export LANG=en_US.UTF-8
export LANGUAGE=en:el

または、いくつかのLC_*変数がシェルの環境で既に定義されていて、それらをオーバーライドしたい場合:

export LC_ALL=en_US.UTF-8
export LANGUAGE=en:el

設定を固定するには、~/.bashrcの最後にexportsを追加します。

5
kos

質問は、「端末の言語を英語に変更するにはどうすればいいですか?」です。

答えは:

プット

LANG = C

.bashrcに。

再起動後、端末で動作します。 GUIには影響しません。

それで全部です。

0
opinion_no9