真正生效需同时满足:安装Microsoft官方中文语言包、执行Configure Display Language命令选zh-cn、彻底重启VSCode;仅装插件或未重启均无效。

VSCode 中文界面怎么才算真正生效
中文界面不是装个插件就完事——必须改 locale.json 且重启,否则菜单、报错提示、命令面板仍显示英文。常见错误是只装了 Chinese (Simplified) 插件但没执行 Configure Display Language 命令,或改完没重启。VSCode 会读取系统语言 fallback,如果系统是英文而没手动设 "locale":"zh-cn",它就不会切中文。
快捷键冲突时为什么按了没反应
按快捷键没反应,大概率是 when 条件不满足,而不是命令没绑定。比如你绑了 {"key":"ctrl+q","command":"editor.foldAll"},但当前焦点在终端里(terminalFocus 为 true),而默认 when 是 editorTextFocus,那这个快捷键就直接被忽略。排查方法:用 Developer: Inspect Key Mappings 查看实际触发路径,别靠猜。
- 终端里想用折叠命令?得显式加
"when":"!terminalFocus"或删掉when字段(慎用) -
ctrl+w默认关文件,但你可能想让它关标签页——得先用-workbench.action.closeActiveEditor把原绑定禁掉,再加新规则 - 多个相同
key绑定共存时,VSCode 按加载顺序和when精确度决定谁胜出,后写的不一定生效
插件命令怎么查到对应 command 名
插件注册的命令名不会自动出现在快捷键编辑器里,也不能靠“猜”。最可靠方式是打开命令面板(Ctrl+Shift+P),输入插件功能关键词(比如 “prettier”、“live server”),看到的完整命令字符串就是 command 值。例如 Live Server 的启动命令是 extension.liveServer.goOnline,不是 liveServer.start 或其他变体。
- 有些插件命令带参数,比如
git.commit需要传 message,这种不适合直接绑定快捷键 - 右键菜单里出现的插件项,其
command名通常能在插件文档或package.json的contributes.commands里找到 - 自定义命令(如插件开发中
vscode.commands.registerCommand('my.extension.do'))必须确保已激活插件,否则executeCommand会静默失败
keybindings.json 里写错格式会怎样
JSON 格式错误(比如末尾多逗号、引号不闭合、用了单引号)会导致整个 keybindings.json 失效,所有自定义快捷键消失,但 VSCode 不报错也不提醒——它只是默默忽略该文件。现象是:你确定改了、保存了、甚至重启了,但快捷键还是老样子。
- 编辑前建议复制备份,出问题能快速还原
- 用 VSCode 自带的 JSON 验证(保存时右下角会提示语法错误)比肉眼检查靠谱
- 不要在数组末尾加逗号,
[{"key":"a","command":"b"},]是非法 JSON - 路径、命令名、条件表达式全都要用双引号,
'editorTextFocus'会失效
locale.json 和 keybindings.json 的加载时机与作用域——前者控制显示语言,后者依赖命令注册状态和上下文判断,二者互不感知,出问题时得分开验。


















