Rime 雾凇拼音配置记录(Windows / Linux 通用)
Rime 引擎核心配置跨平台通用,差异只在前端框架和文件路径。
|
Windows |
Linux (Arch) |
| 输入法框架 |
小狼毫 Weasel |
fcitx5-rime |
| 用户目录 |
%AppData%\Rime\ |
~/.local/share/fcitx5/rime/ |
| 系统数据 |
无(全在用户目录) |
/usr/share/rime-data/(包管理器安装) |
| 皮肤/主题 |
weasel.custom.yaml |
~/.config/fcitx5/conf/classicui.conf |
| 中英切换 |
Rime 内部 Shift |
fcitx5 全局切换 |
| 部署命令 |
托盘图标右键 |
fcitx5 -r 或 rime_deployer --build |
跨平台迁移见《万象大模型Rime配置备忘》。
1. 首字母简拼 + 全拼简拼混合输入
编辑 rime_ice.custom.yaml:
1 2 3 4 5 6 7 8 9 10 11
| patch: translator/enable_completion: true translator/enable_sentence: true "melt_eng/initial_quality": 0.1 "speller/algebra/+": - derive/^([a-z]).+$/$1/ - derive/^([zcs]h).+$/$1/
|
关键说明
| 配置项 |
作用 |
enable_completion |
自动补全,输入首字母能匹配完整拼音 |
enable_sentence |
造词支持,允许全拼+简拼混合输入 |
initial_quality |
权重,英文设 0.1 低于中文 1.2,英文不会出现在中文候选前 |
derive vs abbrev |
derive 保留原拼音派生新规则,abbrev 是缩写替换 |
2. 禁用 RIME 内部的英数模式(Shift 切换英文)
编辑 default.custom.yaml:
1 2 3 4 5 6 7
| patch: schema_list: - {schema: rime_ice} ascii_composer: switch_key: Shift_L: noop Shift_R: noop
|
将 Shift_L / Shift_R 设为 noop 后,按 Shift 不会触发 Rime 内部的英数模式。
| 平台 |
说明 |
| Linux fcitx5 |
fcitx5 有自己的中英文切换热键(fcitx5-configtool 中设置),禁用 Rime 内部 Shift 可避免双重切换冲突 |
| Windows 小狼毫 |
小狼毫默认使用 Shift 切换中英文,如禁用则需靠托盘图标或自定义快捷键切换 |
3. Windows 特有:关闭中英文切换提示图标
编辑 weasel.custom.yaml:
1 2
| patch: "show_notifications": false
|
show_notifications 设为 false 后,切换中英文时不再弹出提示图标。Weasel 是 Windows 前端,Linux/macOS 无此文件。
4. 模糊拼音(zh/ch/sh 等)
| 平台 |
默认状态 |
原因 |
| Windows 小狼毫 |
已启用 |
发行版 rime_ice.schema.yaml 内置 |
Linux rime-ice-git (AUR) |
禁用 |
使用官方源码,默认不开启模糊拼音 |
如需在 Linux 启用(写入 rime_ice.custom.yaml 的 speller/algebra/+):
如需启用(写入 rime_ice.custom.yaml 的 speller/algebra/+):
1 2 3 4 5 6 7 8 9 10 11
| patch: "speller/algebra/+": - derive/^([zcs])h/$1/ - derive/^([zcs])([^h])/$1h$2/ - derive/ang$/an/ - derive/an$/ang/ - derive/en$/eng/ - derive/in$/ing/ - derive/ian$/iang/ - derive/uan$/uang/ - derive/un$/ong/
|
或将 Windows 的 rime_ice.schema.yaml 直接复制到用户目录覆盖(推荐,省心)。
5. 注意事项
- 每次修改配置后,必须重新部署
- Windows: 托盘图标右键 → 重新部署
- Linux:
fcitx5 -r 或 rime_deployer --build ~/.local/share/fcitx5/rime /usr/share/rime-data ~/.local/share/fcitx5/rime/build
*.custom.yaml 中的 patch 会覆盖原 *.schema.yaml 或 default.yaml 的对应配置
- Linux: 用户目录
~/.local/share/fcitx5/rime/ 的文件优先于系统目录 /usr/share/rime-data/
- Windows: 所有文件都在用户目录,无系统级目录
- 如需备份,创建
.back 后缀文件:rime_ice.custom.yaml.back
6. Linux 精简(仅用雾凇拼音时)
从 Windows 同步过来的 Rime 目录可能包含双拼、T9 等不需要的方案文件,可安全删除:
1 2 3 4 5 6 7
| RIME_DIR="$HOME/.local/share/fcitx5/rime"
rm -f "$RIME_DIR"/double_pinyin*.schema.yaml rm -f "$RIME_DIR"/t9.schema.yaml
rm -rf "$RIME_DIR"/luna_pinyin.userdb
|
保留不动的依赖项(rime_ice 引用它们):
melt_eng.* — 英文输入翻译器
radical_pinyin.* — 部件拆字反查
部署后通过 fcitx5 -r 重启输入法即可让新配置生效(rime_deployer 无法直接刷新 default.yaml,需由 fcitx5 完成合并)。
7. Linux 主题/皮肤(classicui)
平台差异:Linux 上 fcitx5-rime 的界面由 fcitx5 的 classicui 插件渲染,不由 Rime 内部控制。weasel.custom.yaml(Windows)、squirrel.yaml(macOS)的颜色方案在 Linux 上无效。
配置文件
~/.config/fcitx5/conf/classicui.conf
关键字段:
1 2 3 4
| Theme=Matugen DarkTheme=default-dark Font="Sans Serif 11" Vertical Candidate List=True
|
系统自带主题
1 2
| ls /usr/share/fcitx5/themes/
|
安装第三方主题(AUR)
1 2
| paru -S fcitx5-material-color paru -S fcitx5-nord
|
安装后主题出现在 /usr/share/fcitx5/themes/,在 classicui.conf 中写名字即可。切换后 fcitx5 -r 重启生效。
自定义主题(matugen 自动生成)
如果系统安装了 matugen(基于壁纸自动生成配色方案),可生成 fcitx5 主题到 ~/.local/share/fcitx5/themes/Matugen/,实现与桌面风格统一。
8. fcitx5 + Matugen 主题半透明背景
目标
让 fcitx5 候选框在不同应用里都使用半透明背景,避免有的应用显示为纯黑、有的应用显示为半透明。
相关文件
1 2 3 4 5 6 7 8 9 10 11
| ~/.local/share/fcitx5/themes/Matugen/theme.conf
~/.config/matugen/templates/fcitx5-theme.conf
~/.config/matugen/config.toml
~/.config/fcitx5/conf/classicui.conf
|
classicui.conf 中需要确认:
1 2
| Theme=Matugen UseDarkTheme=False
|
半透明写法
fcitx5 主题颜色支持 #RRGGBBAA,例如 #1f1f21cc。其中 cc 约等于 80% 不透明。
当前主题:
1 2 3 4 5
| [InputPanel/Background] Color=
[Menu/Background] Color=
|
matugen 模板:
1 2 3 4 5
| [InputPanel/Background] Color={{colors.surface_container.default.hex}}cc
[Menu/Background] Color={{colors.surface_container.default.hex}}cc
|
圆角踩坑
fcitx5 classicui 的普通 theme.conf 没有稳定可用的 Radius / CornerRadius 字段。尝试给背景加 Image=panel-bg.svg 并使用圆角 SVG 后,实际不生效。结论:
- 半透明颜色可用,推荐使用
#RRGGBBAA
- 圆角不要用 SVG 背景方案作为 SOP,fcitx5 classicui 不可靠
- 如确实需要圆角,优先寻找专门支持九宫格图片/边框的 fcitx5 主题示例,再做测试
重新加载
如果在脚本或受控终端里重启失败,优先在桌面会话里执行,或通过托盘菜单重新加载。
9. Rime 方案列表只显示部分方案
现象
F4 方案菜单或 fcitx5 Rime 子菜单里只显示:
其他双拼、九键等方案不显示。
原因
default.custom.yaml 中的 schema_list 会覆盖 default.yaml 的默认方案列表。如果这里只写了 rime_ice,菜单就只会显示雾凇拼音。
检查:
1
| sed -n '1,80p' ~/.local/share/fcitx5/rime/default.custom.yaml
|
示例,仅启用雾凇全拼和白霜全拼:
1 2 3 4
| patch: schema_list: - {schema: rime_ice} - {schema: rime_frost}
|
不想要双拼时,不要加入:
1 2
| - {schema: double_pinyin} - {schema: double_pinyin_flypy}
|
部署
1 2 3 4
| rime_deployer --build \ "$HOME/.local/share/fcitx5/rime" \ /usr/share/rime-data \ "$HOME/.local/share/fcitx5/rime/build"
|
验证:
1
| sed -n '/^schema_list:/,/^switcher:/p' ~/.local/share/fcitx5/rime/build/default.yaml
|
10. 白霜拼音全拼与雾凇拼音共存
目标
添加白霜拼音全拼,但保留雾凇拼音,不启用双拼。
推荐原则
不要直接把白霜的 cn_dicts/ 覆盖到现有 Rime 目录。雾凇和白霜都有同名词库目录,直接覆盖会让雾凇也使用白霜词库,不是真正共存。
推荐做法:
- 白霜 schema 放在 Rime 根目录
- 白霜词库放进独立目录,例如
frost_cn_dicts/、frost_cn_dicts_cell/
- 修改
rime_frost.dict.yaml 的 import_tables 指向独立目录
default.custom.yaml 只启用 rime_ice 和 rime_frost
下载白霜
1
| git clone --depth 1 https://github.com/gaboolic/rime-frost /tmp/rime-frost
|
复制全拼必要文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| RIME_DIR="$HOME/.local/share/fcitx5/rime"
cp /tmp/rime-frost/rime_frost.schema.yaml "$RIME_DIR/" cp /tmp/rime-frost/rime_frost.dict.yaml "$RIME_DIR/" cp /tmp/rime-frost/rime_frost_aux.schema.yaml "$RIME_DIR/" cp /tmp/rime-frost/rime_frost_aux.dict.yaml "$RIME_DIR/"
cp -a /tmp/rime-frost/cn_dicts "$RIME_DIR/frost_cn_dicts" cp -a /tmp/rime-frost/cn_dicts_cell "$RIME_DIR/frost_cn_dicts_cell"
cp -a /tmp/rime-frost/lua/aux_code "$RIME_DIR/lua/aux_code" cp /tmp/rime-frost/lua/aux_lookup_filter.lua "$RIME_DIR/lua/" cp /tmp/rime-frost/lua/calculator.lua "$RIME_DIR/lua/"
cp /tmp/rime-frost/opencc/chinese_english.json "$RIME_DIR/opencc/" cp /tmp/rime-frost/opencc/chinese_english.txt "$RIME_DIR/opencc/" cp /tmp/rime-frost/opencc/english_chinese.txt "$RIME_DIR/opencc/" cp /tmp/rime-frost/opencc/martian.json "$RIME_DIR/opencc/" cp /tmp/rime-frost/opencc/martian.txt "$RIME_DIR/opencc/" cp /tmp/rime-frost/opencc/moqi_chaifen.json "$RIME_DIR/opencc/" cp /tmp/rime-frost/opencc/moqi_chaifen.txt "$RIME_DIR/opencc/" cp /tmp/rime-frost/opencc/moqi_chaifen_all.json "$RIME_DIR/opencc/" cp /tmp/rime-frost/opencc/moqi_chaifen_all.txt "$RIME_DIR/opencc/" cp /tmp/rime-frost/opencc/moqi_chaifen_rongcuo.txt "$RIME_DIR/opencc/" cp /tmp/rime-frost/opencc/s2t.json "$RIME_DIR/opencc/" cp /tmp/rime-frost/opencc/s2hk.json "$RIME_DIR/opencc/" cp /tmp/rime-frost/opencc/s2tw.json "$RIME_DIR/opencc/" cp /tmp/rime-frost/opencc/s2twp.json "$RIME_DIR/opencc/"
|
修改白霜词库入口
编辑:
1
| ~/.local/share/fcitx5/rime/rime_frost.dict.yaml
|
把白霜默认的:
1 2 3 4 5
| import_tables: - cn_dicts/8105 - cn_dicts/base - cn_dicts/ext - cn_dicts_cell/medication
|
改为独立目录:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| import_tables: - frost_cn_dicts/8105 - frost_cn_dicts/41448 - frost_cn_dicts/GB18030-2022 - frost_cn_dicts/base - frost_cn_dicts/ext - frost_cn_dicts/others - frost_cn_dicts/corrections - frost_cn_dicts_cell/medication - frost_cn_dicts_cell/industry_product - frost_cn_dicts_cell/exthot - frost_cn_dicts_cell/chess - frost_cn_dicts_cell/chess2 - frost_cn_dicts_cell/animal - frost_cn_dicts_cell/game - frost_cn_dicts_cell/idiom - frost_cn_dicts_cell/sport - frost_cn_dicts_cell/media - frost_cn_dicts_cell/shulihua - frost_cn_dicts_cell/food - frost_cn_dicts_cell/inputmethod - frost_cn_dicts_cell/history - frost_cn_dicts_cell/place - frost_cn_dicts_cell/geography - frost_cn_dicts_cell/name2 - frost_cn_dicts_cell/literature - frost_cn_dicts_cell/music - frost_cn_dicts_cell/computer - frost_cn_dicts_cell/composite - frost_cn_dicts_cell/luna - frost_cn_dicts_cell/name
|
启用两个全拼方案
~/.local/share/fcitx5/rime/default.custom.yaml:
1 2 3 4
| patch: schema_list: - {schema: rime_ice} - {schema: rime_frost}
|
部署和验证
1 2 3 4 5 6 7 8 9
| rime_deployer --build \ "$HOME/.local/share/fcitx5/rime" \ /usr/share/rime-data \ "$HOME/.local/share/fcitx5/rime/build"
find "$HOME/.local/share/fcitx5/rime/build" -maxdepth 1 -type f \ | sed 's#^.*/##' \ | sort \ | grep -E 'rime_frost|rime_ice'
|
应看到:
1 2 3 4 5 6 7 8 9
| rime_frost.prism.bin rime_frost.schema.yaml rime_frost.table.bin rime_frost_aux.prism.bin rime_frost_aux.schema.yaml rime_frost_aux.table.bin rime_ice.prism.bin rime_ice.schema.yaml rime_ice.table.bin
|
最后刷新输入法:
F4 菜单应只出现两个中文全拼方案:
关闭白霜候选右侧拼音提示
白霜默认会在候选右侧显示拼音 comment,这是为了配合错音错字提示功能。相关默认配置在 rime_frost.schema.yaml:
1 2 3 4 5 6
| translator: spelling_hints: 8 always_show_comments: true comment_format: - xform/^/[/ - xform/$/]/
|
如果不想显示候选拼音提示,不要直接改 rime_frost.schema.yaml,新建或编辑:
1
| ~/.local/share/fcitx5/rime/rime_frost.custom.yaml
|
写入:
1 2 3 4
| patch: translator/spelling_hints: 0 translator/always_show_comments: false translator/comment_format: []
|
部署后验证:
1 2 3 4 5 6 7
| rime_deployer --build \ "$HOME/.local/share/fcitx5/rime" \ /usr/share/rime-data \ "$HOME/.local/share/fcitx5/rime/build"
grep -nE 'spelling_hints|always_show_comments|comment_format' \ "$HOME/.local/share/fcitx5/rime/build/rime_frost.schema.yaml"
|
去掉白霜候选右侧星号
候选右侧的 * 不是拼音提示,而是白霜的用户词典标记过滤器加的:
1
| - lua_filter@*is_in_user_dict
|
对应脚本:
1
| ~/.local/share/fcitx5/rime/lua/is_in_user_dict.lua
|
脚本作用:根据候选是否来自用户词典,在 comment 后追加 *。
要关闭星号,需要在 rime_frost.custom.yaml 中重写 engine/filters,去掉 lua_filter@*is_in_user_dict,同时保留其他过滤器:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| patch: translator/spelling_hints: 0 translator/always_show_comments: false translator/comment_format: [] engine/filters: - lua_filter@*corrector - reverse_lookup_filter@radical_reverse_lookup - lua_filter@*autocap_filter - lua_filter@*v_filter - lua_filter@*pin_cand_filter - lua_filter@*reduce_english_filter - lua_filter@*aux_lookup_filter - simplifier@emoji - simplifier@chaifen - simplifier@chaifen_all - simplifier@chinese_english - simplifier@traditionalize - simplifier@mars - uniquifier
|
部署后验证:
1 2 3 4 5 6 7 8
| rime_deployer --build \ "$HOME/.local/share/fcitx5/rime" \ /usr/share/rime-data \ "$HOME/.local/share/fcitx5/rime/build"
sed -n '/^engine:/,/^grammar:/p' \ "$HOME/.local/share/fcitx5/rime/build/rime_frost.schema.yaml" \ | grep is_in_user_dict
|
如果没有输出,说明星号过滤器已移除。
最后刷新输入法: