必须用官方ID安装日语包并正确配置locale.json:执行code --install-extension ms-ceintl.vscode-language-pack-ja,再创建合法JSON文件{"locale":"ja"}于用户级路径,彻底退出VSCode后重启,同时确保未被VSCODE_LANG环境变量覆盖。

code --install-extension 装日语包必须用官方 ID
VSCode 日语界面依赖微软官方语言包,不是随便搜“Japanese”点安装就行。图形界面容易误装非官方扩展,导致 locale.json 配置后仍不生效。命令行安装最稳,且能批量复现:
- Windows PowerShell 或 macOS/Linux 终端执行:
code --install-extension ms-ceintl.vscode-language-pack-ja - 装完不重启、不改配置,界面不会变——这只是下载资源文件,不是启用语言
- 若已装过其他日语相关扩展(如第三方翻译插件),建议禁用,避免干扰加载顺序
locale.json 必须放对路径且内容严格合法
locale.json 是唯一有效的界面语言控制文件,放错位置或格式错误,VSCode 会静默忽略。它不读 settings.json 里的 "locale": "ja" 字段(新版已废弃该支持)。
- 用户级路径(推荐):
Windows:%APPDATA%\Code\User\locale.json
macOS:~/Library/Application Support/Code/User/locale.json
Linux:~/.config/Code/User/locale.json - 文件内容必须是标准 JSON:
{"locale": "ja"},注意:
–"ja"全小写,不能是"JA"、"ja-jp"(虽可 fallback,但非标准)
– 无空格、无 BOM 头(用 VS Code 自己打开编辑并保存为 UTF-8 无 BOM)
– 不能多逗号、少引号,否则启动失败或回退到英文
改完 locale.json 后必须彻底退出 VSCode
只点 Developer: Reload Window 没用,这个命令不重载本地化资源。状态栏右下角语言显示灰色不可点,大概率是没完全退出。
- 关掉所有窗口(包括最小化到托盘的)
- 杀后台进程:
Windows:任务管理器中结束所有Code.exe和Code Helper进程
macOS:活动监视器搜索Electron并强制退出
Linux:pkill -f 'code' - 再重新启动 VSCode,此时才真正读取
locale.json
VSCODE_LANG 环境变量会强行覆盖 locale.json
某些企业镜像系统、CI 环境或手动设过的终端会固化 VSCODE_LANG,它优先级高于 locale.json,导致改了配置也无效,状态栏语言显示为灰色。
- 检查是否被覆盖:
Windows:echo %VSCODE_LANG%
macOS/Linux:echo $VSCODE_LANG - 若输出
en或其他值,需在启动 VSCode 前清除:
Windows:set VSCODE_LANG= & code
macOS/Linux:unset VSCODE_LANG && code - 工作区级
.vscode/locale.json也会覆盖用户设置,确认项目根目录下没有该文件
实际生效时,VSCode 启动瞬间就会读取 locale.json 并加载对应语言包资源。如果日语包没装、路径不对、JSON 格式错、进程没杀干净、或被环境变量劫持——四个环节只要一个卡住,界面就还是英文。没有中间态,也没有热加载。











