vs code 中文界面必须将 locale.json 放在用户数据目录的 user 子目录下,内容为严格 json 格式的一行 {"locale":"zh-cn"},且需彻底重启进程才能生效;remote-ssh/wsl 需单独配置远程端 locale.json。

locale.json 文件必须放在正确路径
VS Code 只读取用户数据目录下的 User/locale.json,其他位置全无效。常见错误是误存到工作区 .vscode/ 下、项目根目录下,或用记事本保存到了桌面再复制过去——路径错,文件就等于不存在。
三个系统对应路径:
- Windows:
%APPDATA%\Code\User\locale.json - macOS:
$HOME/Library/Application Support/Code/User/locale.json - Linux:
$HOME/.config/Code/User/locale.json
注意:User 是固定子目录名,大小写敏感;locale.json 必须全小写,不能叫 Locale.json 或 locale.txt。
内容格式和编码有硬性要求
locale.json 不是普通配置文件,它只接受一行严格合法的 JSON,且编码必须是 UTF-8 无 BOM。哪怕多一个空格、少一个引号、用了中文冒号,VS Code 都会静默忽略整个文件,回退到英文界面。
正确写法只有一行:
{"locale":"zh-cn"}
关键点:
-
zh-cn必须全小写、带连字符,zh_CN、ZH-CN、zh-hans全无效 - 双引号必须是英文符号,不能是中文引号
- 不能有注释、不能有多余逗号、不能换行
- 用 VS Code 自己新建并保存该文件,能天然避免 BOM 问题;别用记事本或 Sublime Text 直接保存
改完必须彻底重启,不是“重新加载窗口”
修改 locale.json 后,如果只点 Developer: Reload Window 或按 Ctrl+R,界面不会变。VS Code 的语言上下文在进程启动时就已初始化,中途 reload 不会重读 locale 配置。
必须做到:
- 关闭所有 VS Code 窗口(包括托盘图标)
- 检查后台进程是否残留:Windows 看任务管理器里有没有
Code.exe,macOS 看活动监视器里的Electron和Code Helper - 全新启动 VS Code(双击图标或终端执行
code)
验证是否生效:看顶部菜单栏是否为“文件”“编辑”“视图”,设置页搜索框占位符是否为“搜索设置”,右下角状态栏是否显示 zh-cn —— 这三处对了,才算真正落地。
Remote-SSH / WSL 环境要单独配
你在本地设好了 locale.json,连上 Remote-SSH 或 WSL 后界面仍是英文,这不是配置失败,而是远程端运行的是另一个独立的 VS Code Server 实例,它读取的是远程机器上的配置,和本地完全无关。
远程端操作步骤:
- Remote-SSH 连接后,按
Ctrl+Shift+P运行Developer: Open User Data Folder,进User/目录编辑或新建locale.json - WSL 中先执行
code --list-extensions确保 Server 已启动,再进路径:~/.vscode-server/data/Machine/[哈希后缀]/User/locale.json - 远程端的语言包也得单独安装,不能靠本地同步
最容易被忽略的是:终端、调试控制台、Git 日志这些地方显示英文,不是 locale.json 没起作用,而是它们走系统语言或运行时环境,和 VS Code 主界面的 locale 设置无关。











