中文语言包无法通过Settings Sync同步,必须每台设备单独安装Microsoft官方扩展vscode-language-pack-zh-hans,再执行Configure Display Language设为zh-cn并彻底重启;Settings Sync仅同步"locale": "zh-cn"配置项,不传输语言包文件,未安装则自动回退英文界面。

中文语言包本身不能同步,必须每台设备单独安装
Settings Sync 不会上传或下载 vscode-language-pack-zh-hans 这个扩展的本体文件,只同步 "locale": "zh-cn" 这个配置项。没装语言包,VSCode 启动时读不到中文资源,直接 fallback 到英文界面。
常见错误现象:
- 新设备登录账号后右下角状态栏仍显示
en,点「Configure Display Language」命令不存在 - settings.json 里写了
"locale": "zh-cn",但重启后无效 - 误装了非 Microsoft 签名的“汉化插件”,导致菜单乱码或跳转异常
实操建议:
- 在扩展市场(
Ctrl+Shift+X)搜Chinese (Simplified) Language Pack for Visual Studio Code,认准发布者是 Microsoft、ID 是ms-ceintl.vscode-language-pack-zh-hans - Windows 和 Ubuntu 都要各自安装一次,安装后必须 彻底重启 VSCode(不是“重新加载窗口”)
- 验证是否生效:看左下角状态栏是否显示
zh-cn;或打开设置搜索locale,确认值为"zh-cn"
locale.json 文件路径和格式双系统不通用
Windows 和 Ubuntu 的 locale.json 存放位置不同,且内容格式稍有差异——填错路径或编码,VSCode 直接忽略该文件。
Windows 正确路径:%APPDATA%\Code\User\locale.json
Ubuntu 正确路径:$HOME/.config/Code/User/locale.json
文件内容必须严格满足:
- 只有一行:
{"locale":"zh-cn"}(无空格、无换行、无注释) - 值必须小写、带连字符:
"zh-cn",不是"zh_CN"、"Chinese"或"zh" - 保存为 UTF-8 无 BOM 编码(用 VSCode 自带保存即可,别用记事本)
注意:settings.json 里的 "locale" 字段自 VS Code 1.60 起已废弃,写进去也无效。
Settings Sync 同步 locale 配置但不保证生效
即使你已在一台设备上正确配置并启用了 Settings Sync,另一台设备同步后仍可能卡在英文界面——因为 Sync 只上传了 "locale": "zh-cn",但没触发语言包安装动作,也不校验该配置是否可执行。
典型掉坑场景:
- Ubuntu 首次启用 Sync 时,终端未配代理,导致插件市场请求超时,
vscode-language-pack-zh-hans没法自动装上 - Windows 上装了语言包,Sync 把
"locale": "zh-cn"推到 Ubuntu,但 Ubuntu 没装包,结果只有配置没有资源 - 某些企业环境禁用了扩展市场(通过组策略或
extensions.autoUpdate: false),Sync 就不会尝试安装任何扩展
解决办法:
- 先手动装好语言包,再开启 Sync;或开启后立刻点状态栏云图标 →
Sync Now - Ubuntu 下若卡在“正在获取扩展列表”,先在终端运行:
export https_proxy=http://127.0.0.1:7890(按你本地代理改),再启动code - 检查
Extensions是否在 Sync 设置中被勾选(Settings Sync → Turn On → 勾选 Extensions)
双系统下最稳的同步组合操作
不要指望 Settings Sync 一键搞定中文界面。它只是管道,不是施工队。真正起效靠的是两层动作:语言环境层(装包+激活) + 配置同步层(上传 locale + 同步设置)。
推荐流程(每台新设备都走一遍):
- 安装
vscode-language-pack-zh-hans(Windows 和 Ubuntu 分别装) - 打开命令面板(
Ctrl+Shift+P),运行Configure Display Language→ 选zh-cn→ 重启 - 确认状态栏显示
zh-cn,再登录 Settings Sync 并勾选全部五项(Settings、Keybindings、Extensions、Snippets、UI State) - 同步完成后,手动点右下角云图标 →
Sync Now,避免缓存延迟
最容易被忽略的是:语言包安装和 locale.json 激活是两个独立动作,缺一不可;而 Sync 同步的只是后者,前者永远得你亲手点一次安装、重启一次编辑器。


















