を実行しましたが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_*
LANG
あなたが実行時に存在su
しますが、その後の上にSSHでログインしたときではなく?何を変えましたか?en_US
これはUnicodeロケールではないことに注意してください。
su $USER -c 'env; echo ==; locale' | egrep '==|LANG'
何ですか?デフォルトのGUI環境(Unity)を使用していますか?使用していない場合は、どのディスプレイマネージャーを使用していますか?