一个用 Rust 写的离线编码查询桌面工具

用小鹤音形输入法快两年了,日常打字速度确实上来了,但偶尔遇到不确定的编码还是得去翻官方文档或者在线查码。在线工具有几个痛点:要联网、页面广告多、查完还得切回原来的窗口。Rime 用户还有一层需求------本地 .dict.yaml 词库文件越来越多,想加个自定义词组还得手动编辑 YAML、改 import_tables、再重新部署,流程繁琐且容易出错。

于是我想:能不能做一个本地离线的小工具,打开就查、查完就关,顺便把 Rime 词库管理也一起解决了?

这就是「小鹤音形词典」------ 一个用 Rust + egui 构建的跨平台桌面应用。

核心功能

离线编码查询

内置 79,783 条编码数据,直接编译进二进制文件,启动即可用,不依赖任何外部数据文件或网络。覆盖小鹤音形的全部 16 个分类:一级简码、二重简码、三码填空、四码全码(字/词)、首选字词、快符、符号、部首部件、Emoji、微信表情、网站直达、随心所欲等。

搜索引擎采用 Trie 前缀树 + 线性扫描的混合方案:输入纯字母时走编码查询(精确匹配 > 前缀匹配 > 子串匹配),输入中文时走文字反查。结果按相关度排序,最多返回 100 条,匹配片段高亮显示。查到的编码或文字一键复制,不用手动选中。

内置帮助文档

15 个章节的完整小鹤音形教程,从双拼入门到鹤形拆分规则,从字根表到简码表,全部原生渲染在应用内(不依赖 WebView)。支持全文搜索、章节间跳转、字根表/拆分示例等静态数据表格。按 F1 随时呼出,Esc 返回。

对于正在学习小鹤音形的朋友来说,相当于把官方文档、键位图、字根表全部整合到了一个窗口里,不用在浏览器标签页之间来回切。

键位图

内置小鹤音形完整键位图(WebP 格式),点击工具栏按钮即可弹出查看,点击其他区域自动关闭。背键位的时候随手就能调出来对照。

Rime 词库管理

这是我觉得最实用的功能。应用会自动扫描本机的 Rime 目录,列出所有 .dict.yaml 和 .txt 词库文件,支持:

按文件启用/禁用,实时搜索外部词库内容

按文字或编码排序,一键复制

文件变更自动检测,mtime 变化时重新加载

带缓存机制,大文件不会每次启动都重新解析

更关键的是「添加新词」功能:输入文字和编码后,应用会自动完成以下全部步骤:

将词条追加到自定义词库文件

设置其词频为高

自动触发 Rime 重新部署

以前手动改 YAML 容易漏步骤或者格式写错导致部署失败,现在全部自动化了。

自动更新

启动时静默检查 GitHub Releases,发现新版本后后台下载,SHA256 校验完整性,然后按平台执行安装:macOS 替换 .app 并去除 quarantine 属性,Windows 通过独立的 updater.exe 等待进程退出后替换重启。下载过程有进度条和耗时显示,支持取消和失败重试,也支持走系统代理。

平台支持

macOS(Apple Silicon + Intel)松鼠工具

Windows(x86_64)小狼毫

截图

搜索结果,绿色突出显示:

image

帮助文档,关键字突出显示:

image

添加自定义新词:

image

开源地址

相关推荐
_阿南_9 小时前
项目中新增给AI制定的代码规范
前端·程序员
名字还没想好☜10 小时前
React 实现暗黑模式切换:localStorage 持久化、SSR 首屏闪烁与跟随系统主题
前端·javascript·react.js·ecmascript·react·next.js
console.log('npc')11 小时前
Git 冲突与 AI 协助指南
前端·人工智能·git·大模型
爱学堂IT分享12 小时前
Cesium可视化系统实战课程-Cesium教程学习
前端
糖墨夕12 小时前
理解大语言模型:Agent 的“大脑”
前端·agent
Rain的Java大神之路13 小时前
JavaWeb开发如何解决跨域问题
java·前端·后端·nginx·web安全·面试·运维开发
cpolar技术支持13 小时前
浏览器也能跑本地 AI:用 Transformers.js + WebGPU 做一个最小推理 Demo,cpolar 给同事远程体验
前端·ai·cpolar·webgpu·transformers.js
计算机魔术师14 小时前
OpenAI 发布 GPT-6 Astra:多项基准刷新纪录, cybersecurity 能力达 Critical 阈值
前端
xy345314 小时前
Axure9.0中继器遮罩实现方法
前端·ui·html·axure·原型·产品设计
风骏时光牛马14 小时前
智能任务自动化协同AI工作流
前端