我想在
vim中进行窗口大小调整,就像我在tmux中这样做一样.
使用我的tmux绑定(形式为bind -r J resize-pane -D 5,其中-r用于重复)我可以做< C-b> JJJ,这是与vim的15<相同数量的键和效果C-并且R w,但更少考虑,因为我可以移动分裂,直到它看起来正确,而不是提前决定一些行/列. 另一个例子:我希望能够按下< C-w> – 并使其执行与按下< C-w>相同的动作. c为C-并且R w c为C-并且R w c为C-并且R w c为C-并且R w; – < C-并且R w – . (虽然我可能想再次重新映射它,每次移动5行/列,而不是1).
在vim绑定中这种重复/超时模式是否可行?
这是一个棘手的问题,但我会分享我的处理方法,因为我认为它比< C-w>更容易.方法(我用了很长时间,发现很麻烦):
" simplify resizing splits if has('unix') nnoremap ^[j <C-w>- nnoremap ^[k <C-w>+ nnoremap ^[h <C-w>< nnoremap ^[l <C-w>> else nnoremap <M-j> <C-w>- nnoremap <M-k> <C-w>+ nnoremap <M-h> <C-w>< nnoremap <M-l> <C-w>> endif
^ [字符必须由实际的转义替换.按Ctrl键在插入模式下创建它,然后转义.这是在Linux上使用bash中的Meta x所必需的.现在在两个操作系统中,我可以按住Alt和hjkl键来调整分割大小,包括按住Alt,以便水平缩小我所在的分割.它们也适用于计数.