Code Translate 和 Comment Translate 是最贴合“看注释就翻”的两个插件:前者支持右键选中任意文本翻译,后者专攻注释、光标停在注释内按快捷键即可原地翻译。

用什么插件能直接翻译代码里的英文注释
VS Code 自身不带翻译功能,但 Code Translate 和 Comment Translate 是目前最贴合“看注释就翻”的两个插件。前者支持选中任意文本(包括注释、字符串、变量名)右键翻译;后者专攻注释——只要光标停在 // 或 /* */ 里,按快捷键就能原地替换为中文,不污染代码结构。
注意:Comment Translate 默认只处理注释内容,不会误翻变量名或函数名;而 Code Translate 更灵活,但需要手动选中,适合偶尔查某个陌生 API 的文档字符串。
翻译不准?先检查你的语言模型和代理设置
绝大多数“翻成乱码”或“语法错乱”的问题,根源不在插件本身,而是调用的翻译后端。这两个插件默认走的是免费公开接口(如 Google Translate 公共 API 或 DeepL 的非认证通道),响应不稳定、有频率限制,且不支持上下文连贯翻译。
建议做三件事:
- 在插件设置里把
translateEngine改成deepl(需注册获取免费 key),准确率明显提升 - 如果公司网络屏蔽了境外 API,必须配好系统级代理,并在 VS Code 设置里勾选
http.proxySupport为on - 禁用其他翻译类插件(比如
Live Translate),它们常抢夺右键菜单或监听相同快捷键,导致翻译失败却无报错提示
为什么有些注释死活不响应快捷键
常见于三种情况:
- 光标没真正落在注释内部——比如停在
//前一个空格,或紧贴着代码末尾的;,Comment Translate就会静默忽略 - 文件语言模式未被识别,比如 .py 文件被错误设为
plaintext,插件无法定位注释语法边界 - 注释嵌套或格式异常,例如 Python 中写了
# TODO: fix this # and that,第二个#会被误判为新注释起点,截断翻译范围
验证方式:按 Ctrl+Shift+P 输入 Change Language Mode,确认右下角显示的是 Python、JavaScript 等真实语言,而不是 Plain Text。
不想改源码又能保留双语注释?试试“翻译后加括号”模式
Comment Translate 提供 translateMode 配置项,推荐设为 append 而非 replace。这样原注释不动,翻译结果自动追加在后面,用括号包裹,例如:
// init config object → // init config object (初始化配置对象)
这个模式对协作项目特别友好:新人看中文,老员工仍可基于英文注释做 git blame 或搜索;也不用担心翻译出错导致逻辑误解。唯一要注意的是,别在已存在中文括号的注释里重复触发,否则可能变成 // xxx (yyy)(zzz) —— 插件不会自动去重。
真正麻烦的是多行注释里混着代码片段或 URL,这类内容最好手动跳过,别依赖自动翻译。机器还不懂哪句是真注释、哪句是调试用的临时日志。










