外语学习,腥风血雨再起!分享:Calibre文本(docx, epub, azw)生词释义批量标注方法和材料

分享:

一种利用Calibre阅读器,对电子书里的生词自动标注和添加释义的方法。生词标注和添加释义后的效果图:

epub格式效果图:


docx格式效果图:

这里的生词,是指出现在用户所给出的词表(比如英语6级词汇+释义表;医学词汇+释义表,今年考试要额外记忆操练的词表+释义),由用户自由界定。释义也是用户自选的,可以随意选取某某词典的释义。用户词表和释义示意图:

利用Calibre阅读软件,使用上述词表(词表要经过一番转换,转成Calibre认可的格式),就可以对多本书、多篇文章(docx, txt, epub, azw等格式)进行生词标注、添加释义。词表就是文本文件,可以自由设计,反复利用,不断更新。

给您要读的电子书籍添加标注和释义,让阅读学习来得更猛烈些吧!

本方法好处:

  • 技术要求低:基本只需要Emeditor,Excel办公软件和Calibre三种软件。不需要常规的编程环境;主要使用正则和excel处理文本。
  • 很容易定制。使用者很容易根据自己特定需求,定制自己的Calibre转换词表CSR。
  • 也就是说,这种方法很适合小白。论坛和网上有类似的方法,功能更强大。目前这种方法相对更为简单。

实战演示,以英语为例:

  1. 需要下载一个英语词性-原形表(has-have),这个地址很好的这样的表:FreeLing/data/en/dictionary/entries at master · TALP-UPC/FreeLing · GitHub 。上面有好几种文件,这里只取verbs, adj, adv表,对一般人应该够用了。把这三个表合并成一个表:01-comibined list, verbs+adjs+adv.txt (952,7 KB)
    image

  2. 下载或制作自己的单词释义表(比如英语6级词汇+释义表;医学词汇+释义表)。这样表很容易制作或得到。这里从GitHub - mahavivo/english-wordlists: 常用英语词汇表 选取了GRE_8000_Words.txt ,稍微整饬格式后为:01-GRE 8000单词释义表.txt (358,8 KB)

  3. 这里直接使用了上述表(稍微修改了格式),作为自己专门的表(比如英语6级词汇+释义表;医学词汇+释义表),用户可以制作自己的表。

  4. 经过一番excel和emeditor“暗箱”操作,把上面两个表合并,合并后如下:
    02-CSR转换之前、词形-原形-释义表.txt (602,0 KB)

  1. 这其中的转换不难,但不好描述。大概是这样的:使用excel里面的index+match公式。
  2. 在Emeditor编辑器,对上面的表进行正则替换,使用执行的公式如下:
    寻找
    替换
 ^([^\t]+)\t(.+$)
\\b\(\?<![※>])\1(?!※)(?=\\W\)\r\n《\1》 \[<u>\2</u>\]\r\n
\s
※
  1. 对表做完上述替换后,再在表的尾部手动添加:
※
 

《+([^》]+?)》
<b>\1</b>

》

  1. (上面部分地方是有空格的,留意!尽量不要从上面拷贝公式,尽量使用下面整理好的txt表,已是Calibre直接可用替换文件)
  2. 替换后,得到的txt表:

03-最终CSR,GRE8000单词注释体换标.txt (1,2 MB)

  1. 这就是最终可以在Calibre使用的替换表了。1.2M,体积不大。这个表的后缀为.txt,也可手动将后缀改成.csr,.csr是Calibre替换表的默认格式。

  2. 打开Calibre,将电子书拖入,找到电子书,Convert Books,载入(Load)选择替换表,等待替换表完全载入,Ok开始转换。

片刻之后,转换完成。

我这里用一个epub文件做实验,epub原文件: Pride and Prejudice by Jane Austen-pg1342-images.epub (579,2 KB)

  1. 转换后的文件:
    Pride and Prejudice-with def - Jane Austen.epub (757,2 KB)
    Pride and Prejudice-with def - Jane Austen.docx.7z.7z (636,8 KB)

局限:

  1. 上面的 GRE 8000单词释义表.txt 是为了演示而随手找到的表,可能未必适合别人。而且至于释义,可以到处取用,左右逢源。

  2. 细节之处,未能详细说明,如有问题,请群友自相交流。

  3. 这里的方法是雕虫小技,更适合小白。懂编程的网络大人自有高级方法。

  4. 上面只演示了英语的转换,其他语言也可制作类似的转换表。

  5. 甚至,也可以制作红楼生词标注和释义版。

  6. 还请大家多多优化,多提意见,多多分享。

  7. 用户自己操作起来会遇到很多问题。比如:如果用英-英释义,如何避免对释义中的单词再标注和添加释义等等。

倡议:

  1. 大家可以将自己的转换表、转换成果、心得、经验分享出来。
  2. 谁能整理分享下下其他几大语言(法语、西班牙语、德语等)的转化表吗?
  3. 由于时间紧促、资源有限,很遗憾未能制作出一份通用高质量的替换表。期待有人能够分享。
3 Likes

看截图,want, down 词性/释义搞错了,用 NLP 工具可改善此问题。

原贴链接就写在右上角About那里

您提到类似软件看起来很高深。我主贴发的方法实际操作行更强。如果不想折腾,可以直接下载主贴第27条下的替换表(文本),即 03-最终CSR,GRE8000单词注释体换标.txt (1,2 MB),立即可在Calibre试用效果。如觉得有用,可再深入了解。

1 Like

NLP工具也太高深了,是超级大咖才能用的起的。want, down 词性/释义搞错了,是我选用的释义源头的问题,我仓促选用的!选择好些的释义源文件,能改善这个问题,但有时候释义/词性搞混的问题,是很难解决的。

个人觉得最好不要在看英文原著时加中文注释,也不要太过容易地获得译文(比如一行英文一行中文的中英文对照),都会加深对母语的依赖心理,不利于甩掉拐杖(想必靠看原著学外语的最终都希望能直接看懂)。
但是确实生词很影响阅读体验,一个个查既费劲又降低读书的流畅性。虽然倡导泛读法的主张完全不查字典或少查字典,但不可否认太多生词纯靠猜和跳过是影响理解和体验的。所以我觉得最好的办法还是事先把生词挑出来放anki里背一遍当作预习,然后读书的时候尽量不查字典,这样背过的生词能很快就用上,能加深印象。读完之后最好再结合书中语境背一遍。
当然, 只是个人浅见。

2 Likes

赞同将高频生词导出先预习

我试了两天先背单词再看小说,结果出现了一个问题,就是单词背得慢,小说看得快,很快进度就超过了背的单词,这时候就面临一个抉择:是停下来先背单词还是看了爽了先往下看。没人会选前者 :joy: