vscode界面未变中文,90%因插件错误、未执行configure display language命令或重启不彻底;1.80+版本已内置简体中文,通常无需装插件。

VSCode 界面没变中文,90% 是因为装了错的插件、没执行 Configure Display Language 命令、或重启不彻底——三者缺一不可;VSCode 1.80+ 已内置简体中文,多数情况根本不用装插件。
怎么确认该不该装 Chinese (Simplified) Language Pack 插件
先看 VSCode 版本:按 Ctrl+Shift+P 输入 Help: About 查版本号。若 ≥ 1.80,直接跳过插件安装,只执行 Configure Display Language 即可。只有以下情况才需要手动装插件:
- 使用 Snap/Flatpak 安装的 Linux 版(如 Ubuntu Software Center 装的),它常剥离内置语言资源
- VSCode 版本 ≤ 1.75,且官网下载页明确标注“no built-in language packs”
- 远程开发(Remote-SSH / WSL)中本地已生效,但远程端仍是英文——此时远程机器需单独装插件或配 locale
装插件时必须认准 ID:ms-ceintl.vscode-language-pack-zh-hans,发布者是 Microsoft。搜 Chinese (Simplified) Language Pack for Visual Studio Code 全名,别点 Chinese Language Pack 或 VSCode Chinese 这类第三方包——它们不更新、乱码率高,且可能注入脚本。
Configure Display Language 命令总失败?检查这三点
这个命令不是“可选操作”,而是唯一能正确生成并写入 locale.json 的入口。常见失败原因:
- 命令面板里搜不到
Configure Display Language:说明语言包根本没装成功,或 VSCode 没读到扩展目录,先重装插件再试 - 列表里没有
zh-cn选项:确认插件已启用(扩展面板里状态是“启用中”,不是灰色“已禁用”) - 点了
zh-cn后没反应或弹窗空白:大概率是后台残留进程干扰,Windows 查任务管理器杀光所有Code.exe,macOS 用活动监视器查Electron,Linux 执行pkill -f "code --ms-enable-electron-run-as-node"
注意:zh_CN、zh-hans、Chinese 都无效,必须严格输入小写 + 短横线:zh-cn。
手动改 locale.json 为什么还是英文
locale.json 是最终兜底方案,但 80% 的“改了没用”源于路径或内容错误:
- 路径必须是用户级路径,不是工作区路径:
Windows:%APPDATA%\Code\User\locale.json
macOS:~/Library/Application Support/Code/User/locale.json
Linux:~/.config/Code/User/locale.json
别写进项目根目录下的.vscode/locale.json,VS Code 不读它 - 文件内容必须是合法 JSON,且仅一行:
{"locale":"zh-cn"}—— 多空格、少引号、UTF-8 BOM、加注释都会导致静默失败 - 改完必须彻底重启:点 Developer: Reload Window 不行,它不重读
locale.json;必须关闭所有窗口,确认进程退出,再全新启动
如果远程开发(WSL / Remote-SSH)仍为英文,locale.json 必须放在远程机器上:~/.vscode-server/data/Machine/[哈希目录]/locale.json,本地设置完全不影响远程端。
界面部分中文、部分英文?重点查 settings.json 和命令行参数
这种“夹生”状态基本锁定两个干扰源:
-
settings.json里写了无效的 locale 配置:
打开Preferences: Open Settings (JSON),搜索"locale"、"language"、"typescript.locale",删掉所有含zh的字段——settings.json不识别locale字段,它只会触发加载失败或降级为英文 - 快捷方式或终端 alias 强制指定了英文:
检查桌面快捷方式属性里的“目标”是否带--locale=en-us;
在终端运行which code,再查 shell 配置(~/.zshrc或~/.bash_profile)里有没有alias code='code --locale=en-us'这类覆盖项
真正卡住人的从来不是“不会装”,而是装完以为结束了,其实只是完成了前半步;语言包是字典,Configure Display Language 是告诉编辑器“请翻这本字典”,而彻底重启才是让新字典真正上架的动作。











