article_image

2024-03-05更新:将标题译文直接置于原标题之后,而非另起一行,避免“双额头”。 2024-02-15 更新:兼容没有标签包裹的文本段落(例如 Graham 和 Minsky 的网站),GitHub 中的动作已更新。 2023-02-26 更新:支持翻译 XHTML 文件,GitHub 中的动作和代码已经更新。 不要跳过这段文字: 本文提供的是一套方案,而不是一个开箱即用的产品级软件,如果您不读文章而直接下载我提供的工具,您不会获得任何效果。请仔细阅读文章。尤其请注意,文中的 Bookmarklet 不能、不能、不能 直接翻译网页,需要配合浏览器自带翻译功能或翻译插件使用。

又,如果您使用中文界面,请在下载 Keyboard Maestro 版动作后,将“Select……in the menu”步骤中的英文项目改为菜单栏中的对应中文,否则 Keyboard Maestro 无法正确运行相应项目。

另,Safari 等浏览器有严格的权限控制,您需要先根据“实现”一节中的步骤开启 Javascript 权限,才能使用本文的方案。

网页翻译,做成不难,做好不易。算上种种套皮服务,网页翻译工具可谓人才辈出;读者若不满足于不求甚解,则难免要流转于原文和译文之间——遑论机器翻译的错漏在所难免——可惜正视对照阅读之需求的翻译工具,却是凤毛麟角,沅江九肋。

本文将“对照”与“翻译”分而治之,既不依赖具体某个翻译服务,也不限于操作系统和浏览器,无论电脑、平板或手机,也不管 Chrome、Firefox 或 Safari,均得取一瓢饮,应是久治之方。

Alt text
在电脑和手机浏览器上均可中英对照翻译

困境

曾有嗜阅读者,遇现成工具如获至宝2,但这些服务不是倒闭,就是开始大兴土木、建造封闭 App,若是为了翻译功能而抛弃整个浏览器,只怕是发屋求狸,惜指失掌。

而纵观几大翻译引擎提供商,Google 限制调用(包括设置验证码和禁止使用部分网页组件),百度自由度不高,微软则干脆对普通用户关闭了网页翻译渠道,即便是有志编写工具的进阶用户,似乎也落入了指雁为羹的尴尬境地。我曾编写了一款网页分屏翻译插件,也随着 Microsoft 相关服务的下线而失效。

Alt text
网页分屏翻译,基于Microsoft翻译引擎(已失效)

究其根本,在于对照翻译毕竟是对照与翻译之交集,其外延之小,大概不足以支撑起一个市场,也就少有人涉足。寥寥几家服务,也多需要付费,往往还是不讨喜的订阅制。

思路

解决之道,当在于分解“对照”与“翻译”,在电脑上肆无忌惮地实现前者,而在各家服务所提供的免费额度之内,尽情享用后者——实际上,Google 和苹果的翻译限额几乎无限。前文提及的 Microsoft 分屏翻译工具(已失效),即是将翻译前后的网页嵌入同一个页面内;现在的方案,则是将网页内容原地复制,一段翻译、一段原样不动,由此生成双语对照翻译的页面。

对照之工,可在本地完成,无涉任何服务商;翻译一事,仍由翻译引擎代劳,Chrome 和 Edge 的翻译功能和三方插件自不待言,近几代的 Safari 浏览器也已鸟枪换炮,配备了自带翻译引擎,均可使用本文方案。

实现

拆分实现,好在既能依托自动化工具,一步到位;也可以寄生于浏览器、不安装任何插件或软件,只不过多一两步操作。鉴于需要使用 Javascript 调整网页布局,使用本文方案前,需运允许浏览器(以下演示均以 Safari 为例,其他浏览器请自行调试)运行 Javascript:

  1. 在 Safari 设置的“General”栏中,开启“Show Develop menu in menu bar”;
  2. 在 Safari 的“Develop”菜单中,勾选“Allow JavaScript from Apple Events”(这一步不可或缺)
  3. 点击“Allow”,确认。
Alt text
允许 Safari 运行 Javascript
注:经读者提醒,在不同版本的 Safari 中,“show developer menu”的位置有差异。例如在 15.5 版本中,该选项位于“Advanced”。

Keyboard Maestro 最适合处理此类分步骤的杂事,以 Safari 为例,已安装文首所列 Keyboard Maestro Macro 的读者,启用之后,在所需翻译的网页按下 ⌘Command-K,稍等即可获得对照翻译的页面3。使用 Chrome 或其他浏览器的读者,也只需调整 Keyboard Maestro Macro 的最后一步,让它启动您所用浏览器的翻译功能即可。

Alt text
中英对照翻译网页

若没有安装 Keyboard Maestro,或者想在 iOS 上对照翻译,则可尝试 Bookmarklet 版本的工具。将 这个链接 拖到或添加到浏览器收藏夹,然后在需要翻译的页面点击该收藏项目图标,首先会得到一个内容被复制过的网页;随后,运行浏览器自带的翻译功能,旋即可看到对照翻译效果。

Alt text
Safari for iOS 上也可以翻译

拓展:下载中英对照翻译的 PDF

浏览器如通渠中之地,对照翻译工具大可与其他功能结合,如虎添翼。阅读模式与对照翻译相得益彰,可撇去浮渣,清爽易读;而结合 @Hum 发明的网页抓取方法,诸君还能够将对照翻译、排版得当的网页下载到本地,方便日后细嚼慢咽,以免仓促。

Alt text
下载中英对照翻译的网页为 PDF

此外,翻译的对象并不限于网页,但凡是一个 HTML 格式的文档,也可以对照翻译。只需在浏览器中打开 HTML 文档,同样可以运行对照翻译工具——当然,如果不需要对照,也能借用浏览器的翻译引擎获得译文,此法不受服务器配额限制,适合大量翻译文献资料。

Alt text
中英对照翻译本地文档

HTML 格式或许陌生,而 epub 格式电子书则尽人皆知,实则后者不过是前者的变种,稍作加工、还原为 HTML,便也能翻成中文。大量尚无中译本的原版资料,若能获取去电子书,便可以顺利转为一段原文、一段译文的文档,先人一步,朵颐舶来佳肴。此话题,可见《用 Safari 翻译外文电子书和文档》一文。


  1. 直接下载的动作仅兼容英文系统,其他语种的用户请将最后一步的 Safari 英文菜单改为您所用的语言。
  2. 最著名的可能是“彩云小译”。
  3. Safari 的翻译功能需要联网。

author_avatar

Lawyer, macOS/iOS Automation Amateur