vscode 语言配置需严格遵循路径、格式与重启要求:windows 路径为 %appdata%\code\user\locale.json,macos 为 ~/library/application support/code/user/locale.json,linux 为 ~/.config/code/user/locale.json;文件必须是单行 utf-8 无 bom json,仅含 {"locale":"zh-cn"} 类结构;修改后须彻底终止所有后台进程并重启,否则不生效。

locale.json 文件路径和创建时机必须准确
VSCode 启动时只读一次 locale.json,且只认用户数据目录下的固定路径。它不会自动生成,也不接受工作区或插件目录里的同名文件。路径写错、放错位置,等于没配。
- Windows:
%APPDATA%\Code\User\locale.json(不是%USERPROFILE%\.vscode或%LOCALAPPDATA%) - macOS:
~/Library/Application Support/Code/User/locale.json(不是~/Library/Preferences/Code) - Linux:
~/.config/Code/User/locale.json(注意是.config/Code,不是.vscode-server)
如果文件不存在,就新建;存在但内容杂乱(比如含注释、多字段、旧配置),直接清空,只留一行合法 JSON。
locale.json 内容格式极其严格,错一个字符就静默失效
VSCode 对 locale.json 的解析是“全有或全无”:只要 JSON 不合法、值不标准、编码带 BOM,它就完全忽略该文件,回退到英文界面,且不报任何提示。
- 必须是单行、纯 JSON:
{"locale":"zh-cn"}或{"locale":"en"}(仅此一种结构) - 键名
locale必须小写,值必须是小写短横线格式:zh-cn,不是zh_CN、ZH-CN、zh-hans - 必须用双引号,不能用单引号;不能有尾部空格:
{"locale":"zh-cn" }❌ - 必须保存为 UTF-8 无 BOM —— 用 VS Code 自己新建并保存该文件,最稳妥
重启必须彻底,后台进程残留会导致配置不加载
locale.json 只在进程启动时读取。点「Reload Window」或只关窗口,后台的 Code.exe(Windows)、Code Helper(macOS)、code(Linux)仍在运行,新配置根本不会生效。
- Windows:打开任务管理器,结束所有
Code.exe进程(包括后台服务类) - macOS:活动监视器中搜索
Electron和Code Helper,全部强制退出 - Linux:执行
pkill -f "code.*--no-sandbox"或killall code - Remote-SSH / WSL 用户注意:本地改了没用,得在远程机器上单独配对应路径的
locale.json
中文生效后部分界面仍是英文,这不是配置失败
顶部菜单、左侧活动栏、设置页搜 locale 显示 zh-cn,就说明主界面汉化成功。终端、调试控制台、Git 输出、部分插件 UI 显示英文,是因为它们走各自独立的语言环境(如系统 locale、shell 环境变量、插件自身 i18n 实现),和 VS Code 主界面的 locale.json 无关。
别在这些区域反复验证是否“汉化成功”,那是徒劳。真正容易被忽略的是:企业设备可能被组策略锁定(Windows 注册表 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\PreferredUILanguages),此时手动改 locale.json 也会被覆盖。











