web-dev-qa-db-ja.com

ウムラウトの問題(ターミナルに入力できない+ファイルを開くことができない)

私のラップトップにはLinux Mint 18.3がインストールされていますが、現在次の問題が発生しています。
ドイツ人として、私はたまたま名前にウムラウトを含むいくつかのファイル(またはディレクトリ)を持っています(それ自体は問題ではありません)。ウムラウトを含むか、名前にウムラウトが含まれる(サブ)ディレクトリにあるファイル(PDFなど)を開こうとすると、ファイルが開きません。

たとえば、Übungsblätterという名前のディレクトリがあり、そのディレクトリのどこかにいくつかのPDFファイルがあります。これらのファイルの1つをファイルマネージャーから開こうとすると、Okularはそれは.../Ãbungsblätter/...を開くことができません。これは、ウムラウトをいくつかの奇妙な文字に置き換えて、パスをめちゃくちゃにしたことを示しています。

ただし、Okularを開いてメニューを使用してそれぞれのファイルを開くと、すべてがcharmのように機能するため、ファイルマネージャー(Dolphin)からファイルを開こうとしたときにのみ問題が発生します。

さらに、ターミナルでウムラウトを入力できないことを体験しました。私は この質問 がその特定の問題に対処していることを発見し、ファイルの問題も修正することを望みました。ただし、ターミナルにはウムラウトを入力できるようになりましたが(ウムラウトを入力すると2文字が挿入されます。たとえば、öと入力すると、2文字が挿入されます\udcc3\udcb6öを入力し、後でreturnキーを押すとわかります)単一のöとして表示されますが、コマンドラインを再び空にするには、2文字を明示的に削除する必要があります。

localeの出力は次のとおりです。

locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=de_DE.UTF-8
LANGUAGE=en_US
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC=de_DE.UTF-8
LC_TIME=nds_DE.UTF-8
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY=de_DE.UTF-8
LC_MESSAGES="de_DE.UTF-8"
LC_PAPER=de_DE.UTF-8
LC_NAME=de_DE.UTF-8
LC_ADDRESS=de_DE.UTF-8
LC_TELEPHONE=de_DE.UTF-8
LC_MEASUREMENT=de_DE.UTF-8
LC_IDENTIFICATION=de_DE.UTF-8
LC_ALL=

編集:
端末からそれぞれのPDFを開くと、ファイルマネージャーから開くときと同じようにエラーが発生することを知りましたが、今回は、 t .../bungsbltter/...を開きます(ウムラウトを完全に削除します)

EDIT2:
locale -aの出力:

C
C.UTF-8
de_DE.utf8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZM
en_ZM.utf8
en_ZW.utf8
POSIX

編集3:
/etc/default/locale

LANGUAGE=en_GB.utf8
LANG=en_US.UTF-8
4
Raven

ロケール設定に混乱が見られます。

1つのポイントは、de_DEen_USen_GBの組み合わせです。

もう1つのポイントは、一部のロケールは.utf8で宣言されており、他のロケールは.UTF-8で宣言されていることです。同じ意味であるはずですが、トラブルの原因となる場合があります。

エラーメッセージCannot set LC_ALL to default locale: No such file or directoryは、おそらくen_US.UTF-8locale -aがない(代わりにen_US.utf8がある)ためですが、/etc/default/localeで宣言されています。

localeの出力にLANG=de_DE.UTF-8が表示されるのは少し混乱していますが、/etc/default/localeでは定義されておらず、/etc/locale.confはありません。システム設定を上書きするデスクトップ環境の設定でしょうか?または~/.bashrcで?また、~/.config/locale.confがあるかどうかも確認してください。環境変数を設定できる可能性のある場所は Arch wiki にリストされています。 LANG=de_DE.UTF-8が設定されている場所を見つけて削除します。


すべてをドイツ語のロケールに設定するのが最善の方法だと思います。 locale -aには、システムにインストールされているロケールが表示されます。それらの1つはde_DE.utf8です。

コア設定は/etc/default/localeにあります。あなたはそれを手動で編集でき、その内容はLANG=de_DE.utf8だけで他には何もないはずだと思います。ファイルを自分で編集するか、このためのツールを使用できます。

update-locale --reset LANG=de_DE.utf8

システムを英語で維持し、ウムラウトも使用するには、en_US.utf8にリストされているlocale -aにロケールを設定すると機能する場合があります。 utf8はウムラウトを提供しますが、言語はそれらを使用しません。

update-locale --reset LANG=en_US.utf8

祈りを話し、再起動して、すべてが正しいかどうかを確認します。コンソールは正常に機能するが、デスクトップ環境にまだ問題がある場合は、デスクトップ設定GUIで言語エントリを確認し、もde_DE.utf8に設定してください。

1
mviereck