Skip to content

Instantly share code, notes, and snippets.

@RyushiAok
Last active September 1, 2024 08:02
Show Gist options
  • Select an option

  • Save RyushiAok/744fa2368e22e974390dd59ff9494acf to your computer and use it in GitHub Desktop.

Select an option

Save RyushiAok/744fa2368e22e974390dd59ff9494acf to your computer and use it in GitHub Desktop.
vscode keybindings
[
//
// Copy, Select All
//
{
"key": "ctrl+c",
"command": "-vscode-neovim.escape",
"when": "editorTextFocus && neovim.ctrlKeysNormal.c && neovim.init && !dirtyDiffVisible && !findWidgetVisible && !inReferenceSearchEditor && !markersNavigationVisible && !notebookCellFocused && !notificationCenterVisible && !parameterHintsVisible && !referenceSearchVisible && neovim.mode == 'normal' && editorLangId not in 'neovim.editorLangIdExclusions'"
},
{
"key": "ctrl+c",
"command": "-vscode-neovim.escape",
"when": "editorTextFocus && neovim.ctrlKeysInsert.c && neovim.init && neovim.mode != 'normal' && editorLangId not in 'neovim.editorLangIdExclusions'"
},
{
"key": "ctrl+a",
"command": "-vscode-neovim.send",
"when": "editorTextFocus && neovim.ctrlKeysNormal.a && neovim.init && neovim.mode != 'insert' && editorLangId not in 'neovim.editorLangIdExclusions'"
},
{
"key": "ctrl+a",
"command": "-vscode-neovim.send",
"when": "editorTextFocus && neovim.ctrlKeysInsert.a && neovim.init && neovim.mode == 'insert' && editorLangId not in 'neovim.editorLangIdExclusions'"
},
//
// Editor
//
{
"key": "space r",
"command": "editor.action.rename",
"when": "neovim.mode == normal && editorHasRenameProvider && editorTextFocus && !editorReadonly"
},
//
// Cursor
//
{
"key": "ctrl+w",
"command": "-workbench.action.closeActiveEditor"
},
{
"key": "g d",
"command": "editor.action.revealDefinition",
"when": "neovim.mode == normal && editorHasDefinitionProvider && editorTextFocus"
},
{
"key": "g r",
"command": "editor.action.goToReferences",
"when": "neovim.mode == normal && editorHasReferenceProvider && editorTextFocus && !inReferenceSearchEditor && !isInEmbeddedEditor"
},
{
"key": "ctrl+i",
"command": "workbench.action.navigateForward",
"when": "canNavigateForward"
},
{
"key": "] e",
"command": "editor.action.marker.next",
"when": "neovim.mode == normal && editorFocus"
},
{
"key": "[ e",
"command": "editor.action.marker.prev",
"when": "neovim.mode == normal && editorFocus"
},
//
// Panel
//
{
"key": "space w",
"command": "workbench.action.closeActiveEditor",
"when": "neovim.mode == normal && editorTextFocus"
},
{
"key": "ctrl+alt+l",
"command": "workbench.action.moveEditorToNextGroup"
},
{
"key": "ctrl+alt+right",
"command": "-workbench.action.moveEditorToNextGroup"
},
{
"key": "ctrl+alt+h",
"command": "workbench.action.moveEditorToPreviousGroup"
},
{
"key": "ctrl+alt+left",
"command": "-workbench.action.moveEditorToPreviousGroup"
},
{
"key": "alt+oem_minus",
"command": "workbench.action.decreaseViewSize"
},
{
"key": "alt+oem_plus",
"command": "workbench.action.increaseViewSize"
},
//
// Search
//
{
"key": "ctrl+f",
"command": "search.action.focusSearchList",
"when": "hasSearchResult || inSearchEditor"
},
{
"key": "ctrl+f",
"command": "actions.find",
"when": "editorFocus && editorIsOpen"
},
{
"key": "ctrl+f",
"command": "-actions.find",
"when": "editorFocus || editorIsOpen"
},
{
"key": "space s g",
"command": "workbench.view.search",
"when": "neovim.mode == normal && editorTextFocus"
},
{
"key": "space s f",
"command": "workbench.action.quickOpen",
"when": "neovim.mode == normal && editorTextFocus"
},
//
// Git
//
{
"key": "space l g",
"command": "workbench.view.scm",
"when": "neovim.mode == normal && workbench.scm.active && editorTextFocus"
},
{
"key": "ctrl+enter",
"command": "git.openFile"
},
{
"key": "d",
"command": "git.clean",
"when": "sideBarFocus && activeViewlet == 'workbench.view.scm' && !inputFocus"
},
{
"key": "shift+space",
"command": "git.unstage",
"when": "sideBarFocus && activeViewlet == 'workbench.view.scm' && !inputFocus"
},
{
"key": "space",
"command": "git.stage",
"when": "sideBarFocus && activeViewlet == 'workbench.view.scm' && !inputFocus"
},
{
"key": "space h d",
"command": "prStatus:github.focus",
"when": "neovim.mode == normal && workbench.scm.active && editorTextFocus"
},
//
// Navigation
//
{
"key": "ctrl+t",
"command": "workbench.action.terminal.focus"
},
{
"key": "ctrl+t",
"command": "workbench.action.focusActiveEditorGroup",
"when": "terminalFocus"
},
{
"key": "ctrl+shift+j",
"command": "workbench.action.togglePanel"
},
{
"key": "ctrl+shift+n",
"command": "workbench.action.terminal.new",
"when": "terminalFocus"
},
{
"key": "ctrl+shift+w",
"command": "workbench.action.terminal.kill",
"when": "terminalFocus"
},
{
"key": "ctrl+g",
"command": "-vscode-neovim.send",
"when": "editorTextFocus && neovim.ctrlKeysNormal.g && neovim.init && neovim.mode != 'insert' && editorLangId not in 'neovim.editorLangIdExclusions'"
},
{
"key": "ctrl+g",
"command": "-workbench.action.gotoLine"
},
{
"key": "ctrl+g",
"command": "-vscode-neovim.send-cmdline",
"when": "neovim.init && neovim.mode == 'cmdline'"
},
{
"key": "ctrl+shift+g",
"command": "-workbench.view.scm",
"when": "workbench.scm.active"
},
{
"key": "ctrl+g d",
"command": "workbench.scm.focus"
},
{
"key": "ctrl+g p",
"command": "prStatus:github.focus"
},
{
"key": "ctrl+b",
"command": "workbench.action.toggleSidebarVisibility",
"when": "neovim.mode != 'normal' || !editorTextFocus"
},
//
// Copilot
//
{
"key": "ctrl+shift+q",
"command": "workbench.panel.chat.view.copilot.focus"
},
//
// list navigation
//
{
"key": "g g",
"command": "list.focusFirst",
"when": "listFocus && !inputFocus"
},
{
"key": "shift+g",
"command": "list.focusLast",
"when": "listFocus && !inputFocus"
},
{
"key": "h",
"command": "list.collapse",
"when": "listFocus && !inputFocus"
},
{
"key": "j",
"command": "list.focusDown",
"when": "listFocus && !inputFocus"
},
{
"key": "k",
"command": "list.focusUp",
"when": "listFocus && !inputFocus"
},
{
"key": "l",
"command": "list.select",
"when": "listFocus && !inputFocus"
},
{
"key": "ctrl+u",
"command": "list.focusPageUp",
"when": "listFocus && !inputFocus"
},
{
"key": "ctrl+d",
"command": "list.focusPageDown",
"when": "listFocus && !inputFocus"
},
{
"key": "/",
"command": "list.toggleKeyboardNavigation",
"when": "listFocus && !inputFocus && listSupportsKeyboardNavigation"
},
//
// Explorer
//
{
"key": "r",
"command": "renameFile",
"when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !explorerResourceReadonly && !inputFocus"
},
{
"key": "d",
"command": "deleteFile",
"when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceReadonly && !inputFocus"
},
{
"key": "y",
"command": "filesExplorer.copy",
"when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !inputFocus"
},
{
"key": "x",
"command": "filesExplorer.cut",
"when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !inputFocus"
},
{
"key": "p",
"command": "filesExplorer.paste",
"when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceReadonly && !inputFocus"
},
{
"key": "v",
"command": "explorer.openToSide",
"when": "explorerViewletFocus && explorerViewletVisible && !inputFocus"
},
{
"key": "a",
"command": "explorer.newFile",
"when": "filesExplorerFocus && !inputFocus"
},
{
"key": "shift+a",
"command": "explorer.newFolder",
"when": "filesExplorerFocus && !inputFocus"
},
{
"key": "n",
"command": "explorer.newFile",
"when": "filesExplorerFocus && !inputFocus"
},
{
"key": "shift+n",
"command": "explorer.newFolder",
"when": "filesExplorerFocus && !inputFocus"
},
{
"key": "escape",
"command": "workbench.action.focusActiveEditorGroup",
"when": "sideBarFocus"
},
{
"key": "ctrl+[",
"command": "workbench.action.focusActiveEditorGroup",
"when": "sideBarFocus"
},
{
"key": "ctrl+e",
"command": "workbench.view.explorer"
},
{
"key": "space e",
"command": "workbench.action.toggleSidebarVisibility",
"when": "sideBarFocus && !inputFocus"
},
//
// Jupyter Notebook
//
{
"key": "i",
"command": "notebook.cell.edit",
"when": "notebookCellListFocused && notebookEditable && !editorHoverFocused && !inputFocus"
},
{
"key": "ctrl+[",
"command": "notebook.cell.edit",
"when": "notebookCellListFocused && notebookEditable && !editorHoverFocused && !inputFocus"
},
{
"key": "shift+o",
"command": "notebook.cell.insertCodeCellAboveAndFocusContainer",
"when": "notebookEditorFocused && !inputFocus && !notebookOutputInputFocused"
},
{
"key": "o",
"command": "notebook.cell.insertCodeCellBelowAndFocusContainer",
"when": "notebookEditorFocused && !inputFocus && !notebookOutputInputFocused"
},
{
"key": "p",
"command": "notebook.cell.paste",
"when": "notebookEditorFocused && !inputFocus && !notebookOutputInputFocused"
},
//
// VSCode Neovim
//
{
"key": "ctrl+k",
"command": "-vscode-neovim.send",
"when": "editorTextFocus && neovim.ctrlKeysNormal.k && neovim.init && neovim.mode != 'insert' && editorLangId not in 'neovim.editorLangIdExclusions'"
},
{
"key": "ctrl+k",
"command": "-vscode-neovim.send",
"when": "editorTextFocus && neovim.ctrlKeysInsert.k && neovim.init && neovim.mode == 'insert' && editorLangId not in 'neovim.editorLangIdExclusions'"
},
{
"key": "ctrl+/",
"command": "-vscode-neovim.send",
"when": "editorTextFocus && neovim.ctrlKeysNormal./ && neovim.init && neovim.mode != 'insert' && editorLangId not in 'neovim.editorLangIdExclusions'"
},
{
"key": "ctrl+/",
"command": "-vscode-neovim.send",
"when": "editorTextFocus && neovim.ctrlKeysInsert./ && neovim.init && neovim.mode == 'insert' && editorLangId not in 'neovim.editorLangIdExclusions'"
}
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment