UnicodeのサポートのためにUbuntuの/ etc / default / localeにあるにもかかわらず、ロケールでLANGを設定する方法は?


8

を実行しましたがUbuntu 12.04、ロケールをに設定できませんen_US.utf8。私は設定LANGの設定で/etc/default/locale説明したように、ここで

$cat /etc/default/locale
LANG=en_US.utf8
$locale
LANG=
LANGUAGE=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=POSIX

しかし、上記のように機能しません。このLANG変数をどのように設定しますen_US.utf8か?

私が尋ねる理由は、を実行するecho -e "\x03\bb"unicode greek letter lambda symbol正しく表示されるのですが、私の問題はemacsにあります。:emacsのでは、私はユニコードのシンボル、例えば表示できないC-x 8 RET 03bb出力\u03bb、代わりにgreek letter lambda symbol。問題はこれらのロケール設定にあると思いましたが、設定できません。

編集:問題は修正されたと思います。

$su $USER -c 'env; echo ==; locale' | egrep '==|LANG'

LANG=en_US
LANGUAGE=en_US
==
LANG=en_US
LANGUAGE=en_US

私のためのソリューションは、私はへのsshにminttyを使用していた、だったUbuntu 12.04 Server Edition私は設定していたので、~/.pam_environment~/.etc/ssh_config、と~/bashrc。しかし、emacsに関する私の本当の問題はこのubuntu構成に関するものではなかったので、このLANG変数構成が何のために使用されるのか、または正しい値に設定したのかわかりません 。

編集2: #ubuntu ircチャネルからのansivirusの提案に従って、これを解決するために私が取った手順は次のとおりです。

これを追加 ~/.bash_profile

export LANGUAGE="en"
export LANG="C"
export LC_MESSAGES="C"

これを追加する~/.pam_environment(これは問題があるはずです)

LANG=en_US
LANGUAGE=en_US

これを追加 /etc/ssh/sshd_config

UsePAM yes

これをコメントアウトする /etc/ssh/ssh_config

#   SendEnv LANG LC_*

の出力はsu $USER -c 'env; echo ==; locale' | egrep '==|LANG'何ですか?デフォルトのGUI環境(Unity)を使用していますか?使用していない場合は、どのディスプレイマネージャーを使用していますか?
Gilles「SO-悪をやめる」14年

であるLANGあなたが実行時に存在suしますが、その後の上にSSHでログインしたときではなく?何を変えましたか?en_USこれはUnicodeロケールではないことに注意してください。
Gilles 'SO-邪悪なことをやめなさい' 2014

@ギレス、私のedit2を見てください。これらの手順を実行した後、今のところLANGはある種の存在だと思いますが、それがどのような影響を与えるのかはわかりません。emacsが修正され、Unicode文字が正常に表示されるので気にしません。これらの変数は意味し、それが何に影響するか、ありがとう。
user3995789 2014年

また、これらは私のemacsの問題を修正しなかったことにも注意してください。結局のところ、これはemacsの問題でした。
user3995789 2014年

1
多分関連:ロケールの正しいスペルは.utf8ではなくAFAIK en_US.UTF-8です
Jan Henke

回答:


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.