词库管理
TIP
该功能自 v2.5.0-beta9 起可用。
Xime 提供两套词库管理功能:个人词库和自定义短语,分别适用于不同的使用场景。
快速判断:该用哪个?
| 你的需求 | 用哪个? |
|---|---|
添加一个符合编码规则的词(如拼音全拼 ni hao) | ✅ 个人词库 |
添加一个简写/缩写(如 dd → 等等、yxdz → 邮箱) | ✅ 自定义短语 |
| 这个词只在拼音下用,五笔下不用 | ✅ 个人词库(按方案隔离) |
| 这个词所有方案都想用 | ✅ 自定义短语(全局共享) |
| 需要这个词参与造词/联想 | ✅ 个人词库 |
| 这是一个固定短语(邮箱、网址、地址),不需要造词 | ✅ 自定义短语 |
CAUTION
不要把简拼、缩写或不符合编码规则的词条放进个人词库。 否则会导致候选词混乱、输入卡顿甚至内存泄漏。
个人词库
个人词库是按方案隔离的个人词典。每个输入方案都有自己的个人词库文件:
pinyin_simp、t9_pinyin→user_simp_pinyin.dict.yamlwubi86→user_simp_wubi.dict.yaml
原理
个人词库通过 Rime 的两种机制实现:
- 固定音节表的方案(有
speller/algebra,如拼音)--- 使用translator/packs扩展包机制。编译时个人词库生成独立的.table.bin,运行时与主词典并行查询。 - 开放编码的方案(无
speller/algebra,如五笔)--- 使用import_tables合并词典,将主词典和个人词库合并成一个.table.bin编译。运行时查一个表即可。
两种方式都通过 .custom.yaml 配置,不会修改原始 .schema.yaml。
编码必须符合方案规则
个人词库中的词条编码必须遵循当前方案的编码规则,否则编译会出错或产生错误的候选。
✅ 正确示例(拼音方案)
nihao ni hao
shijie shi jie
mengqidelufei meng qi de lu fei✅ 正确示例(五笔方案)
永远的神 yfrp❌ 错误示例(拼音方案)—— 不要这样做
world world # 英文单词不应放在拼音词库
世界 s j # s j 不是有效拼音,导致 s 键候选混乱
蒙奇·D·路飞 meng qi d lu fei # D 不是有效拼音音节WARNING
在拼音词库中写入 s j 这样的无效编码,会导致按 s 时把所有以 s 开头的词语全部检出,造成候选词爆炸、输入法卡顿甚至闪退。个人词库只应包含合法的全拼编码。
适合
- 按方案管理的常用词
- 词条编码必须完整且符合方案规则(拼音用全拼、五笔用字根码)
- 希望该词参与自动造词和上下文联想
自定义短语
自定义短语是全局共享的短语,所有输入方案都可使用。存储在 custom_phrase.txt 文件中。
原理
自定义短语使用独立的 table_translator(db_class: stabledb)加载,运行期读取文本文件,不经过编译、不依赖主词典音节表。因此:
- 任意编码都可用,不受方案编码规则限制
- 添加后部署即可生效,无需等待编译
- 不会参与造词,是固定的文本映射
适合简拼、缩写、特殊编码
这是自定义短语的核心优势——你可以用任意编码来触发预定义的短语,完全不受方案编码规则约束。非常适合:
| 场景 | 编码 | 输出 |
|---|---|---|
| 常用口语 | dd | 等等 |
| 常用口语 | bzd | 不知道 |
| 常用口语 | cgg | 才刚刚 |
| 邮箱 | yxdz | [email protected] |
| 网址 | github | https://github.com |
| 个人信息 | dz | 北京市朝阳区... |
等等 dd 99
不知道 bzd 98
才刚刚 cgg 97
[email protected] yxdz 99
https://github.com github 88权重
自定义短语支持权重字段(第 3 列),权重越高排序越靠前。建议将常用短语权重设高(如 99),低频短语设低(如 1)。
注意事项
IMPORTANT
自定义短语中的词条不会参与造词。例如你把 的 设为 d,那么 的 将无法与其他词组合成新词。因此:
- ✅ 适合固定短语(邮箱、地址、常用语缩写)
- ❌ 不宜将单字全拼(
a、o、e、de)放入自定义短语,否则这些字无法参与造词
对比一览
| 个人词库 | 自定义短语 | |
|---|---|---|
| 作用域 | 按方案隔离 | 全局共享 |
| 编码规则 | 必须遵循方案编码规则(如全拼) | 任意编码(简拼、缩写均可) |
| 实现机制 | packs / import_tables 编译 | stabledb 运行期读取 |
| 部署需求 | 需要编译词典 | 仅需重载配置 |
| 参与造词 | ✅ 是 | ❌ 否 |
| 权重支持 | 支持 | 支持 |
| 适用场景 | 方案相关的完整编码词 | 缩写、邮箱、网址等固定短语 |
操作入口
设置 → 方案与词库:
- 词库管理 → 管理个人词库(切换方案、增删改查词条)
- 自定义短语 → 管理全局自定义短语(支持权重)
修改后需部署方案生效。