# 小白求教如何制作发布MDX辞典

**URL:** <https://forum.freemdict.com/t/topic/18777>\
**Category:** 技术交流与词典编修\
**Created:** [2023 年2 月 1 日 03:44 UTC](https://forum.freemdict.com/t/topic/18777 "2023-02-01T03:44:00Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

作者： ![涤心斋主](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/%E6%B6%A4/97f17d/32.png) [@涤心斋主](https://forum.freemdict.com/u/%E6%B6%A4%E5%BF%83%E6%96%8B%E4%B8%BB)\
发布日期： [2023 年2 月 1 日 03:44 UTC](https://forum.freemdict.com/t/topic/18777/1 "2023-02-01T03:44:00Z")

</div>

各位论坛里的前辈，我们编纂了一部小型音义辞典用于自用，原意是纸质印刷，后来需求改为放到文石阅读器中配合原典使用，这就需要制作一个MDX辞典。我在网上下载过MDXBuilder，因为涉及HTML语言，所以不会制作导出，特向各位请教一下制作及发布过程。故来此请教，请各位慈悲拨冗，不吝赐教。

---

<div class="post-metadata">

作者： ![anonymous93](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/a/ebca7d/32.png) [@anonymous93](https://forum.freemdict.com/u/anonymous93)\
发布日期： [2023 年2 月 1 日 05:00 UTC](https://forum.freemdict.com/t/topic/18777/2 "2023-02-01T05:00:19Z")

</div>

HTML 本身不是什么复杂语言，就是简单的标记，从数据库或excel拿到数据，稍加标记即可，不用太精通（因为发展了几十年，自身也复杂了，但词典能用的，可以取其中一个小小的子集甚至不用HTML都行[因为文字也可以放到HTML中，它并不严格]）。

mdxbuilder 我不熟，可以用开源的 mdict-utils，就三四个命令解包打包，而数据自身的制作，从 excel 导出成 mdx.txt 的文本就行了。随便拆开一个词典的mdx，就能看到其格式大概，注意慎用 `@@@LINK`以及其他小问题，论坛都能搜到。

HTML 部分，不在乎语义，只管样式的话，直接所有内容 div 嵌套模拟树型结构+ 不同名的 class 就行，这样也不用涉及各种 HTML 标签，css规则。

或者先分享数据，有很多网友可以顺手制作出来的。

---

<div class="post-metadata">

作者： ![sculiuchang](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/s/d2c977/32.png) [@sculiuchang](https://forum.freemdict.com/u/sculiuchang)\
发布日期： [2023 年2 月 1 日 05:02 UTC](https://forum.freemdict.com/t/topic/18777/3 "2023-02-01T05:02:30Z")

</div>

数据分享出来。本坛应该会有技术大牛帮忙制作。

---

<div class="post-metadata">

作者： ![zhongx](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/z/ba9def/32.png) [@zhongx](https://forum.freemdict.com/u/zhongx)\
发布日期： [2023 年2 月 1 日 05:04 UTC](https://forum.freemdict.com/t/topic/18777/4 "2023-02-01T05:04:52Z")

</div>

先下载一个MDX辞典文件，解压出来，在txt中提几个词出来，对照一下，套进去就可以了。CSS方面也可以用原来的修改一下。只要有原数据，其它都是体力活了。

---

<div class="post-metadata">

作者： ![涤心斋主](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/%E6%B6%A4/97f17d/32.png) [@涤心斋主](https://forum.freemdict.com/u/%E6%B6%A4%E5%BF%83%E6%96%8B%E4%B8%BB)\
发布日期： [2023 年2 月 1 日 05:05 UTC](https://forum.freemdict.com/t/topic/18777/5 "2023-02-01T05:05:26Z")

</div>

感谢各位老师回复，mdx是不是还需要发布一下才行呢

---

<div class="post-metadata">

作者： ![anonymous93](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/a/ebca7d/32.png) [@anonymous93](https://forum.freemdict.com/u/anonymous93)\
发布日期： [2023 年2 月 1 日 05:06 UTC](https://forum.freemdict.com/t/topic/18777/6 "2023-02-01T05:06:54Z")

</div>

发布就是格式转换，从 txt 到 mdx： mdict -a dict.txt dict.mdx

> **[GitHub - liuyug/mdict-utils: MDict pack/unpack/list/info tool](https://github.com/liuyug/mdict-utils)**
>
> MDict pack/unpack/list/info tool. Contribute to liuyug/mdict-utils development by creating an account on GitHub.

---

<div class="post-metadata">

作者： ![shaoshi](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/shaoshi/32/14529_2.png) [@shaoshi](https://forum.freemdict.com/u/shaoshi)\
发布日期： [2023 年2 月 1 日 05:12 UTC](https://forum.freemdict.com/t/topic/18777/7 "2023-02-01T05:12:23Z")

</div>

可以看看这个帖子，里面提到的“工具备份”中就有一个Excel转存文本工具(我没用过)。

[新手指南：怎样编辑mdx？](https://forum.freemdict.com/t/topic/16431)

你做完了可以在本坛发布mdx(是汉语mdx？分类大概是“汉汉”)，不发布也没关系。只要不展示图希望卖钱就行。

不想发布，有问题一样可以问。

参看：

[如何制作文字版辞典](https://forum.freemdict.com/t/topic/18677/15)

假如你不怕词典显得难看，可以直接用白文做mdx，不用html。用html的目的只是格式化、美化文本。

词头  
内容  
\</\>(条目终止分割符)

就这样而已。

---

<div class="post-metadata">

作者： ![涤心斋主](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/%E6%B6%A4/97f17d/32.png) [@涤心斋主](https://forum.freemdict.com/u/%E6%B6%A4%E5%BF%83%E6%96%8B%E4%B8%BB)\
发布日期： [2023 年2 月 1 日 06:15 UTC](https://forum.freemdict.com/t/topic/18777/8 "2023-02-01T06:15:08Z")

</div>

[test.txt](https://forum.freemdict.com/uploads/short-url/m7NW165kEbh7gphHe9uOCGWqJxJ.txt) (24.7 KB)  
这个辞典要配合阅读的100册左右原典来做，目录刚刚完成第一册，哪位大佬指导一下，我回去边做边套，这是第一册部分数据

---

<div class="post-metadata">

作者： ![涤心斋主](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/%E6%B6%A4/97f17d/32.png) [@涤心斋主](https://forum.freemdict.com/u/%E6%B6%A4%E5%BF%83%E6%96%8B%E4%B8%BB)\
发布日期： [2023 年2 月 1 日 06:53 UTC](https://forum.freemdict.com/t/topic/18777/9 "2023-02-01T06:53:37Z")

</div>

用mdxbuilder导出不成功，不知道是哪里错误

---

<div class="post-metadata">

作者： ![shaoshi](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/shaoshi/32/14529_2.png) [@shaoshi](https://forum.freemdict.com/u/shaoshi)\
发布日期： [2023 年2 月 1 日 06:53 UTC](https://forum.freemdict.com/t/topic/18777/10 "2023-02-01T06:53:40Z")

</div>

你这个文本的mdx语法没有问题，可以编辑。

注意：你这个文本的编码是utf8，编译时编码要选对。

 ![test](https://forumcdn.freemdict.com/uploads/default/original/3X/a/e/aef453a6a1b1a14dca4351bbdb6efe75165a1558.jpeg)

你所提供的讯息不够详尽。这个文石阅读器是什么？能读mdx？

你的文本都做好了？都这样，没有任何标签？

读音：  
原詞（句）：  
字（詞）義：  
經題：  
依據：

看来都可以替换成标签。

我对mdx没有熟悉到可以指点人的地步。假如没有高手愿意按部就班地指点，我会建议找一个结构类似的词典，模仿其标签，利用其css。

[test.mdx](https://forum.freemdict.com/uploads/short-url/nGYSP7ITHXYLcMN2oO3qElSUHm1.mdx) (6.2 KB)

必须找一个结构简单，新手容易看得懂的。

看看这个你能否模仿而改装？

[中华成语大词典 连接外挂css](https://forum.freemdict.com/t/topic/17584)

文石支持双开同一文档，可以自己导入词典（词典支持格式：dsl ifo idx dict bgl mdx mdd）  
[https://wechatapp.boox.com/forums/1318/](https://wechatapp.boox.com/forums/1318/)

文石阅读器无法识别外置的CSS和MDD的文件。

> [@想求教如何将外置css嵌入到MDX文件中。](https://forum.freemdict.com/t/topic/5836):
>
> 有这个需求是因为用的文石阅读器无法识别外置的CSS和MDD的文件，故想要将CSS内嵌进MDX使用。

---

<div class="post-metadata">

作者： ![anonymous93](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/a/ebca7d/32.png) [@anonymous93](https://forum.freemdict.com/u/anonymous93)\
发布日期： [2023 年2 月 1 日 07:21 UTC](https://forum.freemdict.com/t/topic/18777/11 "2023-02-01T07:21:07Z")

</div>

1. 安装 python =\> [https://www.python.org/](https://www.python.org/) ，一路 next.
2. 安装 mdx 解压缩软件 mdict-utils =\> pip install mdict-utils
3. 在 txt 文件夹内，右键打开命令行，输入 `mdict -a test.txt test.mdx`
4. 在GoldenDict 中加载词典、刷新。

就会如下图所示

 ![image](https://forumcdn.freemdict.com/uploads/default/original/3X/9/2/92c8e83d18ca8ebc21fe490e7c747c44160b595e.png)

一维的文本适合慢慢品读，如果要跳读的话，需要用别的标记标记跳跃点。比如把读音、原句、释义分成不同的颜色、二维的换行和缩进、字体、边框等。

---

<div class="post-metadata">

作者： ![涤心斋主](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/%E6%B6%A4/97f17d/32.png) [@涤心斋主](https://forum.freemdict.com/u/%E6%B6%A4%E5%BF%83%E6%96%8B%E4%B8%BB)\
发布日期： [2023 年2 月 1 日 08:30 UTC](https://forum.freemdict.com/t/topic/18777/12 "2023-02-01T08:30:15Z")

</div>

感谢各位老师，我对这方面实在纯白，还得消化消化 😀
