能,但仅临时生效且不彻底——只强制主进程界面中文,终端、远程会话、部分扩展等因语言上下文未透传仍显示英文,需配合安装官方中文包并配置locale.json才能日常使用。

code --locale=zh-cn 能不能直接切中文?
能,但只适合临时验证或调试,不能当日常用。它会强制当前这次启动走中文语言链路,但很多地方依然显示英文——比如终端子进程、部分弹窗、插件 UI,因为语言上下文没完全透传到所有模块。
常见错误现象:执行 code --locale=zh-cn 后菜单变中文了,但 Git 输出、调试控制台、甚至右下角状态栏仍为英文。这不是 bug,是设计限制。
- 必须先确保
code命令已加入 PATH(VS Code 设置里搜Shell Command: Install 'code' command in PATH启用) - Windows 用户建议用 PowerShell 执行;macOS/Linux 用 zsh/bash 都可
- 该参数不会写入任何配置,关掉窗口就失效,下次启动还得加
为什么 --locale 参数有时完全不生效?
最常见原因是中文语言包根本没装。--locale=zh-cn 只是“告诉 VS Code 我想用中文”,但没字典(语言包),它就静默回退到英文,不报错也不提示。
检查方法:打开扩展面板(Ctrl+Shift+X),搜 Chinese (Simplified) Language Pack for Visual Studio Code,确认发布者是 Microsoft,ID 是 ms-ceintl.vscode-language-pack-zh-hans。
- 如果没装,先运行
code --install-extension vscode-language-pack-zh-hans.vsix(需提前下载 .vsix 文件) - 装完别只靠
--locale启动,仍需彻底退出所有 VS Code 进程再试 - 某些旧版 VS Code(settings.json 里写
"locale": "zh-cn",但新版本已废弃此方式
Remote-SSH / WSL 下 --locale 参数无效?
无效是正常的。Remote-SSH 和 WSL 启动的是远程端的 VS Code Server,code --locale=zh-cn 只影响本地客户端启动参数,对远程服务端无作用。
真正起效的方式是:连上远程环境后,在远程端执行命令面板(Ctrl+Shift+P),运行 Configure Display Language,选 zh-cn 并重启远程窗口;或者手动在远程端创建 locale.json 文件。
- Remote-SSH 的
locale.json路径是远程机器上的~/.vscode-server/data/Machine/*/User/locale.json(*是哈希目录名) - WSL 中可用
code --list-extensions确认 VS Code Server 是否已启动,再找对应路径 - 别指望本地装的语言包自动同步过去——远程端要单独安装、单独配
locale.json
locale.json 比 --locale 参数稳在哪?
因为它是 VS Code 唯一认的持久化语言配置入口。从 1.70 版本起,locale 字段已从 settings.json 移出,只读取独立的 locale.json 文件,且必须放在用户级配置目录下。
手动建这个文件时,三个细节错一个就白忙:路径必须严格匹配系统规范、文件名必须是 locale.json(不是 locale.js 或 local.json)、内容必须是合法 JSON 且编码为 UTF-8 无 BOM。
- Linux/macOS 可用命令快速生成:
echo '{"locale":"zh-cn"}' > ~/.config/Code/User/locale.json - Windows 推荐用记事本另存为 UTF-8 无 BOM 格式,或用 VS Code 自己新建保存
- 改完必须杀掉所有后台进程:
pkill -f "Code Helper\|Electron"(macOS/Linux)或taskkill /f /im Code.exe(Windows)
真正容易被忽略的是:语言包和 locale 配置是两件事,缺一不可;而 Remote-SSH/WSL 环境下,这两件事都得在远程端重做一遍。


















