Arch Linux - 中文乱码问题

解决中文乱码问题,可以参考这这篇文章:Localization/Simplified Chinese

主要分成3个步骤

  1. locale配置
  2. 中文字体
  3. 不同软件的字体设置

locale配置

locale配置,其实是配置locale的环境变量

  1. LANGUAGE
  2. LC_ALL
  3. LC_xxx, xxx表示不同的分类:CTYPE, TIME, ...
  4. LANG

可以执行命令locale查看当前配置,关于这些locale环境变量更详细内容可以查看: 

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

注意:设置LC_ALL变量,会覆盖除了LANGUAGE之外的所有locale环境变量,因此尽量不要使用它。

安装中文locale

推荐使用UTF-8的locale,将en_US.UTF-8zh_CN.UTF-8的注释从配置文件/etc/locale.gen去掉,即删除行首的#

# /etc/locale.gen
en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8

然后执行

sudo locale-gen

配置LANG和LANGUAGE

设置locale全局配置文件/etc/locale.conf ,但不推荐在该文件中配置全局的中文locale,会导致 tty 乱码。

# /etc/locale.conf
LANG=en_US.UTF-8

不同的用户可以在下列文件中,设置各自的环境变量。如果对英文还算习惯,该步骤可以略去。

  • ~/.bashrc:每次使用终端登录时读取并运用里面的设置。
  • ~/.xinitrc:每次使用 startx 或 SLiM 启动 X 界面时读取并运用里面的设置。
  • ~/.xprofile:每次使用 GDM 等显示管理器登录时读取并运用里面的设置。
export LANG=zh_CN.UTF-8
export LANGUAGE=zh_CN:en_US

安装字体

推荐安装noto-fonts-cjk

sudo pacman -S noto-fonts-cjk

不同软件的字体设置

firefox

简体中文用户安装 firefox-i18n-zh-cn

sudo pacman -S firefox-i18n-zh-cn

i3wm

在配置文件~/.config/i3/config中修改font配置

font pango:Noto Momo, Noto Scans Mono CJK SC 10

 

编辑于 2021-07-01 09:24
posted @   憨厚的小怪  阅读(155)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示