如何为 Spacemacs 正确配置区域设置?

如何为 Spacemacs 正确配置区域设置?

当我启动 Spacemacs 时,我得到一个由\u2502序列创建的盒子,我认为这是一个无法正确渲染的特定字符或颜色的盒子。以下是该命令的输出locale。我必须在全局或我的.bashrc等中应用哪些设置才能解决此问题?

LANG=en_GB
LANGUAGE=:en_GB.utf8
LC_CTYPE="en_GB"
LC_NUMERIC="en_GB"
LC_TIME="en_GB"
LC_COLLATE="en_GB"
LC_MONETARY="en_GB"
LC_MESSAGES="en_GB"
LC_PAPER="en_GB"
LC_NAME="en_GB"
LC_ADDRESS="en_GB"
LC_TELEPHONE="en_GB"
LC_MEASUREMENT="en_GB"
LC_IDENTIFICATION="en_GB"
LC_ALL=

答案1

我不知道 spacemacs 的具体情况,但这看起来像是一个编码问题。

你的性格已经是一个很好的考验了。

$ echo -e "\u2502" 
â

要设置 UTF-8 编码(这对于 ASCII 数据非常有用),请确保所有语言变量都包含 UTF-8。

这样做应该足够了:

export LC_ALL=en_GB.UTF-8
export LANG=en_GB.UTF-8
export LANGUAGE=en_GB.UTF-8

然后运行 ​​locale 来确认。

$ export LC_ALL=en_GB.UTF-8
$ export LANG=en_GB.UTF-8
$ export LANGUAGE=en_GB.UTF-8
$ locale
LANG=en_GB.UTF-8
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC="en_GB.UTF-8"
LC_TIME="en_GB.UTF-8"
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY="en_GB.UTF-8"
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER="en_GB.UTF-8"
LC_NAME="en_GB.UTF-8"
LC_ADDRESS="en_GB.UTF-8"
LC_TELEPHONE="en_GB.UTF-8"
LC_MEASUREMENT="en_GB.UTF-8"
LC_IDENTIFICATION="en_GB.UTF-8"
LC_ALL=en_GB.UTF-8

现在再次测试一下

$ echo -e "\u2502" 

这在你的 .bashrc 中应该可以解决它。

确保您的终端模拟器(如果有)实际上也使用正确的编码。我相信它应该正确地读取它$LC_TYPE,但有些人有设置可以在他们的偏好中覆盖它。

如果您还想设置/测试颜色,请确保您的术语变量中设置了 256 种颜色

export TERM="xterm-256color"

256colors.pl 是一个很好的测试https://gist.github.com/hSATAC/1095100

相关内容