VSCode 热键 - 自己胡乱加了好多热键坑爹-清理好了备份一下
·
进入配置文件
在 VSCode 中按下 Ctrl + Shift + P (Mac 为 Cmd + Shift + P)。
输入并选择:“首选项:打开键盘快捷键 (JSON)” (英文:Preferences: Open Keyboard Shortcuts (JSON))。
这会打开一个 keybindings.json 文件。
原始版
// 将键绑定放在此文件中以覆盖默认值
[
{
"key": "alt+j",
"command": "workbench.action.togglePanel"
},
{
"key": "ctrl+j",
"command": "-workbench.action.togglePanel"
},
{
"key": "ctrl+shift+alt+k u",
"command": "editor.action.transformToUppercase"
},
{
"key": "ctrl+shift+alt+k l",
"command": "editor.action.transformToLowercase"
},
{
"key": "ctrl+shift+alt+k c",
"command": "editor.action.transformToCamelcase"
},
{
"key": "ctrl+shift+alt+k s",
"command": "editor.action.transformToPascalcase"
},
{
"key": "ctrl+shift+alt+k s",
"command": "extension.changeCase.snake"
},
{
"key": "ctrl+shift+alt+k t",
"command": "extension.changeCase.constant"
},
{
"key": "ctrl+shift+alt+k c",
"command": "extension.changeCase.camel"
},
{
"key": "ctrl+shift+alt+k l",
"command": "extension.changeCase.lower"
},
{
"key": "ctrl+shift+alt+k u",
"command": "extension.changeCase.upper"
},
{
"key": "ctrl+shift+alt+k p",
"command": "extension.changeCase.pascal"
},
{
"key": "ctrl+j",
"command": "editor.action.joinLines"
},
// 强制触发 AI 内联补全 (最通用)
{
"key": "alt+enter",
"command": "editor.action.inlineSuggest.trigger",
"when": "editorTextFocus && !editorReadonly"
},
{
"key": "alt+oem_2",
"command": "editor.action.inlineSuggest.trigger"
},
{
"key": "ctrl+shift+alt+p",
"command": "editor.action.toggleWordWrap"
},
{
"key": "alt+oem_3",
"command": "extension.changeCase.commands"
},
{
"key": "ctrl+shift+alt+k f",
"command": "extension.changeCase.upperFirst"
},
{
"key": "tab",
"command": "editor.action.inlineEdit.accept",
"when": "inlineEditVisible && !editorReadonly"
},
{
"key": "tab",
"command": "editor.action.inlineSuggest.commit",
"when": "inlineSuggestionVisible && !editorReadonly && !suggestWidgetVisible"
},
{
"key": "tab",
"command": "insertNextSuggestion",
"when": "hasOtherSuggestions && textInputFocus && !inSnippetMode && !suggestWidgetVisible"
},
// --- 禁用误触模式 ---
// 防止以后再误触 Ctrl+M 导致 Tab 失灵
{ "key": "ctrl+m", "command": "-editor.action.toggleTabFocusMode" }
]
优化版
去重并添加注释
[
// --- 界面与编辑增强 ---
{
"key": "alt+j",
"command": "workbench.action.togglePanel",
"comment": "快速切换底部面板(终端/输出)的显示与隐藏"
},
{
"key": "ctrl+j",
"command": "editor.action.joinLines",
"comment": "将下一行合并到当前行末尾(替代了默认的切换面板功能)"
},
{
"key": "ctrl+shift+alt+p",
"command": "editor.action.toggleWordWrap",
"comment": "手动开启/关闭代码自动换行"
},
// --- 大小写与命名风格转换 (使用 Change Case 插件) ---
{
"key": "alt+oem_3",
"command": "extension.changeCase.commands",
"comment": "Alt + ` (反引号) 唤起所有命名转换菜单"
},
{
"key": "ctrl+shift+alt+k u",
"command": "extension.changeCase.upper",
"comment": "转换为 大写 (UPPERCASE)"
},
{
"key": "ctrl+shift+alt+k l",
"command": "extension.changeCase.lower",
"comment": "转换为 小写 (lowercase)"
},
{
"key": "ctrl+shift+alt+k c",
"command": "extension.changeCase.camel",
"comment": "转换为 小驼峰 (camelCase)"
},
{
"key": "ctrl+shift+alt+k p",
"command": "extension.changeCase.pascal",
"comment": "转换为 大驼峰 (PascalCase)"
},
{
"key": "ctrl+shift+alt+k s",
"command": "extension.changeCase.snake",
"comment": "转换为 蛇形命名 (snake_case)"
},
{
"key": "ctrl+shift+alt+k t",
"command": "extension.changeCase.constant",
"comment": "转换为 常量命名 (CONSTANT_CASE)"
},
{
"key": "ctrl+shift+alt+k f",
"command": "extension.changeCase.upperFirst",
"comment": "转换 首字母大写"
},
// --- AI 补全与主动触发逻辑 ---
{
"key": "alt+enter",
"command": "editor.action.inlineSuggest.trigger",
"when": "editorTextFocus && !editorReadonly",
"comment": "手动按 Alt+Enter 强制唤醒 AI 预测提示(解决不打字不出提示的问题)"
},
{
"key": "alt+oem_2",
"command": "editor.action.inlineSuggest.trigger",
"comment": "Alt + / 也可以触发 AI 提示,作为备选手势"
},
// --- Tab 键核心控制:优先级从高到低排列 ---
{
"key": "tab",
"command": "editor.action.inlineEdit.accept",
"when": "inlineEditVisible && !editorReadonly",
"comment": "【最高优先级】当出现 AI 跳转提示(Jump Line)时,按 Tab 执行跳转"
},
{
"key": "tab",
"command": "editor.action.inlineSuggest.commit",
"when": "inlineSuggestionVisible && !editorReadonly && !suggestWidgetVisible",
"comment": "【次高优先级】当有 AI 灰色补全代码时,按 Tab 应用补全(前提是没弹出下拉建议框)"
},
{
"key": "tab",
"command": "insertNextSuggestion",
"when": "hasOtherSuggestions && textInputFocus && !inSnippetMode && !suggestWidgetVisible",
"comment": "【普通优先级】在多重提示场景下,Tab 负责在不同建议间切换"
},
// --- 系统冲突拦截 ---
{
"key": "tab",
"command": "-tab",
"when": "inlineEditVisible || inlineSuggestionVisible",
"comment": "当有 AI 提示(跳转或补全)时,禁用 Tab 原生的输入空格功能,防止点不动补全"
},
{
"key": "ctrl+m",
"command": "-editor.action.toggleTabFocusMode",
"comment": "禁用 Ctrl+M 切换焦点模式的功能,彻底防止 Tab 键因误触失效(出现 -> Tab 图标)"
},
{
"key": "ctrl+j",
"command": "-workbench.action.togglePanel",
"comment": "显式禁用原生的 Ctrl+J 面板切换,确保 Join Lines 逻辑稳定"
}
]
参考资料
更多推荐
所有评论(0)