MDX 词典转 RIME 输入法系统词库完整指南

MDX 词典转 RIME 输入法系统词库完整指南

本文将详细介绍如何将MDX格式的电子词典转换为RIME输入法系统可用的.dict.yaml词库文件。整个过程分为四个主要阶段:环境准备、MDX解包、结构分析、代码生成与转换。无论你是词典制作者还是输入法重度用户,跟随本指南都能轻松完成转换。


一、认识RIME与素言输入法

什么是 RIME?

RIME(全称 Rime Input Method Engine,中文名“中州韻輸入法引擎”)是一个跨平台的开源输入法算法框架。它并非某一种具体的输入法,而是从各种常见键盘输入法中提炼出来的抽象输入算法框架。基于这一框架,Rime开发者与开源社区参与者在 Windows、macOS、Linux、Android、iOS 等平台上创造了不同的输入法前端实现,例如:

  • Windows:小狼毫(Weasel)
  • macOS:鼠鬚管(Squirrel)
  • Linux:ibus-rime、fcitx5-rime
  • Android:同文(Tongwen)

RIME一套算法便支持了拼音、双拼、注音、五笔、仓颉等所有音码和形码输入法。它的核心库使用C++编写,轻量、可扩展,且能在不同平台上保持一致的工作方式。由于采用GPL授权发布,RIME是真正意义上的自由软件。

RIME | 中州韻輸入法引擎

什么是素言输入法?

素言(SuYan)输入法 是一款基于RIME开源引擎构建的跨平台桌面输入法,目前支持 Windows和macOS 双平台。

素言的核心定位是解决商业输入法普遍存在的三大痛点:隐私焦虑(强制联网上传数据)、臃肿干扰(弹窗广告与捆绑功能)、功能割裂(PC端缺乏打字与语音的无缝融合)。其主要特点包括:

  • 极致隐私保护:基于RIME引擎构建,完全离线运行,无需网络权限,每一次输入、每一句语音都只停留在本地设备。
  • 打字与离线语音双模融合:内置高性能本地语音识别引擎,音频数据绝不上传任何服务器,说完即出字。
  • 内置效率工具:剪贴板管理、屏幕截图、临时英文模式等。
  • 词库自由:支持导入 RIME格式的自定义短语和行业词库(即.dict.yaml文件)。素言的词库来自社区维护的雾凇拼音。
  • 高度自定义:支持主题、配色、字体、候选框样式等全方位定制。

素言 SuYan

素言与RIME的关系:素言是RIME生态中的一个前端实现——它利用RIME引擎强大的输入算法,在其之上构建了现代化的用户界面和额外功能(如离线语音、剪贴板管理等),同时保持了RIME核心的离线、开源、可定制的基因。本文所生成的.dict.yaml词库,既可直接用于RIME各平台前端(小狼毫、鼠鬚管等),也可通过素言的“词库管理”功能直接导入使用


二、必要准备

1. 获取词典包

一个标准的MDX词典包通常包含以下文件:

  • .mdx —— 主词典数据库(核心文件,转换只需此文件
  • .mdd —— 资源包(图片、音频等,转换时不需要)
  • .css —— 样式表(控制显示外观)
  • .js —— 交互脚本
  • .png/.jpg —— 图标文件

注意:转换过程仅依赖.mdx文件,其他文件无需处理。

2. 安装Python及代码运行环境

  • Python版本:推荐安装 3.11.x 稳定版,该版本对第三方库兼容性最佳,且长期维护。
  • 代码编辑器:推荐使用 VS Code(Visual Studio Code),轻量且功能强大,支持Python调试。
  • 安装与配置:若对安装步骤不熟悉,可直接向DeepSeek等AI助手提问,获取图文并茂的安装教程。

三、解压MDX文件为纯文本

MDX是压缩的二进制格式,需先解压为可读的TXT文件。

工具选择

使用 AutoMdxBuilder,该工具图形化界面,操作简便。
下载地址:

操作步骤

  1. 下载压缩包并解压到本地(建议路径不含中文和空格)。
  2. 双击 AutoMdxBuilder.exe 运行程序。
  3. 在界面中,按提示填写MDX文件路径(如何快速复制路径:在文件资源管理器中,右键点击.mdx文件,选择“复制文件地址”即可得到完整路径)。
  4. 点击“开始解压”,等待处理完成。
  5. 解压后的TXT文件会保存在与MDX同级的目录下,并生成一个与MDX同名的文件夹,其中包含解压出的.txt文本。

小贴士:尽管代码采用流式生成方法,若MDX体积较大(超过几百MB),解压可能耗时数分钟,请耐心等待。


四、分析MDX文本结构

解压后的TXT文件内容遵循MDX标准格式:每个词条以词头开始,以</>结束,中间为释义内容。为了自动提取词头和拼音,需要先了解该词典的排版规律。

运行结构分析脚本

使用提供的 1.分析框架.py 脚本(可向作者索取),用于自动解析TXT的结构层级。

使用方法

  1. 在VS Code中打开该脚本。
  2. 找到变量 INPUT_FILE = r,将其后的路径改为你的TXT文件地址(同样可用“复制文件地址”方式获取)。
    示例:INPUT_FILE = r"D:\词典\汉语词典\大辞海\大辞海.txt"
  3. 在VS Code终端中运行该脚本(python 1.分析框架.py)。
  4. 运行成功后,会在同目录下生成一个名为 源文件名_frame.txt 的文件(例如 大辞海_frame.txt),其中包含了词条容器层级结构和可能的拼音标记位置。

此分析报告是下一步AI生成转换代码的重要依据。


五、借助AI生成转换代码并执行

现在,我们将利用AI(如DeepSeek、ChatGPT)根据分析报告生成专用转换脚本。

操作流程

  1. 上传分析报告:将上一步生成的 源文件名_frame.txt 文件内容复制并上传至AI对话窗口。

  2. 输入提示词(可直接复制以下内容):

    帮我写一个 Python 代码,根据 MDX 格式的 TXT 输入文件的‘MDX 词条容器层级结构与逻辑分析报告’,将输入文件转换为适用于 RIME 输入法的 .dict.yaml 格式输出文件。

    要求:

    1. 提取词头和拼音(若无拼音则只提取词头)。
    2. 清除词头中包含数字、英文字母、希腊字母或标点符号的条目。
    3. 清除单字词头(即汉字字数 < 2)。
    4. 若存在繁体词头,需转换为简体。
    5. 为词头去重。
    6. 每个汉字的拼音之间用空格分隔(例如 zhong guo)。
    7. 采用流式生成(逐行读写)以减少内存占用。
    8. 增加进度可视化(如打印处理行数或百分比)。

    输入文件"你的TXT文件路径"
    输出文件"你的输出dict.yaml路径"
    输入文件片段:(粘贴2~5组完整词条示例)”

  3. 配置三项关键参数(在提示词中手动填写):

    • 输入文件:即步骤三解压出的TXT文件完整路径。
    • 输出文件:可将输入路径复制后,将后缀 .txt 改为 .dict.yaml(例如 大辞海.dict.yaml)。
    • 输入文件片段:从TXT中随意复制2~5组完整词条(从词头到</>),让AI了解格式细节。
  4. 将AI生成的Python代码保存为 .py 文件(如 convert.py),并在VS Code中运行。

运行与结果

  • 脚本执行后会逐行处理TXT,并在终端显示处理进度。
  • 转换完成后,输出的 .dict.yaml 文件即符合RIME词库规范。

如何将词库用于素言输入法?

素言输入法支持直接导入RIME格式的.dict.yaml词库文件。具体步骤如下:

  1. 打开素言输入法的 “词库管理” 功能。
  2. 选择“导入词库”,找到你生成的 .dict.yaml 文件。
  3. 确认导入后,词库即生效。素言会结合高频词库与强大的词频记忆,让生僻词一次拼写、终身记忆。

注意:素言基于RIME引擎(雾凇拼音配置),不支持直接导入搜狗或百度的加密词库文件(如.scel)。如需转换此类格式,建议先使用深蓝词库转换等工具将其转换为RIME格式的文本文件,再通过素言的“词库管理”功能导入。


六、常见问题与补充说明

  • Q:拼音提取失败怎么办?
    A:检查分析报告中的拼音标签(如 <pinyin> 或特定CSS类),若AI生成的代码未识别,可手动调整正则表达式。

  • Q:词典本身无拼音,只提取词头可以吗?
    A:可以,代码会自动降级为仅提取词头。

  • Q:如何处理超大词典(>5GB)?
    A:务必使用流式生成(要求已包含),同时建议增加 --chunk-size 参数控制每次读取行数。

  • Q:转换为简体后出现重复词条?
    A:代码已包含去重逻辑(使用集合或字典),确保最终词条唯一。

  • Q:RIME词库格式要求?
    A:标准 .dict.yaml 需包含头部(如 name: ...version: ...)及 ... 分隔符,然后每行一个词条(格式为 词条<TAB>拼音 或仅词条)。AI生成的代码会自动添加必要的头部,若缺少可手动补充。

  • Q:生成的词库可以用于哪些输入法?
    A:所有基于RIME引擎的输入法前端均可使用,包括Windows的小狼毫、macOS的鼠鬚管、Linux的ibus-rime/fcitx5-rime、Android的同文,以及素言输入法等。


七、结语

通过上述步骤,你已成功将MDX词典转换为RIME输入法词库。整个过程自动化程度高,即使非技术人员也可轻松完成。若遇到特殊格式或报错,可适当调整AI提示词或检查TXT中的换行符等细节。

无论你使用的是RIME各平台前端(小狼毫、鼠鬚管、同文等),还是追求极致隐私与离线体验的素言输入法,这份自定义词库都能让你的输入体验更精准、更高效。祝转换顺利,享受定制输入法词库的乐趣! :nerd_face:

啊。 介不对吧

AutoMdxBuilder(由FreeMdict论坛Sherman开发)

ai搞得,稍等

因为给ai的地址带有我的id,所以识别错了
image

1.分析框架.py (6.2 KB)
2.生成转换代码(词汇+拼音).txt (794 字节)

五合一词库:辞海、大辞海、汉典、汉语大词典、重編國語辭典修訂本
521.dict.yaml.zip (4.6 MB)

自己转了一些词库,并装载了一下
rime_dict.zip (12.1 MB)

压缩包里有词库文件和词库的配置文件

dict是词库文件夹
rime_mint.dict.yaml是配置文件

如果是新手,且正在使用【薄荷全拼】,那么直接替换自己原来的文件即可

如果有经验,或正使用其他输入法,那么可以参照文件内容自己配置就行 :nerd_face: