vscode菜单仍是英文因官方中文包仅覆盖约85%核心ui,右键菜单、gitlens等插件及终端标题栏等不由locale.json控制,需单独配置插件语言或安装chinese menu等补全插件。

VSCode菜单仍是英文,但提示和设置已中文——不是没装好,是覆盖范围本就有限
VSCode官方中文语言包只控制约85%的UI层,locale.json能生效的区域有明确边界:顶部菜单栏、命令面板(Ctrl+Shift+P)、设置界面(Ctrl+,)、弹窗标题、侧边栏标签这些是“核心UI”,语言包管得严;但右键菜单、GitLens按钮、调试器变量视图、终端标题栏等,压根不走这套翻译机制。
右键菜单/上下文操作仍是英文?这是Electron底层渲染决定的
这类菜单由VSCode的「上下文菜单服务」动态生成,实际渲染依赖Electron的Chromium内核,locale.json无法注入翻译。它不像主界面那样加载vs/workbench/contrib/.../nls.zh-cn.js资源文件,而是直接调用原生API显示字符串。
- 安装
Chinese Menu(ID:shengchen.vscode-chinese-menu)可补全右键、资源管理器快捷菜单、编辑器上下文项 - 别同时启用多个菜单汉化插件,比如
vscode-chinese-menu和chinese-menu,它们会互相覆盖导致部分条目消失 - 安装后不用重启,但旧右键菜单缓存未刷新——关掉再点一次右键才能看到效果
GitLens、ESLint等插件界面仍英文?它们不继承locale
插件界面语言是各自独立控制的,VSCode的locale只是默认值,不是强制继承规则。
-
GitLens需在settings.json中显式加"gitlens.language": "zh-cn" -
ESLint报错文本来自Node.js进程本身,不受locale影响;要中文提示,得靠eslint-plugin-i18n或换用支持本地化的LSP客户端(如typescript-language-server的i18n分支) -
Prettier无界面文字,但错误输出若仍为英文,检查是否启用了prettier.enable且prettier.showOutput为true,否则提示根本不会出现
终端标题、调试控制台、WebView里全是英文?这不是bug,是设计限制
这些区域根本不在VSCode UI翻译链路里:
- 集成终端标题栏、新建标签页文字由Electron Chromium渲染,VSCode无权接管
- 调试控制台(Debug Console)显示的是Node.js/Python解释器自身的错误消息,语言取决于系统
LANG或LC_ALL环境变量,和locale.json无关 - 自定义Editor、Webview Panel、GitHub Pull Request预览页等用的是网页技术栈,翻译必须由插件自己实现,VSCode语言包完全无效
真正难补的不是菜单,是那些嵌在WebView里的界面——它们连DOM都跑在隔离沙箱里,连document.querySelector都触不到,更别说注入翻译映射了。











