汉化插件不会导致快捷键提示消失,真正原因是 keybindings.json 被破坏或覆盖——90% 情况下删空该文件即可恢复;VSCode 快捷键面板显示命令名而非中文描述,不依赖语言包;所谓“提示消失”实为命令列表变空或仅剩默认项,多因重置设置、JSON 语法错误或 Settings Sync 同步所致。

汉化插件不会导致快捷键提示消失,真正的原因是 keybindings.json 被破坏或覆盖 —— 90% 情况下删空该文件就能立刻恢复。
为什么汉化后 Ctrl+K Ctrl+S 里看不到快捷键说明?
VSCode 的快捷键面板(Ctrl+K Ctrl+S)显示的是「命令名」而非「中文描述」,它本身不依赖语言包渲染文字。所谓“提示消失”,其实是你看到的命令列表变空、灰色、或只剩内置默认项,根本不是汉化惹的祸。
真实诱因通常是:
- 汉化过程中顺手点了「重置所有设置」,连带清掉了
keybindings.json内容,但没意识到 VSCode 会把空数组[]当作有效配置,从而压制全部默认绑定 - 某汉化插件自带的「快捷键模板」被自动写入
keybindings.json,但 JSON 格式出错(比如末尾多逗号、用了//注释),VSCode 直接跳过整个文件解析 - 用户级
keybindings.json存在语法错误,VSCode 降级为只加载内置快捷键,而图形界面又恰好不显示那些未被覆盖的默认项(造成“全没了”的错觉)
快速验证:先看 keybindings.json 是否合法
按 Ctrl+Shift+P → 输入 Preferences: Open Keyboard Shortcuts (JSON),确认打开的是用户级路径(如 ~/.config/Code/User/keybindings.json)。
检查内容是否满足以下任一情况:
- 文件内容是空的,或只有
[](这是最常见原因) - 开头或中间有
//行注释(JSON 不支持) - 末尾多了逗号,比如
{"key":"ctrl+f","command":"actions.find"}, - 引号不闭合、括号不匹配,或存在不可见 Unicode 字符(常见于从网页复制配置时)
若发现上述任意一种,别修——直接清空整文件,只留一个空行,然后保存。VSCode 会立即回退到纯内置快捷键逻辑,Ctrl+K Ctrl+S 面板将恢复正常显示。
别信“重启编辑器”或“重装汉化插件”
这两个操作对快捷键提示无效,因为问题不在 UI 渲染层,而在快捷键注册机制本身。重点排查点只有三个:
-
keybindings.json文件是否存在且 JSON 合法(用 jsonlint.com 快速校验) - 是否启用了 Settings Sync?如果开着,删完
keybindings.json后几秒内云端配置会自动拉回来,白忙一场 - 右下角语言模式是否为
Plain Text?此时 VSCode 不加载任何语言相关快捷键上下文,Ctrl+/注释、Alt+↑移行等都会“失效”——这不是提示消失,是压根没注册
真正容易被忽略的是:VSCode 的快捷键面板只显示「当前上下文生效的快捷键」。如果你在没有打开任何文件的空白窗口里打开 Ctrl+K Ctrl+S,它默认只显示全局命令;一旦打开一个 .js 文件,editorTextFocus 上下文激活,大量编辑器专属快捷键才会浮现出来。别急着下结论,先开个真实文件再试。


















