vscode用户改界面语言应配置settings.json中的"locale"字段(如"zh-cn"),需安装对应语言包并重启生效;开发者则需按规范编写package.nls.json及翻译文件,而非手动创建locale.json。

VSCode 的 locale.json 不是用户手动编写的标准配置文件——它由 VSCode 自动生成,用于本地化扩展或 UI 语言切换;你真正需要编辑的,通常是 locale 相关的扩展开发配置(如 package.nls.json)或用户语言设置(locale 配置项)。
VSCode 用户侧:设置界面语言用 "locale",不是写 locale.json
你搜到的“locale.json”很可能来自错误上下文。VSCode 用户想改界面语言,只需改 settings.json 里的 "locale" 字段:
-
"locale": "zh-cn"→ 中文界面(需已安装对应语言包) -
"locale": "ja"→ 日文界面 - 值必须是 IETF 语言标签(如
en-us、zh-hans),不能写成zh_CN或Chinese - 修改后需重启 VSCode 才生效(热重载不支持 locale 切换)
- 如果改了没反应,先检查是否已安装对应语言包:打开命令面板(
Ctrl+Shift+P),运行Configure Display Language
扩展开发者:真正要写的其实是 package.nls.json
如果你在开发 VSCode 扩展并希望支持多语言,VSCode 要求使用 package.nls.json(根目录)作为默认英文文案源,再配合 package.nls.zh-cn.json 等翻译文件。这些才是你“编写”的 locale 相关文件:
DMap GL地图JSAPI(dmapgl)开发指南。用于编写、审查、调试 DMap 地图 API 代码,涵盖地图初始化、覆盖物渲染、图层管理、事件处理、控件交互等任务。当用户提及 dmap、dmapgl、jsapi‑gl 或相关地图开发需求时自动触发。
-
package.nls.json必须是纯英文键值对,key 是标识符(如"hello.message"),value 是英文字符串 - 翻译文件名格式严格为
package.nls.{locale}.json,例如package.nls.zh-hans.json,不能写成locale-zh.json - 所有翻译文件的 key 必须与
package.nls.json完全一致,缺失 key 会导致回退到英文 - VSCode 不读取任意命名的
locale.json—— 放错位置或起错名等于不存在
常见错误:把 locale.json 当作用户配置文件直接创建
有人尝试在 $HOME/.vscode/ 或工作区里手动建 locale.json,结果完全无效。这是因为:
- VSCode 没有加载用户级
locale.json的机制 - 扩展翻译文件必须放在扩展包内(
node_modules/your-extension/下),且由vsce package构建时校验结构 - 编辑器启动时只读取
argv.json(命令行参数)、settings.json和已安装扩展的nls文件 - 报错
Cannot find module './nls.bundle.js'通常是因为vscode-nls-dev编译步骤漏掉,而非locale.json写错了
真正的关键点就两个:用户改 "locale" 配置项,开发者按规范组织 package.nls.*.json;任何叫 locale.json 的独立文件,除非是某第三方工具临时生成的中间产物,否则大概率是你理解错了定位。










