skip to content
icePigeon's Blog

Manjaro 中命令行工具语言设置的问题

/ 2 min read

TL;DR

检查 Konsole 的语言首选项。 我设置了“美式英语-简体中文”,所以 $LANGUAGE 环境变量被覆写为 en_US:zh_CN:en_GB.UTF-8


花费了两个小时解决了一个非常愚蠢的问题。我把系统语言设置为英文,但一些命令行工具,如 nanosudo,仍然显示中文提示。

于是我首先检查了 $LANGUAGE 环境变量:

Terminal window
print $LANGUAGE
en_US:zh_CN:en_GB.UTF-8

这意味着如果程序找不到 en_US(美式英语)的本地化文件,它将会回退到 zh_CN(简体中文),然后回退到系统语言。

然而我在系统语言中将英式英语设置成了唯一的语言……

于是开始排查各种文件。我先后检查了:

# 系统默认语言环境
/etc/default/locale
# Shell 初始化文件
~/.zshrc
# KDE Plasma 的本地化配置文件
~/.config/plasma-localerc
/etc/vconsole.conf
/etc/locale.gen
/etc/locale.conf

均没有发现问题。

最后检查了 KDE 的默认终端 Konsole,发现它的语言设置为“美式英语-简体中文”,应该是它覆写了 $LANGUAGE 环境变量。

设置成“英式英语-美式英语”之后问题解决。