这个世界太乱
以下将 Immersive Translate 简写为「ImmerTrans」。 本文为我对 ImmerTrans 使用体验的个人总结。
新世界的大门
ImmerTrans 曾经是开源软件,作者是 Owen Young。经过资本充血,新的 ImmerTrans 看上去更强;但 UserScript 代码被混淆,以至于脚本有没有掺私货,我无从下手去查,但是只要它不上传什么东西,就没什么大问题,在 DevTools 都可以看到。
不是很愿意面对《隐私政策》《服务条款》。
用其他开源替代品的感受
我曾尝试转向 KISS Translator,体验如下:
- 双语对照中,译文破坏了原文的原有样式,LaTeX 当然也免不了七零八碎。
- 有相当破碎的上下文和明显的机翻垃圾,译文没法读——这个更忍不了,经常要 fallback 到原文自己读。
而 ImmerTrans 的情况则相反。 读者可以用一下 KISS Translator 试试,单是上两条就足够劝退我了。(
Google Translate 也可以这么美丽
以往用 Chrome/Chromium 的页面翻译时,机翻垃圾见得不少。
但是我不知道 ImmerTrans 用了什么黑魔法,上下文非常的连贯;偶尔有对缩写的错误翻译——这个问题不大。 察觉到机器翻译的译文中存在问题时,只能 fallback 到原文自己读。
现在 Google Translate 已经能覆盖我的大部分需求。 因为用了 Google 的 translate-pa 这个给 Chrome 用的私有 API。
[!TIP] 有些机翻错误第一眼不太能发现,比如「Predication/谓词」和「Prediction/预测」
什么时候用 LLM?
基于 LLM 的翻译远慢于 Google Translate,把 LLM 用在翻译上简直是大材小用,不如把 DeepL 订阅用在翻译重要的文章上。
我一般把论文丢给 Gemini 2.5 Flash 和 NotebookLM 用于提取综述,选择要不要读原文。
ImmerTrans 的 PDF 翻译
这个功能,相当劲爆!
ImmerTrans 翻译完输出的 PDF 大小膨胀得可怕,不到 10 MiB 的书能膨胀到 100 MiB,太吓人了!
但是因为有用,所以隐忍中,少话。ImmerTrans 你崛起吧!
[!WARNING]
从 ImmerTrans「开始翻译 600 多页的 PDF」到 Firefox 完成「打印 PDF 到文件」,能占用「> 20 GiB」的内存,迫使我扩大 swapfile——如果你没为此做好准备,那就准备好触发 Out-Of-Memory killer 吧! 死的进程里一定有你的浏览器。
啊宝宝,快来用 Firefox!
Firefox for Android 支持相当多的扩展,Violentmonkey 位列其中! Violentmonkey 支持多设备端同步脚本与脚本状态,这意味着在移动端 Firefox 上也能用 ImmerTrans!
干!
Take ♂ it, boy
拿 UserScript 版本的 ImmerTrans
ImmerTrans 官网提供 UserScript 版本。
还有一份来自 Internet Archive 的快照。
我会一直使用这个快照版本,直至该版本功能不再工作,或有更好的选择。
问一下:有多少人注意到官网上的这个 UserScript 了?大家本不用装浏览器扩展的。
装 UserScript Runtime
推荐 Violentmonkey,这个插件在 Firefox 和 Chromium 系浏览器中可用,是 Tampermonkey 的开源替代。
对于访问控制,详见 Tampermonkey 文档。
以下是文档中对 @connect 的描述:
@connectThis tag defines the domains (no top-level domains) including subdomains which are allowed to be retrieved by
GM_xmlhttpRequest
// @connect <value>
<value>can be:
- A domain name like example.com (this will also allow all subdomains).
- A subdomain name like subdomain.example.com.
- Self to whitelist the domain the script is currently running at.
- Localhost to access the localhost.
- An IP address like 1.2.3.4.
- *.
删除遥测
照着 DevTools 的 Network 里翻请求找和遥测相关的域名就可以。
将全部子串 ="immersivetranslate.com 替换成 ="arpa
只保留翻译服务
Violentmoney 会弹出编辑器,把 @connect 删到只剩下你用的翻译服务的域名。
以下是我的选择:
// @connect google.com
// @connect translate.googleapis.com
// @connect api-edge.cognitive.microsofttranslator.com
// @connect edge.microsoft.com
// @connect translate.yandex.net
// @connect www2.deepl.com
// @connect w.deepl.com
// @connect generativelanguage.googleapis.com
// @connect chat.openai.com
// @connect bing.com
// @connect www.bing.com
// @connect api-free.deepl.com
// @connect api.deepl.com
// @connect api.openl.club
// @connect translate.volcengine.com
// @connect www.googleapis.com
// @connect www.google-analytics.com
// @connect translate-pa.googleapis.com
// @connect api.cognitive.microsofttranslator.com
// @connect api.groq.com
// @connect api.x.ai
// @connect api.openai.com
// @connect openai.azure.com
// @connect api.anthropic.com
// @connect openrouter.ai
// @connect api.deepseek.com