雾凇拼音(rime-ice)配置记录
环境:Linux(KDE Plasma / fcitx5 5.1.12 / librime 1.13.1)
记录时间:2026-09-16
一、配置背景
原有方案:fcitx5 + Rime + 朙月拼音简体(luna_pinyin_simp),系统自带词库,
痛点:词库质量差,常用词靠后,新词/网络用语缺失,候选排序不稳定。
最终方案:fcitx5 + 雾凇拼音(rime-ice)全拼,只用全拼,不要双拼/英文混输。
二、安装过程
1. 克隆雾凇拼音仓库
bash
cd ~/.local/share/fcitx5/rime
git clone --depth 1 https://github.com/iDvel/rime-ice.git rime-ice
2. 拷贝文件到 user 目录
把以下文件拷入 ~/.local/share/fcitx5/rime/:
default.yaml(完整官方版,不能用精简版)rime_ice.schema.yamlrime_ice.dict.yamlcn_dicts/(词库目录,含 8105、base、ext、tencent、others)en_dicts/(英文词库,后来已删除)lua/(lua 脚本目录)opencc/(繁简转换配置)squirrel.yaml(可选)symbols_v.yaml/symbols_caps_v.yamlpunctuation.yaml/key_bindings.yaml/pinyin.yaml(从/usr/share/rime-data/拷入)
⚠️ 系统共享目录的
punctuation.yaml和key_bindings.yaml必须拷进 user 目录,雾凇的 schema 靠
__include: default:/punctuator引用它们,缺了就构建失败。
3. 精简 default.yaml
保留方案列表:
yaml
schema_list:
- schema: rime_ice # 雾凇全拼
- schema: melt_eng # 英文(后来已删除)
双拼、九键、仓、元书全部注释掉。
4. user.yaml 设置默认方案
yaml
var:
default_schema: rime_ice
previously_selected_schema: rime_ice
5. 重建部署
bash
cd ~/.local/share/fcitx5/rime
rm -rf build sync
pkill -u $(id -u) fcitx5
setsid nohup fcitx5 -d -u $(id -u) > /tmp/fcitx5.log 2>&1 < /dev/null &
sleep 12 # tencent 大词库首次部署需 10-30 秒
三、踩过的坑(重点)
坑 1:精简版 default.yaml 导致构建失败
自己手写的精简 default.yaml 漏了 punctuator、key_binder、recognizer、
ascii_composer 等段落,雾凇 schema 通过 __include: default:/punctuator 引用,
缺字段直接报 unresolved dependency 构建失败。
修法 :换回雾凇官方完整版 default.yaml,只注释不需要的方案行。
坑 2:rime_ice.schema.yaml.custom patch 机制不生效
试过用 *.schema.yaml.custom 文件做 patch(Rime 官方推荐的配置覆盖方式),
在本环境的 fcitx5-rime 5.1.10 上不生效,build 结果完全没应用 patch。
修法 :直接改 user 目录下的 rime_ice.schema.yaml 本体。
坑 3:候选词右侧有拼音注释(corrector.lua)
雾凇默认开启 lua_filter@*corrector(错音错字提示),
配合 always_show_comments: true + spelling_hints: 8,
候选词右侧一直显示拼音注释,干扰使用。
修法 (直接改 rime_ice.schema.yaml):
yaml
# 删掉这行:
- lua_filter@*corrector
# 改这三处:
spelling_hints: 0
always_show_comments: false
comment_format: []
坑 4:英文混输干扰中文候选
雾凇默认挂载 melt_eng(英文词库)和 cn_en(中英混输词库)两个次翻译器,
打 bus、bug 这种短字母串时英文词直接赢过中文候选。
修法 (改 rime_ice.schema.yaml):
yaml
# translators 段注释掉:
# - table_translator@melt_eng
# - table_translator@cn_en
同时删除 melt_eng.schema.yaml、melt_eng.dict.yaml、en_dicts/ 目录,
并从 default.yaml 的 schema_list 删掉 melt_eng。
坑 5:用户词库功能被禁用(无记忆)
雾凇主 translator 默认 enable_user_dict: false,
删掉 rime_ice.userdb 后打多少遍候选都不变,永远按初始词库权重走。
修法 (改 rime_ice.schema.yaml 主 translator 段):
yaml
enable_user_dict: true
改完重建,rime_ice.userdb 会生成,之后每次选词都会记入用户词库。
坑 6:lua 插件未安装(置顶候选、长词优先全部失效)
Debian 官方 librime1t64 包没有编译 Lua 支持 ,
所有 lua_filter / lua_processor 静默报错,日志满屏
error creating filter: 'lua_filter',pin_cand_filter(置顶候选)、
long_word_filter(长词优先)全部失效。
修法:
bash
sudo apt install librime-plugin-lua
装完重建 fcitx5,日志里 lua 报错消失,功能恢复正常。
四、Shift 切英文 / 打英文
默认配置里 Shift_L 是 commit_code(Shift+回车上屏),不能临时切英文。
修法 (改 default.yaml 的 ascii_composer 段):
yaml
switch_key:
Shift_L: inline_ascii # 按 Shift 时临时英文,松开自动回中文
注意:之前误把
ascii_composer整段注释掉了导致 Shift 完全失效,后来恢复
ascii_composer并改Shift_L为inline_ascii。
五、重置词频 / 清理污染
bash
cd ~/.local/share/fcitx5/rime
rm -rf rime_ice.userdb sync build
pkill -u $(id -u) fcitx5
setsid nohup fcitx5 -d -u $(id -u) > /tmp/fcitx5.log 2>&1 < /dev/null &
sleep 12
rime_ice.userdb 是用户词库(Leveldb 格式),记录每个词的使用频率,
删掉就是完全重置。sync/ 是 Rime 的内部同步目录,也一并清掉。
六、当前 user 目录最终状态
~/.local/share/fcitx5/rime/
├── build/ # 构建产物(可删重建)
├── cn_dicts/ # 雾凇中文词库(8105字表、base、ext、tencent、others)
├── custom_phrase.txt # 自定义短语
├── default.yaml # 全局配置(只保留 rime_ice)
├── installation.yaml
├── key_bindings.yaml # 从系统共享目录拷入
├── lua/ # lua 脚本(需要 librime-plugin-lua 支持)
├── opencc/ # 繁简转换配置
├── pinyin.yaml # 从系统共享目录拷入
├── punctuation.yaml # 从系统共享目录拷入
├── radical_pinyin.* # 部件拆字反查
├── rime_ice.dict.yaml # 雾凇主词库配置
├── rime_ice.schema.yaml # 雾凇全拼方案(已修改,见上)
├── rime_ice.userdb/ # 用户词库(动态生成,记录词频)
├── squirrel.yaml
├── symbols_caps_v.yaml
├── symbols_v.yaml
└── user.yaml # default_schema: rime_ice
已删除的文件:
melt_eng.schema.yaml/melt_eng.dict.yamlen_dicts/目录sync/目录(每次重置时删)
七、快捷操作备忘
| 操作 | 命令 |
|---|---|
| 重置词频(清 userdb) | cd ~/.local/share/fcitx5/rime && rm -rf rime_ice.userdb build sync && pkill -u $(id -u) fcitx5 && setsid nohup fcitx5 -d -u $(id -u) > /tmp/fc5.log 2>&1 & |
| 重新部署(拉取新词库后) | cd ~/.local/share/fcitx5/rime && rm -rf build && pkill -u $(id -u) fcitx5 && setsid nohup fcitx5 -d -u $(id -u) > /tmp/fc5.log 2>&1 & |
| 查看 fcitx5 日志 | `grep -aE "error |
| 查看当前 build 里 lua 是否生效 | `strings ~/.local/share/fcitx5/rime/build/rime_ice.schema.yaml |
八、升级雾凇词库
bash
cd ~/.local/share/fcitx5/rime
# 重新 clone 到临时目录,只拷词库文件(保留已改的 schema)
git clone --depth 1 https://github.com/iDvel/rime-ice.git /tmp/rime-ice-upd
cp /tmp/rime-ice-upd/cn_dicts/*.dict.yaml cn_dicts/
rm -rf /tmp/rime-ice-upd
# 重建
rm -rf build && pkill -u $(id -u) fcitx5
setsid nohup fcitx5 -d -u $(id -u) > /tmp/fc5.log 2>&1 < /dev/null &
⚠️ 升级词库不要覆盖
rime_ice.schema.yaml(已大量修改),只更新cn_dicts/里的词库数据。