VSCode语言配置唯一生效的是用户数据目录下的locale.json文件,必须严格满足路径、命名、内容({"locale":"zh-cn"})、UTF-8无BOM编码四重条件,且需彻底退出进程后全新启动才生效。

VSCode 的语言配置不走 settings.json,也不靠插件开关控制——唯一生效的是用户数据目录下的 locale.json 文件,且必须严格满足路径、命名、内容、编码四重条件,缺一不可。
locale.json 文件路径和命名必须完全匹配
VSCode 只读取特定路径下、严格命名为 locale.json 的文件,大小写敏感、不能有子目录、不能带备份后缀:
- Windows:
%APPDATA%\Code\User\locale.json - macOS:
$HOME/Library/Application Support/Code/User/locale.json - Linux:
$HOME/.config/Code/User/locale.json
常见错误包括:Locale.json(首字母大写)、locale.txt、.vscode/locale.json(放在工作区目录)、Code - Insiders\User\locale.json(Insiders 版路径不同)——全部无效。
JSON 内容必须是单行、无 BOM、精确值
文件内容只能是这一行,且不能有任何额外字符:
{"locale":"zh-cn"}关键约束:
- 值必须是小写
zh-cn(zh_CN、zh-hans、Chinese、zh全部被静默忽略) - 必须用双引号,不能用单引号
- 不能有逗号、换行、空格、注释、BOM
- 不能混其他字段(如
{"locale":"zh-cn","theme":"dark"}整个文件被跳过)
最稳妥的创建方式:用 VS Code 自己新建该文件并保存——它默认就是 UTF-8 无 BOM。
使用ydata-profiling(前身为pandas-profiling)生成全面的数据质量报告,包含相关性分析、缺失值模式和基数检测。导出交互式HTML仪表板和JSON摘要。
改完必须彻底退出进程,不能只“重新加载窗口”
locale.json 只在 VS Code 启动时读取一次。点 “Reload Window” 完全无效,因为语言上下文已固化。
必须执行完整退出流程:
- Windows:关掉所有窗口 → 打开任务管理器 → 结束所有
Code.exe和Code Helper.exe - macOS:活动监视器中结束所有
Electron和Code Helper进程 - Linux:
pkill -f "code.*--no-sandbox"或手动检查ps aux | grep code
再全新启动,右下角状态栏显示 zh-cn 才算真正加载成功。如果还显示 en,说明旧进程仍在后台运行。
Remote-SSH / WSL 需要单独配远程端 locale.json
你在本地改好了 locale.json,连上 Remote-SSH 或 WSL 后仍是英文?这不是配置失败,而是远程机器上运行的是独立的 VS Code Server 实例,它只读自己的用户数据目录。
必须在远程环境里重复上述步骤:
- SSH 连入后,检查远程系统类型(Linux/macOS),定位对应路径
- 在远程端用 VS Code Server(或命令行编辑器)新建并写入
{"locale":"zh-cn"} - 退出所有远程 VS Code 进程(
pkill -f code),再重连
本地和远程的 locale.json 是两份完全独立的配置,互不影响。

















