goldendict
GoldenDict是一款开源的桌面端词典检索应用,跨平台,支持多种词典格式。它有十分丰富的可配置项,包括字典组,拼写检查、单词发音、语音合成、在线翻译等等。GoldenDict-ng是基于前者重写的新一代GoldenDict,修复了一些长期累积的问题,目前仍然处于积极开发中,更多地说明见GoldenDict-ng文档。
二者操作相近,配置文件几乎可以共用(但不推荐)。GoldenDict-ng采用了更新的技术,而GoldenDict向前兼容了一些像Windows XP之类的老旧系统。这里就主要以配置GoldenDict为例。软件版本为GoldenDict 1.5.1、GoldenDict-ng-v24.05.05。
配置文件的位置#
同于大多数的软件的安装版,GoldenDict的配置文件也位于C:\Users\<username>\AppData\Roaming的<软件名>。如果要保存GoldenDict的配置,可备份此处的config文件。
如果使用Scoop安装,可以删除C:\Users\<username>\scoop\apps\goldendict\current\portable目录,也就是断开了和Scoop配置目录里的系统目录链接,位于C:\Users\<username>\scoop\persist\goldendict,见issue。这样配置起来相对简单些,我使用的是Scoop的配置文件夹,也更麻烦。
文章分为「基础篇」和「番外篇」。「番外篇」更多地涉及到「程序」这一功能,有更多的实验性和Bug,如文本翻译等。也并不一定与GoldenDict有很强的相关,如语法检查等。
窗口布局#
主窗口的布局可在菜单栏的「查看」中设置。我个人只保留了「查询面板」。
窗口的大小可以拖动窗口边框调整。对于调整弹窗窗口,参考该issue才操作。
黑暗主题#
git clone https://github.com/yozhic/GoldenDict-Full-Dark-Theme- 参考Installation段落进行安装
原样式有几处圆角边框。可以编辑styles\Dark\article-style.css:
// 词典框的圆角改为直角等
.gdarticle
{
border-radius: 0;
}
.programs_plaintext, .programs_html {
margin-top: 20px;
}
.gdactivearticle .gddictname {
border: none;
}
.gddictname {
border: none;
border-radius: 0;
}
编辑 → 首选项 → 附加样式 → Dark
修改字典字体#
// 在开头添加
@font-face {
font-family: <FontName>;
/* 添加本地字体 */
src: local('<Font Name>') url('file:C:\\Users\\<username>\\AppData\\Local\\Microsoft\\Windows\\Fonts\\<FontName>.ttf') format('truetype');
font-weight: normal;
font-style: normal;
}
// 在末尾添加
body
{
font-family: '<Font Name>', NotoSans;
font-size: 9.5pt;
}
.dsl_t
{
font-family: '<Font Name>', NotoSerif;
}
字体不会覆盖有内置样式的词典,或者ZIM档案。这种情况下,你可以尝试修改字典文件内部的.css文件。
添加词典#
我目前常用的字典,大部分都是StarDict格式。需注意,.dict格式和StarDict词典应用都是开源。而.mdx属于专有软件MDict的词典格式,更多信息见fileformat。
我个人使用也推荐的(附StarDict文件):
- ECDICT/简明英汉字典,或者Ultimate版本 (share_ecdict)
汇编的收录广泛的英汉双解词典数据库,含音标、词频和考试大纲标注。 - CC-CEDICT (share_cc-cedict)
英汉词典,且能进行部分汉英查询。适合快速查询。不含详细释义、语法、例句。 - GCIDE(GNU版国际协作英语词典) (share_gcide)
英英定义词典,提供详细释义、词源信息、文学例句。适合了解词义概念,尤其是专业词汇等。可能缺少现代、当代的词汇、释义、日常用法,或者已经过时、弃用。 - Online Etymology Dictionary (share_etymonline)
英语词源词典。 - WordNet (share_wordnet)
非传统形式词典,实际上是英语词汇数据库、词汇网络。核心为同义词集,也含“反义词”等关系集。适合用于扩展词汇、理解。 - 汉语大词典 (share_hanyudacidian)
“大型的、历史性的汉语语文辞典”,详细见《前言》。
不推荐的:
- KDr2.com上的
汉语大词典 离线版(StarDict) - Mdict.org上的汉语词典上的
汉语大词典(简体精排).mdx、漢語大詞典.mdx
主要理由是我浏览了几个帖子:汉语大词典从没经过转码的文本(自动转码谬种流传)、【结项】汉语大词典2.0源数据等几个帖子。具体理由也还有别的,举一个来说,word和meaning这两个词,来自字典格式转换工具pyglossary定义的数据库格式字典文件,里面的数据表的关键字。对于这本字典,如果要进行繁简转换,对于meaning(释义)部分,需要排除其中的引用、专用词句部分,对于word(词条)部分,可能需要有一个替换表,等等。
另一些StarDict字典:
- WikDict上的双语词典
- eBook Reader Dictionaries上的基于维基百科的英英词典
其他的:
- 工具书,如翻译人名
- Latin dictionaries上的拉丁语词典
- proteusx制作的古希腊语词典
编辑 → 词典 → 词典来源 → 文件 → 添加 → 字典所在文件夹 → 递归搜索 (On) → 应用。
添加词典群组#
- 词典 → 群组 → 添加群组 →
<group>→ 将词典拖入群组 → 应用 - GoldenDict的主界面 → 查找于 →
<group>
你可以在群组内拖动字典来调整顺序,如:
添加拼写词库#
通常称为「Hunspell Dictionary」,包含了所需的.aff、.dic文件。GoldenDict已内置了部分拼写词库,这里勾选所需即可:
编辑 → 词典 → 词典来源 → 构词法规则库
如果你添加了较新版本的词库,例如English Spell Checker Dictionaries上的「en_US」、LibreOffice Hunspell dictionaries里的en\en_US.*:
构词法规则库 → 变更 → .aff、.dic文件所在目录 → 勾选库中条目 → 应用
添加单词音频库#
pronunciations是一个英语语音资料仓库,但在v1分支里,它似乎已经清理了旧分支里的约2GB的音频文件,而使用generate.sh脚本来创建。这里假设你有了单词的音频文件:
词典 → 词典来源 → 音频文件目录 → 添加 → pronunciations/所在 → 应用
这里,如果使用的是便携版GoldenDict,可以将所有音频文件如:
压缩到pronunciations-en.zips,压缩包里不要有文件夹路径,然后作为一本词典导入即可。参考issue。
对于Forvo的多语言资料,可使用qBittorrent一类的工具,从该帖下载,参考帖子内容:
.opus格式的体积更小,音质同.mp3也十分相近,所以下载时只勾选Forvo_pronunciations/export/opus。约24GB大小,下载完成后不需要解压- 某个成员提到了GoldenDict的「音频文件目录」功能:不方便也不可靠,建议使用
.dsl文件。类似目录文件,指出音频文件的位置 - 从MEGA分享链接下载新版本的
.dsl文件,下载后解压ForvoDSL-20220513.7z到同名文件夹 ForvoDSL-20220513里的.dsl文件,需要同Forvo_pronunciations/export/opus里的.zip,放入同一个文件夹,例如Forvo_pron/。这里,也可以使用mklink创建系统链接完成,如mklink <path_to>\Forvo_pron\ForvoEnglish.dsl.files.zip <path_to>\en.zip- 修改
.zip文件的文件名,一一对应。例如将en.zip重命名为ForvoEnglish.dsl.files.zip,对应ForvoEnglish.dsl - 词典 → 词典来源 → 文件 → 添加 →
Forvo_pron/所在 → 应用
因为这些压缩档案包含了大量的小文件,移动、复制、解压上都非常慢。所以这里参考ForvoDSL-20220513/00README.txt的内容,使用Windows批处理脚本mklink_forvo_pron.bat(或者Bash脚本mklink_forvo_pron.sh)进行批量操作。运行前,需编辑脚本4-8行,参考我的目录设置,填写你的实际的目录位置。
在Windows上运行时:
命令提示符 → <path_to>\mklink_forvo_pron.bat → Enter
最后:
词典 → 词典来源 → 文件 → 添加 → Forvo_pron/所在 → 应用
添加语音引擎#
在Windows 10上:
- 设置 → 时间和语言 → 语音 → 管理语音 → 添加语音
- 词典 → 词典来源 → 语音合成 → 预览 → 可用语音引擎 →
Microsoft David Desktop - English (United States)→ 添加 → 应用
效果较差。我目前使用Kokoro进行文字转语音,见番外篇。
添加离线维基#
Kiwix是一个跨平台的离线的维基阅读器,也可自部署服务端。可阅读的内容不限Wiki,也适用于如StackExchange(Stack Overflow)、Project Gutenberg等等,来提供高速、稳定的档案访问服务。它支持高度压缩的.zim格式,该格式可包含元数据、HTML、图像等资源。配置步骤:
- 从ZIM Ebook Library选择档案,例如「wikipedia (English)」,当鼠标移到档案上时,或者点击档案在线阅读时,在浏览的左下角或者地址栏会提示档案全名。「all maxi」这个型号包含了除音频、视频等大型媒体文件外的所有内容。关于各型号的详细说明,见issue1、issue2
- 点击
Download - xx GB。对于大型档案,选择Torrent file,之后在BT下载器中打开该文件并下载 - GoldenDict → 编辑 → 词典 → 词典来源 → 文件 → 添加 →
.zim所在目录 - 等待GoldenDict创建索引
对于大型档案,无论是搜索条目,还是「全文搜索」,其速度称得上「很快」。例如,如果检索「古腾堡计划」的电子书库中提到某个词的段落:
GoldenDict → 搜索 → 全文搜索 → <word> → 搜索 → 单击条目
不过我目前使用的是Kiwix Server,在浏览器里预览ZIM档案,见kiwix-server.md。
设置鼠标取词#
GoldenDictOCR是一个AutoHotKey脚本,在它的「鼠标选择取词」模式下,可通过「双击选词、划词」来查词。需要配合GoldenDict的默认查词快捷键Ctrl+c+c来使用。
编辑IncludeAHK/GdOcrTool.ahk,填写GoldenDict.exe所在的正确位置:
运行GoldenDictOCR.ahk后,按Alt+i即可开关「鼠标选择取词」。
如果需要修改键位,例如:
- 编辑 → 首选项 → 热键 → 使用下列热键翻译剪切板中的单词 →
Alt+z - 编辑
GoldenDict.ahk,修改两处:- 118行附近,此处的
Send ^{c 2},即Ctrl+c+c,改为Send !z,即Alt+z - 37行附近,此处的
!i::,即Alt+i,改为^!g::,即Ctrl+Alt+g
- 118行附近,此处的
这个脚本也能和YomiNinja等工具很好的配合。
一些实用键位#
所有的快捷键在:
帮助 → GoldenDict帮助 → Shortcuts
常用的有:
Ctrl+l聚焦到输入框Alt+Left/Right前个/后个查询记录



