插件核心能力是字符乱序匹配:哪怕拼音字母全部打颠倒,算法依然能算出最匹配的常用词汇并展示候选,高速打字、盲打、笔记本小键盘用户痛点完美解决。
效果
| 手滑输入 | 纠错为 | 候选词 |
|---|---|---|
wxoianig | woxiangni | 我想你 |
niaoh | nihao | 你好 |
jinaitn | jintian | 今天 |
zognghu | zhongguo | 中国 |
rugo | ruguo | 如果 |
jnjii | jingji | 经济 |
正常输入完全不受影响,只在检测到乱序时追加纠错候选词。
原理
三层评分组合匹配:
| 维度 | 算法 | 说明 |
|---|---|---|
| 字符多重集 | Sørensen-Dice | 容忍任意乱序 |
| 顺序保留度 | LCS (最长公共子序列) | 惩罚过度乱序 |
| 长度适配 | 指数衰减 | 偏好长度接近 |
当输入无法切分为合法拼音音节时触发匹配,在 254 条常用词库中搜索最佳匹配作为候选词。
安装
一键脚本
git clone https://github.com/linnin233/rime-fuzzy-pinyin
cd rime-fuzzy-pinyin
bash install.sh
脚本自动复制 Lua 、方案文件,写入default.custom.yaml配置,部署完成只需重新部署 Rime 。
手动安装
将rime/下两个 lua 文件复制到 Rime 目录lua文件夹;
复制rime_ice_fuzzy.schema.yaml到 Rime 根目录;
修改default.custom.yaml,新增方案列表:
schema_list:
- schema: rime_ice
- schema: rime_ice_fuzzy
执行 Rime 重新部署,切换「雾凇拼音・乱序纠错」方案使用。
启用
按 Ctrl+` (反引号) 打开 Rime 方案选单,选择 「雾凇拼音·乱序纠错」。
文件结构
rime-fuzzy-pinyin/
├── rime/
│ ├── fuzzy_corrector.lua # 核心匹配翻译器
│ ├── fuzzy_dict.lua # 拼音→中文词典 (254 条)
│ └── rime_ice_fuzzy.schema.yaml # 基于雾凇拼音的修改版 Schema
├── python/
│ ├── matcher.py # Python 版模糊匹配引擎 (独立测试用)
│ ├── pinyin_data.py # 拼音音节和词库数据
│ └── generate_lua_dict.py # 词典生成器
└── install.sh # 一键安装脚本
配置
在 rime_ice_fuzzy.schema.yaml 底部可调整参数:
fuzzy_corrector:
min_score: 0.65 # 最低匹配分 (0~1),越低越激进
min_input_len: 4 # 最短触发长度
max_candidates: 8 # 最多候选词数量
