背景
譬如pdawiki的MDict 詞庫(kù)資源區(qū)等網(wǎng)站中有大量網(wǎng)友制作并精心排版的mdict詞典,也非常容易下載,但是事實(shí)上Mac OS自帶的詞典相當(dāng)好用……只是詞典資源少。
那么言歸正傳,如何將Mdict格式的詞典轉(zhuǎn)換為macOS Dictionary呢?
【注】本文默認(rèn)讀者已經(jīng)下載好詞典文件并且.mdx與.mdd在同一個(gè)文件夾中。
參考
Mdict to macOS Dictionary轉(zhuǎn)換筆記
How to Convert Mdict to Mac OS X dictionary
筆者的配置
macOS High Sierra 10.13.4
python 2.7(系統(tǒng)自帶)
python 3.6(需要安裝)
Xcode 9.3(需要安裝)
操作過(guò)程
【注】文中終端輸入的sudo大部分可以省略。
- 從github上克隆pyglossary,打包下載再解壓也可。
2.安裝Xcode,或者只安裝Command Line Tools for Xcode。
【注】只安裝Command Line Tools for Xcode的方法筆者沒(méi)有嘗試過(guò),新版本的Xcode中包含有Command Line Tools for Xcode。
- 下載Dictionary Development Kit。
首先,在蘋果的開發(fā)者網(wǎng)站用自己(或其它人)的賬號(hào)免費(fèi)申請(qǐng)開通成為開發(fā)者,
然后在更多下載中找到 Additional Tools for Xcode的最新版本,下載。
【注】迅雷等下載器下載可能會(huì)失敗,盡量使用safari直接下載。
下載好后裝載,應(yīng)該包含:

在其中的Utilities文件夾中,找到Dictionary Development Kit,復(fù)制。
在應(yīng)用程序文件夾中找到“實(shí)用工具”文件夾,在其中創(chuàng)建一個(gè)DictionaryDevelopmentKit文件夾(無(wú)空格),粘貼。
- 安裝python-lzo
終端輸入:
sudo pip3 install python-lzo
【注】出現(xiàn)問(wèn)題參考解決方法
- 安裝BeautifulSoup4
終端輸入:
sudo pip3 install lxml beautifulsoup4 html5lib
- 【可選】Macport安裝——針對(duì)音頻轉(zhuǎn)換
【注】筆者未進(jìn)行音頻轉(zhuǎn)換操作,詳細(xì)內(nèi)容可以參照How to Convert Mdict to Mac OS X dictionar,其中更新macport的操作使用:
sudo port selfupdate,對(duì)sources.conf的修改使用
rsync://rsync.macports.org/release/tarballs/ports.tar [default]即可(參考意見(jiàn))。
- 轉(zhuǎn)換
終端中輸入:
cd 詞典文件夾
#如: cd downloads/mwaled
python pyglossary文件夾路徑/pyglossary.pyw --read-options=resPath=OtherResources --write-format=AppleDict 詞典縮寫.mdx 詞典縮寫.xml
#如:python Downloads/pyglossary/pyglossary.pyw --read-options=resPath=OtherResources --write-format=AppleDict mwaled.mdx mwaled.xml
【注】如出現(xiàn)ImportError: No module named builtins問(wèn)題,查看解決方法。
等待程序運(yùn)行結(jié)束,使用文本編輯打開makefile,

修改DICT_BUILD_TOOL_DIR為自己的Dictionary Development Kit文件夾路徑,并保存。如圖中所示為 "/Applications/Utilities/DictionaryDevelopmentKit/Dictionary Development Kit"。
【注】DICT_NAME是生成文件的名字。
【另注】Makefile.plist可以修改詞典的參數(shù),詳見(jiàn)How to Convert Mdict to Mac OS X dictionar。
【另注】可以使用Mdict詞典制作者提供的css文件(如果有)代替生成的css文件(參考意見(jiàn))。
終端中輸入:
make && make install
- 完成
可以在詞典應(yīng)用的偏好設(shè)置中修改詞典順序已經(jīng)是否顯示。制作好的詞典可以在詞典文件夾中找到。
【注】如果制作前已經(jīng)打開了詞典應(yīng)用,可能刷不出新制作的詞典,重新打開詞典應(yīng)用即可。