直接替换 locale.json 文件最省事,需确保 vs code 彻底退出、路径正确、内容为 utf-8 无 bom 的单行 json(如{"locale":"zh-cn"}),且注意 snap/flatpak/远程开发等特殊场景的配置位置。

直接替换 locale.json 文件最省事
只要路径对、内容准、进程关干净,把现成的 locale.json 文件丢进去就能立刻生效,比走命令面板快得多。它绕过插件安装状态检查和 UI 渲染链路,是真正“拿来即用”的方式。
- 必须确保 VS Code 已彻底退出:Windows 查任务管理器里有没有残留的
Code.exe或Code Helper;macOS 用活动监视器查Electron进程;Linux 执行ps aux | grep code确认无残留 - 目标路径必须严格匹配系统:
- Windows:
%APPDATA%\Code\User\locale.json - macOS:
~/Library/Application Support/Code/User/locale.json - Linux:
~/.config/Code/User/locale.json
- Windows:
- 文件内容只能是单行合法 JSON:
{"locale":"zh-cn"}(注意小写、短横线、双引号、无空格、无注释) - 编码必须为 UTF-8 无 BOM —— 用 VS Code 自己新建并保存,别用记事本或第三方编辑器直接写
为什么复制过去还是英文?常见三处错位
不是配置无效,而是文件没落进 VS Code 实际读取的位置。90% 的“导入失败”都卡在这三个地方:
-
locale.json被放进了settings.json所在目录但层级错了,比如放在了User上一级,或误塞进WorkspaceStorage里 - 用了 Snap、Flatpak 或企业定制版 VS Code,它们会忽略用户级
locale.json,得加启动参数:code --locale=zh-cn - 远程开发场景(Remote-SSH / WSL)下,本地的
locale.json对远程实例完全无效,必须单独在远程机器上配:路径通常是~/.vscode-server/data/Machine/[hash]/User/locale.json
批量部署或重装后快速恢复中文界面
适合运维、教学或频繁重装环境的场景。关键不是“怎么导”,而是“导到哪、谁在读”:
- 不要手动复制整个
User目录 —— 里面混着 keybindings、snippets、extensions 等,容易覆盖掉当前配置 - 只提取并分发
locale.json文件本身,配合脚本自动写入对应路径(例如 PowerShell 一行:Set-Content -Path "$env:APPDATA\Code\User\locale.json" -Value '{"locale":"zh-cn"}' -Encoding UTF8) - 若用同步工具(如 Syncthing、rsync),注意排除
Machine子目录下的临时 locale 配置,它们是 Remote-SSH 自动生成的,与本地无关 - 便携版 VS Code 的
locale.json在data/user-data/User/locale.json,不是用户主目录下那套
验证是否真生效,只看这三处
别被终端、Git 输出或插件界面干扰判断。VS Code 主界面语言是否切换成功,只依赖这三个位置是否变中文:
- 设置页左侧导航栏:是否显示「用户」「工作区」「扩展」等中文标签
- 命令面板(
Ctrl+Shift+P)搜索框占位符:是否为「搜索命令」而非「Search commands」 - 右下角状态栏语言标识:是否显示
zh-cn,点击它还能弹出切换菜单
其他区域显示英文属于正常现象——终端子进程、Git 提示、第三方插件 UI、错误堆栈,都不走 VS Code 的 locale 配置逻辑。











