Skip to content

Commit

Permalink
feat(bindings): global window navigations (#1248)
Browse files Browse the repository at this point in the history
* feat: global window navigations

* fix: window navigation binding

* feat: treat terminals like buffers when navigating windows

* feat: allow ctrl+w ctrl+w from filesExplorer

* fix: consistent ctrl+w ctrl+w counter bindings

* fix: proper ctrl+w ctrl+w escape from replaceInputBoxFocus
  • Loading branch information
Martin Braun committed Jul 4, 2023
1 parent 504d462 commit 88103a8
Show file tree
Hide file tree
Showing 2 changed files with 76 additions and 17 deletions.
59 changes: 59 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -1269,6 +1269,65 @@
"command": "vscode-neovim.complete-selection-cmdline",
"key": "tab",
"when": "neovim.mode == cmdline_normal || neovim.mode == cmdline_insert || neovim.mode == cmdline_replace"
},
{
"key": "ctrl+w",
"command": "-workbench.action.switchWindow"
},
{
"key": "ctrl+w ctrl+w",
"command": "workbench.action.focusNextGroup",
"when": "!editorTextFocus && !(filesExplorerFocus || inSearchEditor || searchViewletFocus || replaceInputBoxFocus)"
},
{
"key": "ctrl+w ctrl+w",
"command": "workbench.action.focusFirstEditorGroup",
"when": "!editorTextFocus && !(filesExplorerFocus || inSearchEditor || searchViewletFocus || replaceInputBoxFocus)"
},
{
"key": "ctrl+w up",
"command": "workbench.action.navigateUp",
"when": "!editorTextFocus"
},
{
"key": "ctrl+w k",
"command": "workbench.action.navigateUp",
"when": "!editorTextFocus"
},
{
"key": "ctrl+w down",
"command": "workbench.action.navigateDown",
"when": "!editorTextFocus"
},
{
"key": "ctrl+w j",
"command": "workbench.action.navigateDown",
"when": "!editorTextFocus"
},
{
"key": "ctrl+w left",
"command": "workbench.action.navigateLeft",
"when": "!editorTextFocus"
},
{
"key": "ctrl+w h",
"command": "workbench.action.navigateLeft",
"when": "!editorTextFocus"
},
{
"key": "ctrl+w right",
"command": "workbench.action.navigateRight",
"when": "!editorTextFocus"
},
{
"key": "ctrl+w l",
"command": "workbench.action.navigateRight",
"when": "!editorTextFocus"
},
{
"key": "ctrl+w q",
"command": "workbench.action.closeActiveEditor",
"when": "!editorTextFocus && !filesExplorerFocus && !searchViewletFocus"
}
]
},
Expand Down
34 changes: 17 additions & 17 deletions vim/vscode-window-commands.vim
Original file line number Diff line number Diff line change
Expand Up @@ -88,23 +88,23 @@ nnoremap <C-w><C-o> <Cmd>call VSCodeNotify('workbench.action.joinAllGroups')<CR>
xnoremap <C-w><C-o> <Cmd>call VSCodeNotify('workbench.action.joinAllGroups')<CR>
" window navigation
nnoremap <C-w>j <Cmd>call VSCodeNotify('workbench.action.focusBelowGroup')<CR>
xnoremap <C-w>j <Cmd>call VSCodeNotify('workbench.action.focusBelowGroup')<CR>
nnoremap <C-w>k <Cmd>call VSCodeNotify('workbench.action.focusAboveGroup')<CR>
xnoremap <C-w>k <Cmd>call VSCodeNotify('workbench.action.focusAboveGroup')<CR>
nnoremap <C-w>h <Cmd>call VSCodeNotify('workbench.action.focusLeftGroup')<CR>
xnoremap <C-w>h <Cmd>call VSCodeNotify('workbench.action.focusLeftGroup')<CR>
nnoremap <C-w>l <Cmd>call VSCodeNotify('workbench.action.focusRightGroup')<CR>
xnoremap <C-w>l <Cmd>call VSCodeNotify('workbench.action.focusRightGroup')<CR>
nnoremap <C-w><Down> <Cmd>call VSCodeNotify('workbench.action.focusBelowGroup')<CR>
xnoremap <C-w><Down> <Cmd>call VSCodeNotify('workbench.action.focusBelowGroup')<CR>
nnoremap <C-w><Up> <Cmd>call VSCodeNotify('workbench.action.focusAboveGroup')<CR>
xnoremap <C-w><Up> <Cmd>call VSCodeNotify('workbench.action.focusAboveGroup')<CR>
nnoremap <C-w><Left> <Cmd>call VSCodeNotify('workbench.action.focusLeftGroup')<CR>
xnoremap <C-w><Left> <Cmd>call VSCodeNotify('workbench.action.focusLeftGroup')<CR>
nnoremap <C-w><Right> <Cmd>call VSCodeNotify('workbench.action.focusRightGroup')<CR>
xnoremap <C-w><Right> <Cmd>call VSCodeNotify('workbench.action.focusRightGroup')<CR>
nnoremap <C-w>j <Cmd>call VSCodeNotify('workbench.action.navigateDown')<CR>
xnoremap <C-w>j <Cmd>call VSCodeNotify('workbench.action.navigateDown')<CR>
nnoremap <C-w>k <Cmd>call VSCodeNotify('workbench.action.navigateUp')<CR>
xnoremap <C-w>k <Cmd>call VSCodeNotify('workbench.action.navigateUp')<CR>
nnoremap <C-w>h <Cmd>call VSCodeNotify('workbench.action.navigateLeft')<CR>
xnoremap <C-w>h <Cmd>call VSCodeNotify('workbench.action.navigateLeft')<CR>
nnoremap <C-w>l <Cmd>call VSCodeNotify('workbench.action.navigateRight')<CR>
xnoremap <C-w>l <Cmd>call VSCodeNotify('workbench.action.navigateRight')<CR>
nnoremap <C-w><Down> <Cmd>call VSCodeNotify('workbench.action.navigateDown')<CR>
xnoremap <C-w><Down> <Cmd>call VSCodeNotify('workbench.action.navigateDown')<CR>
nnoremap <C-w><Up> <Cmd>call VSCodeNotify('workbench.action.navigateUp')<CR>
xnoremap <C-w><Up> <Cmd>call VSCodeNotify('workbench.action.navigateUp')<CR>
nnoremap <C-w><Left> <Cmd>call VSCodeNotify('workbench.action.navigateLeft')<CR>
xnoremap <C-w><Left> <Cmd>call VSCodeNotify('workbench.action.navigateLeft')<CR>
nnoremap <C-w><Right> <Cmd>call VSCodeNotify('workbench.action.navigateRight')<CR>
xnoremap <C-w><Right> <Cmd>call VSCodeNotify('workbench.action.navigateRight')<CR>
nnoremap <C-w><C-j> <Cmd>call VSCodeNotify('workbench.action.moveEditorToBelowGroup')<CR>
xnoremap <C-w><C-j> <Cmd>call VSCodeNotify('workbench.action.moveEditorToBelowGroup')<CR>
Expand Down

0 comments on commit 88103a8

Please sign in to comment.