リモートサーバーをインストールしましたが、数時間にわたってロケールをフランス語に変更しようとして失敗しました。以下は私のロケールファイルの内容です。
/etc/default/locale
:
LANG="fr_FR.UTF-8"
LANGUAGE="fr_FR.UTF-8"
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
LC_MONETARY="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_PAPER="fr_FR.UTF-8"
LC_NAME="fr_FR.UTF-8"
LC_ADDRESS="fr_FR.UTF-8"
LC_TELEPHONE="fr_FR.UTF-8"
LC_MEASUREMENT="fr_FR.UTF-8"
LC_IDENTIFICATION="fr_FR.UTF-8"
LC_ALL="fr_FR.UTF-8
/var/lib/locales/supported.d/local
:
fr_FR.UTF-8 UTF-8
en_US.UTF-8 UTF-8
en_GB ISO-8859-1
en_GB.UTF-8 UTF-8
en_GB.ISO-8859-15 ISO-8859-15
fr_BE.UTF-8 UTF-8
fr_CA.UTF-8 UTF-8
fr_CH.UTF-8 UTF-8
fr_LU.UTF-8 UTF-8
fr_FR ISO-8859-1
私のWebアプリでは、すべてがデフォルトで英語の日付と$通貨にデフォルト設定されています。私が見落としているものはありますか?また、変更が行われた後にdpkgが再構成され、サーバーを再起動したことにも言及する必要があります。
コマンドlocale
を実行します-現在のロケールが表示されます。
フランス語のロケールを生成します。
Sudo locale-gen fr_FR
Sudo locale-gen fr_FR.UTF-8
また、次を実行して、サポートされているロケールリストを再生成してください。
Sudo dpkg-reconfigure locales
そして、現在のデフォルトのロケールを更新/変更します:
Sudo update-locale LANG=fr_FR.UTF-8
追加の手順:
試してください:
Sudo update-locale LANG="fr_FR.UTF-8" LANGUAGE="fr_FR"
Sudo dpkg-reconfigure locales
おそらく/etc/environment
にLANGとLANGUAGEを追加すると、変更が強制される可能性があります。ログアウト/ログインまたは再起動してみてください。
locale
は、現在のユーザーの現在のロケールを表示します。おそらく、ローカル言語変数が設定されていないことを確認するために、これらのファイルをチェックアウトする価値があるでしょう:~/.profile
~/.bashrc
~/.bash_profile
詳細:
Sudo locale-gen
とSudo update-locale
からSudo update-locale
までのすべてを試し、/etc/default/locale
と/etc/environment
に再起動の有無にかかわらずエントリを手動で作成しました。
何も機能していないようで、私のPythonコードはまだUbuntu 18.04lでUnicodeエラーを投げていました。最後に、~/.bashrc
の環境変数を修正しました。
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
もちろんsource ~/.bashrc
を忘れないでください
私はそれが推奨される方法ではないことを知っていますが、私のために他に何も機能しませんでした。
/etc/profile
も編集する必要があります:
export LANG="en_US.utf8"
export LANGUAGE="en_US.utf8"
export LC_ALL="en_US.utf8"