引
说到翻译插件,我们不得不提到那个赫赫有名的插件——沉浸式翻译。
可是在当我们使用邮箱客户端 Thunderbird 想要翻译的时候就犯难了。Thunderbird 的插件体系比较简陋,没有收录沉浸式翻译。而且 Thunderbird 和 Firefox 的部分 api 不相同,还不能直接文件安装沉浸式翻译插件。但考虑到 Thunderbird 和 Firefox 都是基于 Gecko 内核的,大部分 api 是通用的,那不如直接在原插件的基础上进行一些小修改,使其能在 Thunderbird 上工作。
插件修改
我们先到 沉浸式翻译官网 下载 Firefox 扩展,并解压该扩展。
解压后的目录大概长这样:
c
沉浸式翻译的 js 代码做了混淆,所以我们尽量做一些非侵入式的修改。
打开 background.js
,在文件最后插入以下代码。
async function registerMsgDisplayScript() {
await messenger.messageDisplayScripts.register({
js: [{file: "/content_script.js"}, {file: "/content_start.js"}]
});
}
registerMsgDisplayScript();
打开 manifest.json
,找到 permissions
字段,将其中的 contextMenus
改为 menus
,再在后面加上 messagesModify
权限。
还是 manifest.json
,找到 browser_specific_settings
字段,将 gecko
字段下的 strict_min_version
字段的值改为 78.0
。
打开 background.js
和 options.js
,将里面所有的 contextMenus
替换为 menus
。
打开 background.js
,将 ["browser_action","page_action"]
里面的 "page_action"
项删除。
在插件的根目录里面将所有文件打包成 zip 文件。
插件安装
打开 Thunderbird ,点击右上角的三条杠,点击「扩展和主题」,点击左侧的「扩展」,点击右上角的齿轮,点击「从文件安装附加组件…」,找到前面压缩出来的 zip 文件,安装。
大功告成,再完成一下新手引导就可以正常使用了。