[原创Zotero系列教程之六]编写翻译器

Posted by c4pr1c3 on January 7, 2011

标题写好很久了,一直没有时间完成这篇教程。前段时间豆瓣上有网友提醒我之前写的百度专利的Zotero翻译器现在有bug,我今天测试了一下,似乎没有问题?

最近一段时间以来,Google Code似乎一直处于被XX状态,这里整一个本地的备份(83d8cf18a56f4eb36de6202f7df441e0),方便无法飜墻的Zotero用户。下载的压缩包里包括:

  • baidu-zhuanli.js                         0541dd5bf45ffc6831f58aea24e74c8a
  • cnpat.js                                       56ef1a310f602cb012087893368ed0e8

关于Zotero翻译器编写的最佳教程首推: How to Write a Zotero Translator

官网的帮助文档汇总也不错:http://www.zotero.org/support/dev/creating_translators_for_sites

对于编写Zotero翻译器来说最核心的几个技术分别是:

  1. js操作DOM的方法
  2. DOM节点的XPATH查询语句,类似这样://div[2]/div/table/tbody/tr[2]/td[2]
  3. Zotero Translaotr API

对于关键技术1和3,找几个代码实例玩玩很快就能模仿上手。

对于关键技术2,可以借助Firefox的Firebug扩展的“可视化获取DOM节点的XPath代码”功能,如下图所示:

copy xpath demo

至于代码调试,可以试试官方推荐的这个scaffold IDE扩展

自己开发的或者下载的第三方Zotero Translator的安装很简单:

把单独的.js文件丢到Zotero数据库目录下的translators目录,重启Firefox即可。

后记:在Google “Zotero”相关的最新中文资料时发现了这个pdf文档,做的很精致,推荐新手阅读:肉特柔微型指南