【Arch Linux】本地化:简体中文
本文主要介绍 Arch Linux 本地化为简体中文的操作。
本文的测试环境是 KDE Plasma + SDDM + Wayland。考虑到 Xorg 教程较多,且大部分操作通用,本文会存在 Xorg 和 Wayland 混合描述的情况。
必要配置
不建议用户日常使用 root 帐户,则此时用户的当前帐户建议拥有 sudo 权限。安装 sudo
包。
同时部分本地化安装包在 AUR 源中,建议用户安装 AUR helper。本文以 yay
为例。
生成语言环境^1
编辑 /etc/locale.gen
,找到 #en_US.UTF-8 UTF-8
和 #zh_CN.UTF-8 UTF-8
,删除前面的注释符号“#”。
再生成语言环境文件:
1 | sudo locale-gen |
为保证大部分程序和终端环境显示正常,在 /etc/locale.conf
中设置 LANG
环境变量:
1 | LANG=en_US.UTF-8 |
(可选)为 Xorg 图形界面设置中文语言环境
编辑 ~/.xinitrc
或 ~/.xprofile
:
1 | export LANG=zh_CN.UTF-8 |
显示简体中文字体
此时图形界面的中文显示一般是异常的。这可以通过安装相关字体解决。
安装字体^2
1 | sudo pacman -S wqy-microhei wqy-microhei-lite wqy-bitmapfont wqy-zenhei ttf-arphic-ukai ttf-arphic-uming adobe-source-han-sans-cn-fonts adobe-source-han-serif-cn-fonts noto-fonts-cjk |
可选 AUR 源中 ttf-ms-win11-auto-*
相关的包(存在已知问题,见下文)。
一般此时字体缓存已刷新。若无:
1 | fc-cache -fv |
可以通过类似下述命令验证字体缓存:
1 | fc-match -s | grep 'Noto Sans CJK' |
ttf-ms-win11-auto-*
相关包无效
参见 ttf-ms-win11-auto
AUR 包详情页面下的评论:
It still throws
ln: failed to create symbolic link '/home/<User>/.cache/yay/ttf-ms-win11-auto/src/' -> '': No such file or directory
warnings when I install the package via yay. Manually copy/move the font files from~/.cache/yay/ttf-ms-win11-auto/src
to/usr/share/fonts
andfc-cache -fv
can solve the problem.
因此,读者只需查看 AUR 包的缓存(如 ~/.cache/yay/ttf-ms-win11-auto
),找到其中的字体文件,或是解压其中的压缩包(如 ttf-ms-win11-auto-zh_cn-10.0.22000.318-2-any.pkg.tar.zst
)得到字体文件,将其复制到 /usr/share/fonts
并重新生成字体缓存即可。
修复简体中文字符显示为日文的问题^3
新建文件 /etc/fonts/conf.avail/64-language-selector-prefer.conf
:
若安装 noto-fonts-cjk 包:
1 |
|
若安装 adobe-source-han-sans-otc-fonts 包:
1 |
|
然后新建软链接应用配置:
1 | sudo ln -s /etc/fonts/conf.avail/64-language-selector-prefer.conf /etc/fonts/conf.d/64-language-selector-prefer.conf |
随后刷新字体缓存生效:
1 | fc-cache -fv |
中文输入法
本文使用 Fcitx 5 框架配套 Rime 输入法引擎和 Clover Pinyin(四叶草拼音)输入方案。
Fcitx 5
安装^4
1 | sudo pacman -S fcitx5 fcitx5-qt fcitx5-gtk fcitx5-configtool |
在 Xorg 环境下,编辑 ~/.xprofile
:^5
1 | export GTK_IM_MODULE=fcitx5 |
在 Wayland 环境下,编辑 /etc/environment
:
1 | GTK_IM_MODULE=fcitx |
注销会话或重启。
外观
本文使用 Material Color 皮肤。
1 | sudo pacman -S fcitx5-material-color |
再编辑 Fcitx 5 的配置文件 ~/.config/fcitx5/conf/classicui.conf
:^6
1 | # 垂直候选列表 |
诊断工具
1 | fcitx5-diagnose |
Rime
安装
1 | sudo pacman -S fcitx5-rime |
重启 Fcitx 5。依次 System Settings -> Regional Settings -> Input Method -> Add Input Method… -> Only Show Current Language [Uncheck] -> Rime(中州韻)来激活输入法。
注意:Rime 系统目录位于 /usr/share/rime-data
。本地目录 ~/.local/share/fcitx5/rime
可以覆盖前者的配置。
单行模式
单行模式类似于 Windows 10 中微软拼音的默认行为:输入的拼音序列能同时键入到文本中,待选定候选词后才将其替换为对应的词。
编辑 ~/.config/fcitx5/conf/rime.conf
:^7
1 | # 可用时在应用程序中显示预编辑文本(开启单行模式) |
Clover Pinyin
安装
1 | yay -S rime-cloverpinyin |
编辑 ~/.local/share/fcitx5/rime/default.custom.yaml
:
1 | patch: |
重启 Fcitx 5。
注意:Clover Pinyin 有关快捷键等配置位于 ~/.local/share/fcitx5/rime/build/clover.schema.yaml
。
Emoji
1 | sudo pacman -S noto-fonts-emoji |
注销会话或重启。
特殊符号
指输入特殊符号拼音出现候选词(如“pingfang”出现“²”),或输入“/xx”(“xx”表示一些英文字母的组合)出现一类候选词(如“/sx”出现数学相关特殊符号)。
对于前者,目前尚无较好的解决方案。
对于后者,参考该回复。
注意:特殊符号支持存在已知问题,可能导致内存溢出,可以通过如下命令简单修复:^8
1 | python -c "$(curl -fsSL https://github.com/fkxxyz/rime-symbols/raw/master/rime-symbols-gen)" |
重新部署 Rime。
参考
【Arch Linux】本地化:简体中文
https://blog.tamako.work/techdev/arch/localization-simplified-chinese/
1.Android 使用 Gradle 命令行签名 APK
2.Arch Linux 安装 TiddlyWiki + 配置服务 + 添加自定义插件 + Cloudflare 代理 + Caddy 反向代理
3.Arch Linux 在 ASUS Zenbook S 13 OLED (UM5302TA) 上的 patch
4.使用 GPG 加密、解密和验证信息
5.Kotlin 简要语法快速学习
6.【Arch Linux】使用 Wine 运行 Galgame
7.【Arch Linux】编译安装 AUR 上的 Linux 内核
8.Arch Linux 物理机安装大体思路和部分实现细节(MBR & GPT)
1.【ACG音乐分享】Ceui《今、歩き出す君へ》
2.使用 GPG 加密、解密和验证信息
3.【翻译】如何编写 Git 提交消息
4.Linux 时间操作及其同步
5.【实测】Python 和 C++ 下字符串查找的速度对比
6.Codeforces 1312B: Bogosort