Yi's Blog

思绪来得快,去得也快

PopClip Extension 记录生词

popclip-1

PopClip 是一款模仿 iOS 选中文字之后弹出几个黑色的按钮,对选中的文字进行操作的软件。价格便宜,有很多插件可供使用。

使用 PopClip 可以满足记录生词的需求:看到生词时,选中单词,点击按钮,将生词加入到一个列表中,供复习使用。

单词列表的选择

记录生词列表有以下几种选择:

  • 将单词和简单的词义写到一个文件或者数据库里
  • 在 OmniFocus 中中创建一个条目,单词作为题目,词义作为附件
  • 将单词加入到欧路词典的生词本中

使用前两种方法让生词列表更简单可用一些,但是如何获取词义是个问题。通过编写代码可以从 OS X 自带的词典应用中获取到词义(具体可以参考 Mattt 的 DictionaryKit),但是这个接口获取到的完整词义是供应用渲染的 XML 文件,不是通过复制粘贴出来的富文本,不能直接放在文件中和 OmniFocus 里,所以没有选用前两种方案。

将单词加入到欧路词典虽然管理起来复杂一点,但是词义的问题不用操心了,自带了同步功能,导出打印的效果也挺好,是个不错的选择。

生词导出

PopClip Extension 的编写

PopClip Extension 的编写主要是参照 Github 上的源码和文档,当然也可以读读 Tuts+制作 Extension 的教程。简单来说需要创建 3 个文件:

  • plist 文件:介绍项目名称、项目类型(Service、AppleScript、URL 等等)等等。
  • png 文件:项目出现的图标。
  • 脚本文件:这个是可选的,如果使用的一个脚本的话就有,其他类型可以没有

然后将三个文件放在同一个文件夹下,在文件夹名后加上 .popclipext,此时文件夹就会显示为一个文件(已经安装好了 PopClip 的情况下)。双击这个文件,插件就安装好了。

popclip-3

为了实现向欧路词典中添加生词,我选择编写 AppleScript 类型的插件。这里不得不提一下,作为一个新手,在没有调试工具的情况下摸索着编写 AppleScript 真是让人头疼的事情。因为想要调试 AppleScript,搜出了一个特别牛逼的软件——Script Debugger。说它牛逼,一方面是因为这是一款制作超过了 20 年的软件,作者 Mark 通过编写、维护和销售这个软件做了 20 多年的独立开发者(Script Debugger’s 20th Anniversary)。因为受众较少,这款软件的定价较高,需要 $199。另一方面是因为通过试用知道其好用程度足以让人快速上手 AppleScript,大大降低了制作 AppleScript 的门槛。在这里向作者致敬,希望有一天我也能写出这么优秀、提升别人工作创造效率的软件。

popclip-4

具体的代码参考了官方 Github Repo 中 Evernote 的 Extension,代码在 Jeswang/PopClip-Extension-Eudic,需要的 AppleScript 很简单,就是自动化了几个点击的事件,如果有需要很容易修改。

最后祝五一节快乐,Happy Hacking。

- EOF -