修复第三方 Kindle 字典释义显示不全的问题
最近 Kindle 伴侣的字典下载留言区有小伙伴留言反应第三方字典无法显示的问题比较频繁,所以 Kindle 伴侣有针对性的对该问题进行了排查和解决,并提供了修复后的字典文件下载。
因为精力有限,不可能将所有第三方 Kindle 字典全部修正一遍。如果你有动手能力,可以按照本文提供的思路或方法自行解决。还可以顺便将修复后的字典文件传到网盘,然后在留言区将下载地址提交给 Kindle 伴侣,以造福更多小伙伴。如果你没有动手能力,也可在本文下方的留言区提交求助,Kindle 伴侣将根据需求不定期放出修复后的字典文件下载。
目录
一、为什么第三方字典释义会显示不全
二、如何修复第三方字典显示不全的问题
1、提取字典源文件
2、修改源文件代码
3、重新生成字典文件
三、已修复的第三方 Kindle 字典下载列表
一、为什么第三方字典释义会显示不全
第三方 Kindle 字典释义显示不全的具体表现为在使用字典查询词条时,遇到内容比较多的释义需要滚动下翻页时,释义内容只显示一部分,后面的内容就被截断不显示了,有的甚至干脆就没有下翻页的滚动条。词典中的内容可以正常看到。这是什么原因导致的,又该怎么解决呢?
Kindle 伴侣曾写过两篇从零开始制作 Kindle 字典的文章,一篇是面向新手的《自制 Kindle 字典简明教程(入门篇)》,一篇面向老手的《自制 Kindle 字典简明教程(进阶篇)》。从文章里可以看出 Kindle 官方提供字典源代码是经过标准化的,而第三方 Kindle 字典大多是从其他格式转换而来的,里面的代码相对于 Kindle 来说可能就是“不标准”了,所以想要解决第三方词典释义显示不全的问题,就是按照官方字典的格式去修正第三方字典的源代码。
二、如何修复第三方字典显示不全的问题
修复字典的显示问题的原理很简单,就是把第三方字典的源代码提取出来,然后用编辑器(推荐使用 Sublime Text)按照官方字典源代码格式或参数修改一下。当然因为字条量比较大,没必要处理的和官方字典一样整洁,只需要把下面将要说的几个必要的部分修改一下即可。
1、提取字典源文件
Kindle 字典的所谓源代码其实就是一份简单的 HTML 格式文档。那怎么样获取到字典的源代码呢?可以使用一个叫做“KindleUnpack”的软件。该软件有 Calibre 插件版本,只需要打开“首选项”的“高级选项”下的【插件】,然后点击【获取新的插件】,在弹出的窗口中的“Filter by name(按名称过滤)”一栏输入“KindleUnpack”就能找到,选中它,点击右下角的【安装】按钮安装。安装完毕后会弹出的提示窗,点击【现在重启 Calibre】按钮,重启后即可成功安装。
接下来把字典文件拖放到 Calibre 中。选中字典,点击软件右上方操控区域的那个 KindleUnpack(黄色的三角按钮图标),在弹出的菜单中将鼠标悬浮到带有绿色小锁的菜单,然后点击弹出的菜单“Unpack MOBI”(如果是 AZW3 文件会显示“Unpack AZW3”)。接着会让你选择输出文件夹,选择指定文件夹后,点击【Open】按钮,稍等片刻(根据文件大小不同处理时间长短不同),Kindle Unpack 把把 mobi 或 azw3 文件“肢解”完毕了。这样就可以得到一份名为 mobi7 的文件夹(目前 Kindle 字典都是 mobi7 标准),在该文件夹下通常会有以下三份文档:
├──── images
├──── images and cover ...
├──── book.html
├──── toc.ncx
├──── content.opf
这些文件的含义不懂的可以参考那两篇字典自制教程。这里我们只需要关注 book.html 和 content.opf 这两个文件。一般从字典文件中拆出来的 HTML 文档比较大,所以这对你的电脑性能是个考验,如果 CPU 和内存不够强劲的话,下面的修改操作将会变得很艰难(当然也可以采取比较灵活的处理方法,比如使用文件分割软件把大文件分割成小文件再分别处理)。
2、修改源文件代码
首先用编辑器打开 book.html,然后利用正则表达式,按照官方字典的 HTML 结构把文档的代码“标准化”一下(官方字典的 HTML 结构请参考自制教程进阶篇)。注意,为了节省时间和提高效率,没必要把所有的代码全部标准化以便,只需要按照下面 Kindle 伴侣总结出来的要点即可。
确保词条都被 <idx:entry scriptable="yes"> .. </idx:entry>
包裹着,需要特别注意的是,一定要带有 scriptable="yes"
这个属性,该属性控制滚动条的显隐,不带的话没法上下翻动。这一条其实就是导致第三方字典显示不全的最根本原因。然后每个词条之间可以使用 <hr/>
隔开,也可以使用 <mbp:pagebreak/> 把每个词条分页显示。其他代码改不改不重要。
接着就是编辑 content.opf,同样按照自制 Kindle 字典进阶教程中的代码格式修改一下。需要特别注意的是,要把 <output encoding="utf-8"/>
这行代码写进去,不然如果字典源代码中有特殊字符的话可能会导致无法正常显示。另外如果你想要对比两个字典的效果,就把 <dc:Identifier id="uid">02FFA518EB</dc:Identifier>
这一串字符修改一下吧,随便改一下即可,以免被 Kindle 把修改前后的字典识别成同一本。其他代码可改可不改,但最好按照教程中的格式来。
3、重新生成字典文件
修改完毕保存一下,然后下载名为 Mobipocket Creator 的软件(该软件在自制字典教程入门篇中提供了下载)。该软件只能在 Windows 下使用。安装完成后,直接双击刚才编辑的那个 content.opf 文件就可以打开。什么都不需要设置,依次点击菜单栏“Build -> Build e-Book”或点击界面上方靠右的【Build】图标按钮调出生成界面,然后点击下面的【Build】按钮,进度条到达 100% 即生成完毕并切换到另外一个界面。选择“Open folder containing eBook”,然后点击【OK】按钮,会打开项目文件夹,会看到一个后缀名为 content.prc 的文件。这个 prc 文件就是已经修复好的字典文件了。重命名一下,拷贝进 Kindle 中即可使用。
* 可能有小伙伴比较纳闷,为什么不直接用 KindleGen 生成呢?进阶教程里不是实用的 KindleGen 吗?经过测试,不论在 Windows 还是 Mac OS X 系统下,KindleGen在处理比较大的 HTML 文件时会假死,CPU占用 100%,运行了一个小时没有任何反应,倒是 Mobipocket Creator 生成很快。其实 prc 和 mobi 文件没啥区别,把后缀名改成 mobi 也能用。
三、已修复的第三方 Kindle 字典下载列表
下面是已修复字典的下载列表(为了区别今后的修正添加了版本号):
- 牛津高阶英语词典(英英&英汉双解)(第七版)修复版.prc(由网友“b2rmax”提供)
- Collins King Mixed Dictionary – Fixed.prc (由网友“栾涅”提供)
- Eric’s English Chinese Dictionary with CALD – Eric Dong – Fixed(由网友“栾涅”提供)
欢迎更多小伙伴加入进来,把你喜欢的字典进行修复,然后再分享给更多小伙伴。
© 「书伴」原创文章,转载请注明出处及原文链接:https://bookfere.com/post/184.html
延伸阅读
- [2016.02.03] Kindle 阅读器固件升级至 5.7.2
- Kindle 中文字体推荐:更换一下字形口味
- 亚马逊 Kindle 自助出版指南:向数百万读者分享你的故事
- Kindle 使用小技巧之 X-Ray 功能
- [每周一书]《沟通的艺术》全方位掌握沟通技能
- 体验难比 Kindle,当当国文电子阅读器遇冷
- [每周一书]《变形记》如果有一天,我变成了一只大虫子
- 超过 26 本 kindle 原生系统字典的下载及安装方法
- 解决 Calibre 推送“500 Error: bad syntax”错误
- [每周一书]《活出生命的意义》集中营与存在主义
- Kindle 推送教程:教你用电子邮箱推送电子书
- 为什么 AZW3 电子书查字典取词时会选中一整句
- [网友投稿]《人生的智慧》直观的生活哲学
- Calibre 使用教程之优化电子书的排版
- 给 Kindle 一个家?亚马逊或将开设一家实体书店
官方的现代英汉词典,好写词只显示一个词性的释义,有解决办法么?