rime‑dict‑sync 是一款 Go 语言开发的 Rime 词典命令行同步工具。解决 Rime 使用者手动下载上游 dict.yaml 词库、维护版本标记的繁琐工作。可以通过 yaml 任务配置,批量从远程 URL 下载 Rime 词典文件,自动修正词典头部name、version元信息,自动打上更新日期版本号;同时支持多种合并模式,保留源文件注释头,输出可直接投入 Rime 使用的词典文件。 该工具内置万象拼音、雾凇英文等现成任务配置,适合做配置模板、自动化脚本、 GitHub Action 流水线,批量拉取第三方 Rime 上游词库。 Windows 、 macOS 、 Linux 全平台可编译运行。
注意:工具只负责下载、处理 dict.yaml 词典,不处理 schema 方案、 lua 脚本,也不执行 Rime 部署编译。下载得到的文件复制到 Rime 用户目录,需要手动执行重新部署。
二、核心功能
1. 批量远程词典下载
通过 yaml 任务配置文件,一次性配置多条词典下载任务,指定保存文件名与远程下载地址,批量拉取多个上游词库,无需手动打开浏览器逐个下载。
2. 自动维护词典元数据
下载完成自动改写词典头部:
name字段设置为词典文件名(不含后缀);version自动填充为当前日期 YYYY‑MM‑DD,方便用户追踪词库更新时间。
3. 多合并模式
- 默认模式:完整使用下载回来的词典内容,改写头部 name 与 version ;
merge_mode: "keep_remote_header":保留远程源文件原有头部注释,只替换 version 版本字段,适合上游头部带有版权说明、维护信息的词典。
4. 任务化配置
词典下载清单写在独立 yaml 配置,一份配置对应一套词库集合。仓库自带万象拼音、雾凇英文的示例配置,用户可以仿写自定义配置用于自己维护的词库源。
5. 适合自动化流水线
纯 CLI 无交互,可以在 shell 脚本、 cron 定时任务、 GitHub Actions 中调用,实现定期自动拉取上游最新词库,构建自己的 Rime 配置包。
使用步骤
环境准备
需要 Go 1.24 及以上版本。
git clone https://github.com/Mintimate/rime‑dict‑sync.git
cd rime‑dict‑sync
go mod tidy
go build .
运行示例
# 使用内置万象拼音任务配置
bash scripts/sync‑config.sh configs/wanxiang.yaml
# 使用保留源头部注释模式,例如雾凇英文词典
bash scripts/sync‑config.sh configs/rime‑ice‑english.yaml
执行后,下载处理完成的词典输出至dl_dicts目录。
自定义配置模板示例( config/my‑dict.yaml )
TARGET_DICT:
- name: "my_base.dict.yaml"
url: "https://xxx/xxx/my_base.dict.yaml"
- name: "my_ext.dict.yaml"
url: "https://xxx/xxx/my_ext.dict.yaml"
# merge_mode: "keep_remote_header" # 需要保留远程头部注释开启
投入 Rime 使用
- 将
dl_dicts/目录下生成的*.dict.yaml复制到你的 Rime 用户目录; - 在你的 schema 或者 custom.yaml 配置中通过
import_tables引入该词典; - 执行 Rime 重新部署,词库生效。
