Skip to content

Instantly share code, notes, and snippets.

@gegehprast
Last active November 10, 2025 12:17
Show Gist options
  • Select an option

  • Save gegehprast/9a28cf1e6047abc5af2c8b43f064abbe to your computer and use it in GitHub Desktop.

Select an option

Save gegehprast/9a28cf1e6047abc5af2c8b43f064abbe to your computer and use it in GitHub Desktop.
VS Code Key Bind
// Place your key bindings in this file to override the defaults
[
{
"key": "alt+b",
"command": "workbench.action.toggleSidebarVisibility"
},
{
"key": "ctrl+b",
"command": "-workbench.action.toggleSidebarVisibility"
},
{
"key": "alt+k",
"command": "editor.action.moveLinesUpAction",
"when": "editorTextFocus && !editorReadonly"
},
{
"key": "alt+j",
"command": "editor.action.moveLinesDownAction",
"when": "editorTextFocus && !editorReadonly"
},
{
"key": "escape",
"command": "vscode-neovim.escape",
"when": "editorTextFocus && neovim.init && !dirtyDiffVisible && !findWidgetVisible && !inReferenceSearchEditor && !markersNavigationVisible && !notebookCellFocused && !notificationCenterVisible && !parameterHintsVisible && !referenceSearchVisible && neovim.mode == 'normal' && editorLangId not in 'neovim.editorLangIdExclusions' && !inlineEditIsVisible && !inlineSuggestionVisible && !suggestWidgetVisible && !editorHoverVisible"
},
{
"key": "escape",
"command": "-vscode-neovim.escape",
"when": "editorTextFocus && neovim.init && !dirtyDiffVisible && !findWidgetVisible && !inReferenceSearchEditor && !markersNavigationVisible && !notebookCellFocused && !notificationCenterVisible && !parameterHintsVisible && !referenceSearchVisible && neovim.mode == 'normal' && editorLangId not in 'neovim.editorLangIdExclusions'"
},
{
"key": "escape",
"command": "vscode-neovim.escape",
"when": "editorTextFocus && neovim.init && neovim.mode != 'normal' && editorLangId not in 'neovim.editorLangIdExclusions' && !inlineEditIsVisible && !inlineSuggestionVisible && !suggestWidgetVisible && !editorHoverVisible"
},
{
"key": "escape",
"command": "-vscode-neovim.escape",
"when": "editorTextFocus && neovim.init && neovim.mode != 'normal' && editorLangId not in 'neovim.editorLangIdExclusions'"
},
{
"key": "ctrl+j",
"command": "selectNextSuggestion",
"when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus || suggestWidgetVisible && textInputFocus && !suggestWidgetHasFocusedSuggestion"
},
{
"key": "ctrl+k",
"command": "selectPrevSuggestion",
"when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus || suggestWidgetVisible && textInputFocus && !suggestWidgetHasFocusedSuggestion"
},
{
"key": "ctrl+j",
"command": "-workbench.action.togglePanel"
},
{
"key": "ctrl+j",
"command": "editor.action.selectNextStickyScrollLine",
"when": "stickyScrollFocused"
},
{
"key": "ctrl+k",
"command": "editor.action.selectPreviousStickyScrollLine",
"when": "stickyScrollFocused"
},
{
"key": "ctrl+j",
"command": "focusNextRenameSuggestion",
"when": "renameInputVisible"
},
{
"key": "ctrl+k",
"command": "focusPreviousRenameSuggestion",
"when": "renameInputVisible"
},
{
"key": "ctrl+j",
"command": "selectNextCodeAction",
"when": "codeActionMenuVisible"
},
{
"key": "ctrl+k",
"command": "selectPrevCodeAction",
"when": "codeActionMenuVisible"
},
{
"key": "ctrl+j",
"command": "showNextParameterHint",
"when": "editorFocus && parameterHintsMultipleSignatures && parameterHintsVisible && !suggestWidgetVisible"
},
{
"key": "ctrl+k",
"command": "showPrevParameterHint",
"when": "editorFocus && parameterHintsMultipleSignatures && parameterHintsVisible && !suggestWidgetVisible"
},
{
"key": "ctrl+j",
"command": "quickInput.next",
"when": "inQuickInput && quickInputType == 'quickPick'"
},
{
"key": "ctrl+k",
"command": "quickInput.previous",
"when": "inQuickInput && quickInputType == 'quickPick'"
},
{
"key": "ctrl+h",
"command": "cursorLeft",
"when": "textInputFocus && !suggestWidgetVisible && !parameterHintsVisible && !codeActionMenuVisible && !renameInputVisible && !stickyScrollFocused"
},
{
"key": "ctrl+j",
"command": "cursorDown",
"when": "textInputFocus && !suggestWidgetVisible && !parameterHintsVisible && !codeActionMenuVisible && !renameInputVisible && !stickyScrollFocused"
},
{
"key": "ctrl+k",
"command": "cursorUp",
"when": "textInputFocus && !suggestWidgetVisible && !parameterHintsVisible && !codeActionMenuVisible && !renameInputVisible && !stickyScrollFocused"
},
{
"key": "ctrl+l",
"command": "cursorRight",
"when": "textInputFocus && !suggestWidgetVisible && !parameterHintsVisible && !codeActionMenuVisible && !renameInputVisible && !stickyScrollFocused"
},
{
"key": "ctrl+l",
"command": "-expandLineSelection",
"when": "textInputFocus"
},
{
"key": "ctrl+s",
"command": "-vscode-neovim.send",
"when": "editorTextFocus && neovim.ctrlKeysNormal.s && neovim.init && neovim.mode != 'insert' && editorLangId not in 'neovim.editorLangIdExclusions'"
},
{
"key": "ctrl+s",
"command": "-vscode-neovim.send",
"when": "editorTextFocus && neovim.ctrlKeysInsert.s && neovim.init && neovim.mode == 'insert' && editorLangId not in 'neovim.editorLangIdExclusions'"
},
{
"key": "ctrl+[",
"command": "-vscode-neovim.escape",
"when": "editorTextFocus && neovim.init && editorLangId not in 'neovim.editorLangIdExclusions'"
},
{
"key": "alt+c",
"command": "workbench.action.toggleAuxiliaryBar"
},
{
// Close everything except the editor
"key": "ctrl+escape",
"command": "runCommands",
"args": {
"commands": [
"workbench.action.focusActiveEditorGroup",
"workbench.action.closeSidebar",
"workbench.action.closeAuxiliaryBar",
"workbench.action.closePanel",
]
}
},
{
"key": "ctrl+shift+o",
"command": "-workbench.action.gotoSymbol",
"when": "!accessibilityHelpIsShown && !accessibleViewIsShown"
},
{
"key": "ctrl+shift+o",
"command": "-editor.action.accessibleViewGoToSymbol",
"when": "accessibilityHelpIsShown && accessibleViewGoToSymbolSupported || accessibleViewGoToSymbolSupported && accessibleViewIsShown"
},
{
"key": "ctrl+shift+o",
"command": "workbench.action.quickOpen",
"args": "@:",
"when": "!accessibilityHelpIsShown && !accessibleViewIsShown"
},
{
"key": "ctrl+shift+o",
"command": "editor.action.accessibleViewQuickOpen",
"args": "@:",
"when": "accessibilityHelpIsShown && accessibleViewGoToSymbolSupported || accessibleViewGoToSymbolSupported && accessibleViewIsShown"
},
{
"key": "ctrl+shift+c",
"command": "-workbench.action.terminal.openNativeConsole",
"when": "!terminalFocus"
},
{
"key": "ctrl+shift+c",
"command": "workbench.panel.chat.view.copilot.focus",
"when": "!terminalFocus"
},{
"key": "ctrl+shift+c",
"command": "-workbench.action.terminal.openNativeConsole",
"when": "!terminalFocus"
},
{
"key": "ctrl+shift+c",
"command": "workbench.panel.chat.view.copilot.focus",
"when": "!view.workbench.panel.chat.view.copilot.visible"
},
{
"key": "ctrl+shift+c",
"command": "workbench.action.toggleAuxiliaryBar",
"when": "auxiliaryBarVisible"
},
{
"key": "ctrl+shift+e",
"command": "workbench.action.closeSidebar",
"when": "sideBarVisible"
},
{
"key": "ctrl+shift+e",
"command": "workbench.explorer.fileView.focus",
"when": "sideBarVisible && !view.workbench.explorer.fileView.visible"
},
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment