问云( rime‑wenyun )是一款 librime‑lua 实现的按需云端候选插件,填补 Rime 生态中双拼、辅助码方案缺少云输入的空白。
传统云输入插件大多只适配全拼,直接把原始编码提交云端,无法处理双拼 / 辅码编码;而问云利用 Rime 内置spelling_hints拼写提示接口,在引擎内部自动还原出无调全拼,再调用云端接口获取新词、人名、网络热词。
采用按需触发设计:平时完全本地运行,不会自发联网;遇到本地词库打不出的人名、网络新词,按下快捷键才发起网络请求,上屏后的云词汇自动存入本地记忆库,下次直接离线可用。 Windows 小狼毫、 mac 鼠须管、 Linux fcitx5‑rime /ibus‑rime 全前端通用,兼容小鹤双拼、自然码双拼、各类辅助码体系,万象、雾凇等主流方案均可挂载。
核心痛点: Rime 本地词库更新周期长,大量新晋人名、网络梗不会出现在本地词库,双拼用户一直缺少成熟可用的云补全手段。
核心功能
1. 双拼 & 辅助码原生兼容(项目最大亮点)
不依赖外部编码转换表,读取翻译器输出的spelling_hints注释,直接从双拼 / 辅码编码还原标准无调全拼。
自然码、小鹤、搜狗双拼,搭配各类字形辅助码都可以直接使用,这是早期librime‑cloud插件不具备的能力。
使用示例:输入自然码双拼编码
yhlikp(对应 “杨立昆”),本地词库无匹配,按下快捷键,插件自动还原全拼向云端查询,返回候选杨立昆、杨丽坤等,选中上屏本地记忆,再次输入编码离线直接出词,候选标记☁。
2. 按需触发,隐私优先
默认快捷键:Ctrl+Alt+/。不按快捷键完全不会发送任何内容到网络,只有手动触发才把还原后的拼音提交云端,日常打字零网络开销,不会后台偷偷上传输入内容,兼顾云能力与隐私边界。
3. 云候选本地持久记忆
云端获取的词条成功上屏,自动写入本地 LevelDB 记忆库;再次输入同一套编码,该词条直接置顶显示,无需再次联网,标记☁区分本地原生词条与云获取词条。重复候选会自动去重,不会重复显示相同词语。
4. 多云源自动降级回退
内置多套公开 Web 云接口,主源访问失败自动切换备用源:
- 搜狗云(默认首选,人名、新词质量高,响应速度约 40ms )
- 谷歌 Input Tools (回退备选,整句效果佳,新词更新慢)
- 百度 olime (接口现已失效,保留配置以备恢复)
全部为公开网页接口,无需申请 API‑Key;接口属于非官方承诺,随时可能失效,插件会静默降级,不破坏正常本地输入流程。
5. 纯 Lua 实现,无二进制依赖
只需要 lua 脚本文件,不需要编译二进制程序; Linux/macOS 系统自带 curl , Windows10 及以上内置 curl 工具,无需额外安装软件包。
工作流程原理
- 用户正常输入双拼或者带辅码编码,本地 Rime 先输出原生候选;
- 本地找不到目标词,按下
Ctrl+Alt+/触发插件; - processor 组件打上触发标记,通知 translator ;
- 读取
spelling_hints,解析得到不带声调的标准全拼; - curl 调用云端接口获取候选,设置较高权重注入候选列表,附带来源标记如
(搜狗云); - 用户选中云词条上屏, commit_notifier 将词条写入本地 LevelDB 记忆库;
- filter 做注释兜底,兼容万象等会清空注释的 Lua 插件,保证标记正常显示。
注意: librime‑lua 没有真正异步 IO ,网络请求是阻塞的,仅在按下快捷键瞬间短暂卡顿,普通打字不受任何影响。
部署安装
前置依赖
- 开启
librime‑lua支持: Windows 小狼毫、 mac 鼠须管内置; Linux 发行版手动安装librime‑plugin‑lua; - 系统环境具备
curl命令; - 双拼 / 辅码方案必须开启
translator/spelling_hints,数值大于 0;万象系列默认开启;雾凇等方案在 custom 配置中添加translator/spelling_hints: 9。
安装步骤
- 将仓库
lua/wenyun.lua与lua/wenyun/整个文件夹复制到 Rime 用户目录下lua/子目录。 - 在你正在使用的输入方案的
.custom.yaml中挂载处理器、翻译器、过滤器(以万象 Pro 举例):
patch:
engine/processors/@next: lua_processor@*wenyun*processor
engine/translators/@next: lua_translator@*wenyun*translator
engine/filters/@next: lua_filter@*wenyun*filter
- 输入法托盘执行重新部署 Rime,即可生效。
可自定义配置项(写在 custom.yaml 的 patch 块下)
wenyun/trigger_key: "Control+Alt+slash" # 触发快捷键
wenyun/provider: sogou # 默认云源 sogou / google
wenyun/candidate_count: 5 # 返回云候选条数
wenyun/timeout: 1.0 # 请求超时秒数
wenyun/db_name: "lua/wenyun" # 本地记忆库路径
wenyun/debug: false # 是否开启调试日志
