Answers:
Ctrl w 为您提供“ Windows命令模式”,并允许以下修饰符:
Ctrl w+ R-向上/向左旋转窗口。
Ctrl w+ r-向下/向右旋转窗口。
您还可以使用带有导航键的“ Windows命令模式”来更改窗口的位置:
Ctrl w+ L-将当前窗口移至“最右边”
Ctrl w+ H-将当前窗口移至“最左侧”
Ctrl w+ J-将当前窗口移至“非常底部”
Ctrl w+ K-将当前窗口移至“非常顶部”
查看:help window-moving
更多信息
这对我来说是最有用的(可能是该问题的正确答案):
您要移动窗口本身还是仅移动光标位置?
除了您已经提到的旋转或循环,只能分别通过以下方式将窗口自身移动到最远的顶部,底部,左侧或右侧:
^W K
^W J
^W H
^W L
我认为没有默认的内置方法可以将窗口向右移动一个位置。
似乎vim不能使用标准键映射来做到这一点。该文档说,^ WK,J,H和L命令通过创建拆分并在now位置打开缓冲区来工作,因此我编写了一个函数:隐藏缓冲区,向左移动,拆分,然后打开原始缓冲区:
" Rotate a window horizontally to the left
function! RotateLeft()
let l:curbuf = bufnr('%')
hide
wincmd h
split
exe 'buf' l:curbuf
endfunc
" Rotate a window horizontally to the right
function! RotateRight()
let l:curbuf = bufnr('%')
hide
wincmd l
split
exe 'buf' l:curbuf
endfunc
<c-w> r
仅垂直旋转。