用 python 写出外文单词修炼利器

Fri, May 20, 2016 2-minute read

关于字典软件

以前在使用 Linux 时, 我一直用 StarDict 查外文单词。 不过从两年前使用 macOS 开 始, 只须划词搜索, 便可在弹出的便签窗口中查看释义, 十分方便。 然而在学习外文 过程中, 最简单的单词搜索常常也显得不够强大。

最近我写了一个十分简陋的小程序, 用来在命令行界面中查单词。 自认为略有优势的地 方在于可以使用正则表达式这个强大的工具。 使用这个程序也可以干很多有意思的事情, 比如找一些形状奇特的单词, 玩成语接龙等等。

这个小程序名字叫做 py-sdvb, 借鉴了 “sdcv” 的命名方式。 如果有常年使用 StarDict 或者 sdcv 的朋友, 应该知道如何找到合适的词典下载。 然而由于某些不可抗 力, 我并不能在这里提供下载地址等信息。


## 安装方法 ---
  • Py-sdvb 已经被上传到 PyPI, 因此可以使用 pip 命令来安装:
pip3 install py-sdvb
  • 如果不喜欢 pip 也没关系, 仍然可以通过 github 来获取:
git clone https://github.com/noinil/py_sdvb ~/py-sdvb

第二种安装方式的依赖

基本上 py-sdvb 完全依赖于 PyStarDict (https://github.com/lig/pystardict)。

缺陷

目前我仅在 macOS 上使用 python3 测试过 py-sdvb。 其他平台和版本应该会有很多 bug 存在。


## 使用方法 ---

首先需要将所有字典文件移到 ~/.stardict/ 目录。

使用 pysdcvpysdvb 命令来运行。


## 一些有趣的例子 ---

简单的 regular expressions (RE)

Figure: Simple RE search.

英文 “词根”

Figure: Word roots.

英文 “回文” 单词

Figure: Palindrome search.

最长的中文成语

Figure: Chinese idiom search.

包含 “三” 和 “二” 的成语

Figure: Chinese idiom RE search.

日文搜索

Figure: Japanese RE search.

在 Jupyter Notebook 中使用

Figure: Used in Jupyter notebook.