我最近遇到了一些locale
问题。我第一次注意到它是在尝试从终端运行 calibre 时。
正在运行calibre
返回:
WARNING: Failed to set default libc locale, using en_US.UTF-8
然后我跑了locale
,结果显示:
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_DE.UTF-8
LANGUAGE=
LC_CTYPE="en_DE.UTF-8"
LC_NUMERIC=de_DE.UTF-8
LC_TIME=en_NZ.UTF-8
LC_COLLATE="en_DE.UTF-8"
LC_MONETARY=de_DE.UTF-8
LC_MESSAGES="en_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=
经过一些研究我发现该文件/etc/environment
可能需要添加一些内容,但我感到困惑,因为它的内容似乎根本不相关:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
我该如何解决这个问题?我正在运行 Kubuntu 17.10。
编辑:我发现该文件/etc/default/locale
包含更有希望的内容:
# File generated by update-locale
LANG=en_US.UTF-8
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_MONETARY="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"
它看起来应该是这个样子的吗?
答案1
在评论中我指出你KDE 中什么东西可以覆盖我的区域设置,但您让我们知道该文件~/.kde/env/setlocale.sh
不在您的机器上。
我仍然认为这个问题与 Kubuntu/KDE 有某种关系。locale
输出中包含不存在的区域设置名称en_DE.UTF-8
,这就是错误消息的原因。
因此我建议你去 Kubuntu 的语言设置 GUI。你可能已经说过英语作为语言和德国作为国家/地区,不幸的是,这导致 Kubuntu 设置了这个不存在的区域设置。例如,尝试将国家/地区更改为丹麦,然后重新登录。希望这样可以设置区域设置en_DK.UTF-8
(已存在)。
该问题已被报告为错误 #1322968。
答案2
您看过这个帖子吗?我该如何解决我的语言环境问题? 这可以帮助我找到一些缺失的区域,看看是否适合您。
答案3
尝试:sudo dpkg-reconfigure locales