解决 Arch Linux(KDE Plasma)中 Locale LANG=C 的问题

💡 原文中文,约1100字,阅读约需3分钟。
📝

内容提要

在 Arch Linux 上使用 Git 时遇到中文显示问题,执行 git config --global core.quotepath false 后无效。检查 locale 设置为 C,需改为 en_US.UTF-8。删除 Plasma 的 locale 配置文件并重启后解决了问题。

🔎

延伸解读

Git 中文乱码的根源可能不在 Git 本身

文章显示,即使设置了 core.quotepath false,Git 仍将中文显示为转义序列。问题实际出在系统 locale 被设为 C,而非 en_US.UTF-8。这提醒我们,遇到 Git 中文显示异常时,除了检查 Git 配置,还应确认终端和系统的 locale 设置,因为 C locale 不支持多字节字符,会导致 Git 输出被转义。

KDE Plasma 的 Region 设置会覆盖系统 locale

作者发现 KDE Plasma 的 Regional Settings 中将 Region 设为 Default (C),并写入了 ~/.config/plasma-localerc 文件,其中 LANG=C。这说明桌面环境的区域设置可能覆盖通过 localectl 配置的系统级 locale。在 Plasma 环境下,修改 locale 后若未生效,应检查该配置文件,避免桌面设置与系统设置冲突。

解决步骤:删除 Plasma 配置文件并重启

文章给出的解决方法是删除 ~/.config/plasma-localerc 并重启。重启后 Plasma 不再强制 LANG=C,系统 locale 恢复为 en_US.UTF-8,Git 中文显示恢复正常。这提示我们,在修改 locale 后,如果问题依旧,可以检查并清理桌面环境生成的覆盖配置,再重启使设置生效。

❓

Q&A

在 Arch Linux 上使用 Git 时遇到中文显示问题,应该如何解决?

可以通过执行 sudo localectl set-locale LANG=en_US.UTF-8 来修改 locale 设置。

为什么在 Arch Linux 上 Git 显示中文时会出现问题?

因为 locale 设置为 C,导致中文字符无法正确显示。

如何检查当前的 locale 设置?

可以通过在终端输入 locale 命令来检查当前的 locale 设置。

在 KDE Plasma 中如何修改 locale 设置?

可以通过系统设置中的区域设置选项,将 locale 设置为 en_US.UTF-8。

执行 git config --global core.quotepath false 后为什么仍然无法解决中文显示问题?

因为该命令只影响 Git 的输出格式,与 locale 设置无关。

删除 Plasma 的 locale 配置文件后需要做什么?

删除配置文件后需要重启系统以使更改生效。

🏷️

标签

➡️

继续阅读