装错插件是常态,须先明确目标:界面汉化用ms-ceintl插件,注释翻译选caiyun或comment translate,划词翻译用code translate并配置preservecode;arm用户需确认插件支持darwin-arm64/win-arm64;locale设zh-cn,translate.defaulttargetlanguage设zh;注释翻译需光标在注释内、语言模式明确、避免超长或混合术语。

装错插件是常态,先确认你要翻译什么
VS Code 里“翻译”不是单一功能:界面汉化、代码注释翻译、任意文本划词翻译,三者底层逻辑完全不同,混用插件必翻车。装之前必须明确目标——是要把菜单变成中文,还是想快速看懂 axios.get() 的注释,抑或临时查一段英文文档?
- 界面汉化 → 只能用
ms-ceintl.vscode-language-pack-zh-hans,其他任何“中文插件”都无效 - 代码注释翻译 →
Caiyun Translator或Comment Translate是目前唯一稳定支持的,yzane.translate等旧插件在 ARM 架构上根本不会出现在命令面板 - 划词/右键翻译任意文本 →
Code Translate更通用,但默认不跳过变量名,需手动配"codeTranslate.preserveCode": true
ARM 架构用户(M1/M2/M3 Mac、骁龙 Windows)必须检查二进制兼容性
很多插件发布包只含 x64 架构二进制,装到 darwin-arm64 或 win-arm64 版 VS Code 上会静默失效:命令面板搜不到 Translate,右键没菜单,也不报错。
- 验证方式:按
Ctrl+Shift+P输入Developer: Show Running Extensions,看插件是否在列表且状态为Active - 去插件市场页面右下角点
Versions,确认最新版有darwin-arm64或win-arm64标签 - 没标签就别硬装;临时替代方案是浏览器划词 +
Alt+Shift+T转发到 VS Code(需提前配好externalTerminal)
locale 和 translate.defaultTargetLanguage 必须分清
locale 控制 VS Code 自身 UI 显示语言,translate.defaultTargetLanguage 是翻译插件的目标语种,二者互不影响,设混会导致右键菜单消失或结果乱码。
-
locale必须是zh-cn(小写、短横线),不是zh、zh_CN或zh-CN -
translate.defaultTargetLanguage应设为zh(不是zh-cn),某些插件如rokoroku.vscode-japanese-translator会直接拒掉zh-cn - 改完不用重启,但得关掉所有已弹出的翻译窗口再重试,否则缓存旧设置
注释翻译失败常见原因和绕过方法
不是插件坏了,而是识别逻辑对上下文很敏感。光标位置、文件语言模式、注释语法都影响触发。
- 光标必须落在注释文本内部,比如
// init DB conn w/ retry,不能只停在//后面的空格处 - 只识别
//、/* */、/** */;#(Python)、--(SQL)不支持 - 文件语言模式要是明确的,比如
javascript,不能是plaintext或unknown—— 看右下角状态栏确认 - 遇到
context too long错误,说明选中注释超 500 字;手动缩小选区,或拆成两句再译
最易被忽略的是:插件无法理解混合语言注释里的术语边界,比如中文里夹 memoization,结果常翻成“记忆化”而非“备忘录模式”。人工校对后加 /* TRANSLATED: */ 标记,可避免重复触发。











