ldlcau 发表于 2008-10-11 11:20:56

mdict版制作方法和常用工具

本帖最后由 ldlcau 于 2018-5-22 12:02 编辑

mdict是显示mdx内容的工具,mdxbuilder是编译mdx源文件到mdx的工具,mdd是mdx的附加资源库文件,mdd不能单独执行。

   制作流程: 图文资料--整理成mdx源文件--用mdxbuilder编译转换为mdx (mdd同时生成)--使用mdict浏览mdx(mdd)的内容。

1、mdict制作常用文本格式(mdx源文件)

mdx源文件常见格式详见附件中的示例

转换软件MdxBuilder,下载地址https://pdawiki.com/forum/thread-3747-1-1.html
首先制作MdxBuilder转换所需的原始格式txt文本文件
最常用的是MDict的html格式
每个项目两行
第一行是关键字
第二行开始是正文, 这里的正文应该包括关键字。可以使用html的标记(不要包含<html>
<body></body></html>, 这个程序会自动加上, 另注意在转换时要指明源数据为html).
如果需要显示音标的话,可以利用html指定字体就可以显示了。(参见下面的例子)
正文结束后必须用一行</>表示结束
例子: 1.txt

词条1标题Whole
词条1内容<font size=5>whole</font><br><font face="Kingsoft Phonetic Plain, Tahoma">(hol,hJl; houl)</font>
</>
词条2标题
词条2内容
</>
词条3标题
词条3内容
</>

(注意"</>"和下一个记录间不要有任何其他空行,请参考example.txt中的例子)
在html中连接到其它关键字的方法:
<a href="entry://key">key</a>
其中key是关键字,
词条内部跳转方法 <a href="entry://#1">目录一</a>   (一定要有<a name=1></a>相对应)

在html中嵌入图片的方法:(
<img src=file:///abc.gif>其中src指向的文件名大小写不敏感
并将所有图片文件放在一个单独的目录中(不要与词典源文件放在同一目录中). 数据目录中可以
带有子目录。在使用MdxBuilder制作词库时,将Data路径指向上面存放数据的目录,该目录中的
所有文件都会被压缩到后缀名为.mdd文件中,使用时该.mdd文件应当与.mdx文件在同一目录下。
MDict 3.1 支持多个mdd文件组合成一个mdd来使用
制作方法:将图片分成几个目录,然后逐个目录打包就是了。
打包后的文件名: 词典.1.mdd 词典.2.mdd词典.3.mdd......
调用方法不变。
程序在第一个里找不到,就去第二个里找。。。
http://cc.a.5d6d.com/userdirs/7/9/pdawiki/attachments/month_0811/20081107_721fd4855404d425168ftCOQS4gJJLaA.jpg

加入外部样式表的方法
制作时在每个词条内容前加上
<link rel="stylesheet" href="style.css">
这句话,然后生成mdx
生成的mdx与style.css放在同一目录下。
style.css内容示例:
BODY { FONT-FAMILY: "宋体", "宋体", "宋体"; FONT-SIZE: 80% } /*注释页面字体大小*/
TD { FONT-SIZE: 11pt } /*注释表格字体大小*/
A:link { COLOR: #000000; TEXT-DECORATION: none } /*注释链接样式*/

A:visited { COLOR: #000000; TEXT-DECORATION: none } /*注释已访问的链接样式*/

A:active { COLOR: #ff0033; TEXT-DECORATION: none }

A:hover { COLOR: blue; TEXT-DECORATION: none }/*注释鼠标放在链接上样式*/
--------------
2、数据处理方法(生成mdxbuilder可以编译的文件,就是上面介绍的)

一、mdict编辑器网络版
处理好txt文本或者htm文件后,可以利用mdict编辑器 导入数据库后编辑然后再导出为mdx源文件,绿色文件解压后可直接运行。
https://pdawiki.com/forum/thread-4498-1-1.html
支持无限多文本。并且支持可视化在线编辑 和在线提取、批量下载网页文件。推荐新手使用。


二、MDICT文本处理软件

简单的编辑工具
a. MDict词库可视化编辑器
(Mdx Source File Maker) V0.3 http://bbs.pdafans.com/viewthread.php?tid=609517感谢 nbdx-mmrs 网友制作此软件

b.批量文本处理程序,注意事项:每个txt文本文件的名称作为词条标题,类别处请留空(删除“AA”),下载见附件,这个缺点是有时会有乱码。

c.简易词典制作工具: https://pdawiki.com/forum/thread-4513-1-1.html (感谢fdfdrere)

d、html2mdx
将html文件转换为MDict格式文件的程序!Wncable(Bowang)大侠的工具软件,可以将Html格式一次性转换成符合Mdx格式要求的Txt文件,随后便可以用MdxBuilder软件直接生成Mdx文件了!
https://pdawiki.com/forum/viewthread.php?tid=84

三、其他方法:
a.逐条输入→MdxBuilder支持txt→MdxBuilder生成(适用于制作自己平时日积月累的东西,可以生成漂亮的表格)
b.利用MdxBuilder支持的格式的词库转(适用于转现成的SugarDict,KDict词典)
c.其他→(excel)→文字编辑软件(用UltraEdit-32好于EmEditor好于word)→MdxBuilder支持的txt文档格式→MdxBuilder生成(适用于高效制作一切能方便转为excel文档的词典)
http://bbs.pdafans.com/viewthread.php?tid=179661
d. 我的mdict词库制作体会 (莲花无语 提供) https://pdawiki.com/forum/thread-4088-1-2.html

四、危机百科
原始数据:http://download.wikimedia.org/zhwiki/

危机百科转mdx源文件制作工具
https://pdawiki.com/forum/thread-1315-1-1.html
https://pdawiki.com/forum/viewthread.php?tid=86

危机转换工具
Wiki。ToMDict2.0
https://pdawiki.com/forum/viewthread.php?tid=86

Wi。ki2Txt V1.1
下载地址 http://bbs.pdafans.com/viewthread.php?tid=500730
V2.1
http://bbs.pdafans.com/viewthread.php?tid=753395

五、Txt文件词条合并工具 Combine,绿色版
Wncable(Bowang)大侠的巨作,可将多个词典的相同词条合并成1个!
https://pdawiki.com/forum/thread-87-1-17.html

六、mdxexport ,将Mdx文件转换为Txt文件
https://pdawiki.com/forum/viewthread.php?tid=954

--------------
3、mdxbuilder转换信息

以上方法处理后得到的文件再用mdxbuilder转换

MdxBuilder关于选项的说明:
a) Key case sensitive
关键字(标题)是否大小写敏感。多数情况下词典是大小写不敏感的,所以不要选。
b) Allow export to text
是否允许导出为文本。如果选了,就可以用MdxExport这个工具吧词典导出为文本格式。
c) Right to left text
文字的阅读顺序。中文是从左到右,阿拉伯文之类的是从右到左。
d) Strip key
是否去掉关键字中的特殊符号。例如21世纪词典里的关键字是显示成"lis.ten" 这个样子的,如果不去掉".",则用户需要输入"lis.ten"而不是”listen"来查询单词。
e) Title
这个是用来标示词典的名字,计划将来在需要显示词典名称的地方进行显示用的。但目前暂时没有用处。
f) Description
词典的详细介绍。第一次打开词典时看到的欢迎页面。
g) Build Data archive
仅进行数据文件制作。主要是用来制作图库,声音库时用。勾选后就不用填写Source路径。
h) Index block size, Record block size. 这两个是调整性能用的,用缺省值就好了。
i) Encryption Key
词典加密的密匙,用于词典授权用的。可以参见MdxBuilder.zip里的LibKeygen.txt的说明

注意事项:
          1、图片链接最好使用 <img src=file:///1/1.jpg> 这样的格式
         2、转换出错一般是标题位置有多余的空行
如:
   词条1标题
   词条1内容
</>

词条2内容
</>
         3、mdxbuilder处理转换后的mdx文档大小应在4G以下

MdxBuilder出错信息
1、出错信息:“Keyword is longer than 255 at position: XXX of the source file”
可能原因:标题位置缺少换行,使用编辑工具编辑并存档后,txt并未能识别你所制作的文件己隔行。
用UltraEdit打开文件按Ctrl-H进入16进制模式,然后按Ctrl-G, 再输入 XXX (就是报告错误的位置). 然后再按Ctrl-H返回文本编辑方式。。。
解决方法:再新建一个档案,然后将所有的文字复制到新的档案中;指定行处增加换行。
2、出错信息:加载正常,但转换中内存溢出。
可能原因:源文件过大
解决方法:使用mdxbuilder大文件特别版
3、出错信息:Invalid keyword at position: XXX of the source file。 Failed to load source file, process cancelled
可能原因:标题位置出现不必要的空行。
解决方法:用UltraEdit打开文件,Ctrl-G, 再输入 XXX (就是报告错误的位置). 删除空行,空行较多可用正则表达式批量处理。

------------------

4、mdict版制作常用编辑工具软件(用来编辑mdx源文件 或 收集处理文本资料)
UltraEdit-32
编辑工具
UEDIT查找替换高级教程(制作电子书与MDIT辞典必看)
其实UEDIT32的搜索替换至少有两个最明显的优点:
一、执行速度非常快,是WORD的数千倍,不信你打开一个20M的TXT文档,用UEDIT替换只要3秒钟,用WORD看要不要几个钟头?
二、UEDIT的替换内容可以包括查找到的内容,这是在WORD以及更高级更专业的“微软正则表达式”所都无法支持的,不过这个应用可能大部分的朋友都不知道。
   虽然许多极其复杂的文档查找与替换必须使用较专业的正则表达式来处理,但对于一般甚至比较高级的操作来说,UEDIT还是我们的不二选择。现在我来简要介绍一下UEDIT的查找与替换的高级应用。
以下的示例使用中文版UEDIT10进行讲解
1. UEDIT查找的快捷键是Ctrl+F(find)或ALT-F3,替换的快捷键是Ctrl+R(replace),再次查找的快捷键是F3。
2. 一般查找与替换功能:
※在查找/替换框内将“正规表达式”的√给去除,并分别在查找与替换的框格内输入所需的字符,执行查找与替换即可。
※如果需要匹配回车键,在查找框中可输入^p(注意p是小写)来代替回车键
说明:在unix格式中^n表示换行,而在mac的文本格式中^r 表示换行,dos格式中^p 表示换行,不过一般情况下^p 可以同时兼容^r 或^p
举例:

dfdf
ss
fssdf给替换为dfdf,ss,fssdf格式:可在查找中输入^p,替换中输入,(半角逗号)即可。
反之将dfdf,ss,fssdf给替换成以上三行只要在查找中输入,(半角逗号),替换中输入^p即可。
高级查找部分:
1.要记住将查找/替换框中的正规表达式给√上
2.常用的查找/替换命令:
%      匹配行头(0字符,仅是匹配一个位置)
$      匹配行尾(0字符,仅是匹配一个位置)
?      在一行中匹配一个单字符
*      匹配一个或多个字符(不允许跨行匹配)
+      匹配+左边的那个字符一或多次(不允许跨行匹配).
++      匹配+左边的那个字符零或多次(不允许跨行匹配).
^b      匹配分页
^p      匹配DOS文本的换行符(通用)
^r      匹配MAC文本的换行符
^n      匹配UNIX格式文本的换行符(在wondows操作系统中一般情况下可与^p互换)
^t      匹配tab符
[ ]      匹配单字符或字符范围
^{A^}^{B^}      匹配A或匹配B
^(...^)      用于替换框中代替查找的内容
http://bbs.pdafans.com/viewthread.php?tid=565520&extra=page%3D1%26area%3D

EditPlus v3.21 汉化版
适合少量文本文件批处理,支持不超过50M左右的单个文件,拥有强大的正则表达式处理功能。
http://www.sz1001.net/soft/690.htm

菲菲更名宝贝
支持文件批量、改名以网页标题更名、以文本文件的第一行更名,各种内码转换等等;
http://www.newhua.com/soft/59019.htm
http://www.ffhome.com/Soft/ShowSoftDown.asp?UrlID=2&SoftID=7

多行文本替换工具
http://www.rayfile.com/files/a089fd7a-973f-11dd-96d5-0019d11a795f/

TextForever
TextForever(FineReader) 版本:1.75 评价:★★★★
文件: 中文简体版中文简体版说明 English版(其中说明文件还是中文的)
中文繁体版 v1.58(感谢阿呆2的辛勤工作!)
功能: 提供以下功能:HTML->TXT转换、文件合并、TXT文件段落合并、TXT文件分行、编码(GB/GBK/Big5/Shift-JIS/Unicode)转换(只能用于Win 2k/XP)、文本替换、HTML代码整理、文件切分、文本提取、正则表达式、TCR批量压缩/解压,用于整理从Internet上下载的小说。软件原名FineReader,后更名为TextForever。
动机: 我初上网时常去“阿拉谈书屋”看小说,网主无聊到将每一页做成一个文件(后来他也为此而后悔不已),看起来很累,所以就想编一个程序能对下载下来的文件进行合并、整理,变成TXT文件以便阅读、打印。
为了编制这个程序,我专门从Internet下载了一堆HTML文档,苦读半月。所以有一次我和一个朋友开玩笑:他通过做主页练HTML,我则通过读主页练,大家殊途同归。
说起来“阿拉谈书屋”对我所起的作用实在不小,不仅将我引进了Internet的大门,还为我学习Internet编程提供了强大的动力,先后产生了CrazyReader和TextForever(FineReader)。
这个程序的段落合并功能则是在我对在网上大肆吹嘘的某“智能排版”工具感到极端厌烦的情况下做出来的,保证比它好使。

http://www.comicer.com/stronghorse/software/exe/TextForever_chn.zip

teleport pro网站网页抓取软件
Teleport Pro可以从Internet的任何地方抓回你想要的任何文件,它可以在你指定的时间自动登录到你指定的网站下载你指定的内容,你还可以用它来创建某个网站的完整的镜象,作为创建你自己的网站的参考。 Name:greendown   Code:714841311
http://www.quxp.com/download/view-software-1446.html
http://www.86nt.com.cn/tracky/article.asp?id=38

wget绿色版下载工具
是一个从网络上自动下载文件的自由工具。
wget可以跟踪HTML页面上的链接依次下载来创建远程服务器的本地版本,完全重建原始站点的目录结构。这又常被称作"递归下载"。在递归下载的时候,wget遵循Robot Exclusion标准(/robots.txt). wget可以在下载的同时,将链接转换成指向本地文件,以方便离线浏览。

wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性.如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。



jhysds 发表于 2022-8-25 14:49:41

{:4_104:}                                       

jiangwhei 发表于 2022-5-26 12:14:22

本帖最后由 jiangwhei 于 2022-5-26 12:22 编辑

慢慢学的,终于有点眉目了。

shaheking 发表于 2021-12-3 11:14:01

六、mdxexport ,将Mdx文件转换为Txt文件

xxkay_ 发表于 2021-10-27 21:55:03

6666666666666

mch1000 发表于 2021-9-13 16:00:17

谢谢大神教导,很详细{:6_137:}

五连绝世 发表于 2021-1-26 20:53:48

哈哈,看了这个帖子受益良多。

广东村民乙 发表于 2020-9-16 15:01:31

学习了,明白mdx mdd啥关系了

rumred 发表于 2020-5-21 08:11:04

mdxbuilder制作的词典,再转回txt,用getdict不行。

nuww77 发表于 2020-4-8 10:04:19

写的真JB乱 不会讲 还讲呢吗原理。。。直接弄几个例子吧 低水平sb

profesor 发表于 2020-3-12 00:10:20

帮助巨大,感谢楼主。。。

好友营 发表于 2008-10-19 11:12:47

请问用teleport pro 怎样设置批量下载啊?不会是
http://baike.baidu.com/view/1.htm
http://baike.baidu.com/view/2.htm
http://baike.baidu.com/view/3.htm
......
http://baike.baidu.com/view/8000.htm
这样输入吧?:L

ldlcau 发表于 2008-10-21 08:36:05

teleport pro 不能用于下载百度百科,主要是下载依靠超链接的网站。

ldlcau 发表于 2008-10-21 08:59:11

teleport pro的使用方法

http://www.hongen.com/pc/pcketan ... elport/telp0201.htm

http://www.pconline.com.cn/pcedu/soft/wl/brower/10202/35426.html

推荐Teleport Pro V1.54 汉化版

大多数情况下地址编号没规律,这时就要使用我们的法宝了——Teleport pro,这是我见过的最强的离线浏览器,下面详细介绍一下它的使用。

第一步:新项目向导,一定要选图中的那一栏。

第二步:粘贴网址,这里的网址是图片所在文件夹的地址,这个也要你自己想办法找哦,下面的最大链接数看具体情况而定,如果想让文件夹找得很准一般设为1。

第三步:添加所找文件的类型,勾上。

第四步:编辑。这一步是一定不能少的,它可以让你的下载效率倍增,你可以控制下载文件的大小和类型,要注意的是“最小文件长度”一般不能太小,否则会把缩略图也一起下载的。

第五步:选择保存地点,一切OK!

331shui 发表于 2008-10-22 16:49:18

顶顶
虽然看不懂:loveliness:

mikeliran 发表于 2008-11-4 20:22:41

不错 学习了!

aceivy 发表于 2008-11-24 00:26:33

差不多都知道,呵呵

ny2008 发表于 2008-12-8 13:12:54

回复 1楼 ldlcau 的帖子

:loveliness: :loveliness: 虽然看不懂.thanks

hh999 发表于 2008-12-27 22:40:54

学习了,谢谢!

QWP960 发表于 2009-1-4 16:59:57

:) 谢谢!

tony4d 发表于 2009-1-20 08:17:28

关于那个“MDICT文本处理软件”的介绍,没看懂怎么回事。

维基转换工具 Wiki2Txt V1.1,这个有链接吗,是怎么用的,和“维基百科转mdx源文件制作工具 ”有啥区别?如果没有后者好用最好能注明。

“mdxbuilder处理的原始文档大小在4G以下“, 我处理过一个5G多的维基源文件,都还好啊。不晓得极限是多少G?

ultraedit的宏可否对一批文件进行批处理吗?目前只知道可以对一批文件进行批量替换。

“词条内部跳转方法 <a href="entry://#1">目录一</a>   (一定要有<a name=1></a>相对应) ”, 内链只是跳到那个词的位置,不知道可否高亮显示啊。另外如何链接到诸如https://pdawiki.com/的网页?

[ 本帖最后由 tony4d 于 2009-1-20 08:38 编辑 ]

ldlcau 发表于 2009-1-21 11:54:44

原帖由 tony4d 于 2009-1-20 08:17 发表 https://pdawiki.com/images/common/back.gif
关于那个“MDICT文本处理软件”的介绍,没看懂怎么回事。

维基转换工具 Wiki2Txt V1.1,这个有链接吗,是怎么用的,和“维基百科转mdx源文件制作工具 ”有啥区别?如果没有后者好用最好能注明。

“mdxbuilder处 ...

Wiki2Txt 连接暂时没找到,应该是和维基百科转mdx源文件制作工具类似.

mdxbuilder处理的原始文档大小极限我没有测试过,可以联系下RAYMAN

高亮显示可以使用htm语法,请到网上查找相关内容.

链接到诸如https://pdawiki.com/的网页
<a href=https://pdawiki.com/>https://pdawiki.com </a>

ldlcau 发表于 2009-1-21 11:57:52

MDICT文本处理软件 是将处理好的一组txt文本文件转换合并为mdx原文件的工具.txt文本文件的标题作为词条名称.

合并好的文件可以直接用mdxbuilder转换为mdx

tony4d 发表于 2009-1-21 16:04:19

原帖由 ldlcau 于 2009-1-21 11:54 发表 https://pdawiki.com/images/common/back.gif


高亮显示可以使用htm语法,请到网上查找相关内容.

链接到诸如http ...

页内链接怎么用高亮,可以举个例子吗?
链接网站是知道,可是点击之后没法打开那个网址啊。
谢谢

eter 发表于 2009-2-4 16:41:31

楼主,你是否可以重新上传一下Collins英英词典,rayfile的链接过期了下载不下来。谢谢

rayman 发表于 2009-2-5 11:27:38

原帖由 tony4d 于 2009-1-21 16:04 发表 https://pdawiki.com/images/common/back.gif


页内链接怎么用高亮,可以举个例子吗?
链接网站是知道,可是点击之后没法打开那个网址啊。
谢谢
高亮就是改变文字底色,用控制颜色来实现就可以了。
外部链接现在不支持,可以考虑以后把这个功能加进去。

ldlcau 发表于 2009-2-5 14:53:49

原帖由 eter 于 2009-2-4 16:41 发表 https://pdawiki.com/images/common/back.gif
楼主,你是否可以重新上传一下Collins英英词典,rayfile的链接过期了下载不下来。谢谢

https://pdawiki.com/forum/thread-901-1-1.html

ldlcau 发表于 2009-2-5 15:27:04

外部链接
pc版按住shift然后点击链接可以在外部窗口打开

2662 发表于 2009-3-18 22:50:40

Wiki2TXT v1.1m

http://bbs.pdafans.com/viewthread.php?tid=500730

lanzhij 发表于 2009-4-8 13:12:06

babylon 词库用什么工具可以转换呀? 很想转一些,里面有很有有用的词典.

yru 发表于 2009-4-9 23:16:44

跳转时,<a href="entry://key">key</a>,不能用大写字母A,即不能用<A href="entry://key">key</A>,否则无法跳转

roadfjl 发表于 2009-4-12 01:35:07

很想看懂这个帖子,自己做做词库,可是看了很多遍,还是看不懂。下载了mdxbuilder,里面带了个example文件,如下:
Abc
`1`Abc&#96;s`2`<p>`3`(hol,hJl; houl)
</>
English
English test
</>
中文
中文测试
</>


在上面的内容中,Abc是词条名称,好理解。
可是第二行啊 `1`Abc&#96;s`2`<p>`3`(hol,hJl; houl),这是个什么东西啊?实在看不懂。
再往后走也还好理解

roadfjl 发表于 2009-4-12 01:53:19

我用mdxbuilder把它自带的example.txt转换成mdx,然后用mdict去读,结果报错。"unable to open mdx file:invalid style sheet"看来自带的例子文件有问题?

yru 发表于 2009-4-12 12:05:51

原帖由 roadfjl 于 2009-4-12 01:53 发表 https://pdawiki.com/images/common/back.gif
我用mdxbuilder把它自带的example.txt转换成mdx,然后用mdict去读,结果报错。"unable to open mdx file:invalid style sheet"看来自带的例子文件有问题?
example.txt转换成mdx可以打开,你注意两个问题:1.目标文件最好将后缀.mdx打上,2.encoding一定要选UTF-8(Unicode)。你再试试

4hj6 发表于 2009-4-16 07:57:11

好啊

:) 顶
页: [1] 2 3 4 5 6 7 8
查看完整版本: mdict版制作方法和常用工具