【原创】 为mac添加自制词典 转换mdx格式到mac词典格式
转载请写明出处:http://www.douban.com/note/507451268 昨天心血来潮想给mac的词典应用添加几本词典,可是找来找去也没有特别好的,只好自己动手啦。手头上有几个好用的mdx词典,研究了一天终于成功转换。网上有一些教程,但很多可能遇到的问题没有提到让我摸索了很久哈。希望各位能在学会之后多多分享好词典,让mac词典丰富起来~(用力点击查词真的很好用啊啊啊看英语文章很开心)
----------------2020年5月更新-----------------
几年过去了,我也大学毕业,从编程小白变成程序员了。以前的步骤有写的不清楚的地方,现在尝试重新写清楚一点。因为有 PYGLOSSARY,转换格式其实只要两步操作:用PYGLOSSARY生成,然后 make。下面是详细步骤。
准备步骤
- 打开终端。
- 安装 Homebrew。Homebrew 是一个 macOS 下的包管理器,你可以用 Homebrew 很方便地安装各种软件。如果你只是因为这篇教程需要安装 Homebrew,完成后也可以留着不用删掉,因为它真的很好用。根据 https://brew.sh/ 的提示,在终端输入
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
3. 装好 Homebrew 之后,用它来安装Python,在终端输入
brew install python
4. 苹果的 Additional Tools for Xcode 好像只给有苹果开发者账号的人下载了。不过可以尝试在这里下载一个镜像 https://github.com/SebastianSzturo/Dictionary-Development-Kit。如果你有开发者账号的话,在 https://developer.apple.com/download/more/ 下载 Additional Tools for Xcode,里面有 Dictionary Development Kit。
5. 把 Dictionary Development Kit 解压到 ~/Developer/Extras/目录下。(如果没有这个目录,新建一个。)~/Developer/下面的目录结构长这样
. └── Extras └── Dictionary Development Kit ├── bin ├── documents │ └── DictionarySchema │ └── modules ├── project_templates │ └── OtherResources │ └── Images └── samples
6. 你在之前的步骤可能已经装好了 Command Line Tools for Xcode。如果没有,上网搜索一下,安装Command Line Tools for Xcode。
7. 最后装 PYGLOSSARY 需要的 python 包,在终端输入
pip3 install lxml beautifulsoup4 html5lib
8. 从 ilius/pyglossary · GitHub 下载 PYGLOSSARY,解压到~/Downloads/。解压好后目录结构长这样
pyglossary-master ├── README.md ├── __init__.py ├── config.json . . ├── main.py ├── pyglossary.desktop ├── pyglossary.pyw ├── pyglossary.spec ├── res │ ├── mimapps.list │ ├── pyglossary.ico │ ├── pyglossary.png │ ├── pyglossary.xbm │ ├── resize-16.png │ └── resize.png ├── setup.py └── ui . . .
开始转换
1. 假设我们在~/Downloads/dict/ (也就是下载文件夹里面一个叫dict的文件夹)有一个词典叫Longman_Dictionary.mdx ,在终端输入
cd ~/Downloads/dict/
进入这个文件夹,然后输入
~/Downloads/pyglossary-master/main.py --write-format=AppleDict "~/Downloads/dict/Longman_Dictionary.mdx" Longman_Dictionary
开始转换。
2. 完成后后多出一个文件夹Longman_Dictionary,就是上面这行输入的最后一个参数。在终端进入这个文件夹开始生成 .dictionary 文件。在终端输入
cd Longman_Dictionary make
就会出现一个字典文件。复制这个文件到~/Library/Dictionaries,或者直接输入
make install
打开词典app,进入设置就能看到新生成的词典了。到这一步你的词典就制作好啦。恭喜!
------------------原文-------------------- 参考: 【可以给Mac的Dictionary添加其他原装词典吗?怎么添加?】http://www.zhihu.com/question/20428599 【MAC OSX词典转换笔记】http://www.pdawiki.com/forum/thread-13014-1-1.html 准备: 我们要用到一个开源项目PYGLOSSARY,https://github.com/ilius/pyglossary。点开链接,下载zip文件就可以了。

根据页面下方的指引,准备好: •BeautifulSoup4(with html5lib as backend) required to sanitize html contents. (在终端输入:sudo easy_install beautifulsoup4 html5lib) • - GNU make as part of Command Line Tools for Xcode. - Dictionary Development Kit as part of Auxillary Tools forXcode. Extract to /Developer/Extras/Dictionary Development Kit - (这两个均在http://developer.apple.com/downloads下载,要仔细找一找,好像搜索不到。)

- 将Dictionary Development Kit解压到/Developer/Extras/下。(如果没有这个目录,新建一个。) 准备好要转换的词典,在这里以abc.mdx和abc.mdd为例,将他们存放在 /Users/(你的用户名)/Downloads/1/ 文件夹里。记得词典名字最好不要有空格中文之类。mdd文件包含了词典的格式、多媒体等资料,不能遗漏。 将下载回来的PYGLOSSARY的zip文件解压到 /Users/(你的用户名)/Downloads/ 目录下(为了方便,记得将文件夹改名为pyglossary) 好啦!准备工作就做好啦。 第一步: 打开终端,在终端输入: cd ~/Downloads/1/ ~/Downloads/pyglossary/pyglossary.pyw --read-options=resPath=OtherResources --write-format=AppleDict abc.mdx abc.xml (进入 /Users/(你的用户名)/Downloads/1/ 目录; 开始转换。)


第二步: 成功之后,你会在目录里看到一些新文件。不要关闭终端,继续在终端输入: make (生成文件)

好了,现在应该能看到多出来的objects里有一个.dictionary文件(夹),就要胜利了。现在可以关掉终端。 如果在这时候将词典文件拷贝到 /Library/Dictionaries 文件夹里,你可能会发现词典的格式很难看,不是原来的样子,而且名称也很奇怪。这是因为一些设置参数还没有调整。我们再回到生成的.dictionary文件。 第三步: 进入.dictionary文件:右键 - 显示包内容

我们首先调整词典的名字: 打开info.plist(可能需要xcode) 将Bundle identifier的abc改成一个你喜欢的唯一的字符串(保证和其他词典不同就可以了); 将Bundle name改成词典的名字,比如图中改成“牛津英语习语词典”。 保存并关闭。

再调整样式: 将DefaultStyle.css删掉; 将sf_cb.css复制一份并且改名成DefaultStyle.css,因为词典里有对sf_cb.css的引用还是不要删掉sf_cb.css了。 <划掉>将sf_cb.css的文件名改成DefaultStyle.css。</划掉>(我也不懂为什么会这样,是转换脚本设定的原因吗)

第四步: 好了!现在词典可以用了。将它复制到资源库里的Dictionaries文件夹(/Library/Dictionaries),再在词典的偏好设置中启用吧!别忘了和大家分享。 问题: 每个转换的词典释义里都会有一个标题,貌似是软件自动加上的,不知道怎样去掉? 20150710 #已解决:只要在两个css样式文件里添加 h1{ display:none; } 就可以了。


分享几本做好的词典,不是什么大部头的,但对英语写作绝对是宝典啊。 更新:链接已经过期了。
-
DeLrrrr 赞了这篇日记 2023-12-14 20:22:28
-
Kinyuan 赞了这篇日记 2021-12-12 01:16:40
-
不隔山 赞了这篇日记 2021-08-08 10:28:57
-
[已注销] 赞了这篇日记 2021-07-11 20:00:59
-
乌鸦写字台 赞了这篇日记 2021-03-07 20:45:52
-
豆友47052321 赞了这篇日记 2020-10-26 20:25:00
-
momo 赞了这篇日记 2020-10-15 04:43:04
-
夏暮 赞了这篇日记 2020-09-19 11:24:21
-
peach圆滚滚 赞了这篇日记 2020-09-18 09:34:10
-
豆友189028402 赞了这篇日记 2020-07-20 11:50:50
-
Leslie 赞了这篇日记 2020-07-09 02:04:49
-
秦岭未央 赞了这篇日记 2019-11-20 18:56:02
-
MyZenith 赞了这篇日记 2018-02-28 03:23:20
-
o2live 赞了这篇日记 2017-02-02 00:18:32
-
途中~ 赞了这篇日记 2017-01-03 23:34:15
-
Alienwarezk 赞了这篇日记 2016-11-14 01:37:01
-
就是这样 赞了这篇日记 2016-07-14 18:56:57
-
Byron 赞了这篇日记 2016-07-14 16:29:17
-
尊悦 赞了这篇日记 2016-05-26 09:32:23
-
JJadper 赞了这篇日记 2016-05-13 05:30:03
-
Kluft 赞了这篇日记 2016-05-11 05:47:50
-
die SEELE 赞了这篇日记 2016-02-10 18:06:54
-
魂不守舍的夜 赞了这篇日记 2015-12-30 05:24:14