:vsplit(缩写::vs)垂直分割Vim视口。:30vs分割视口,使新窗口宽30个字符。一旦创建了这个30字符的窗口,如何将其大小更改为31或29?

对于水平窗口,Ctrl-W +增加一行数。将列加1的等效命令是什么?


当前回答

CTRL-W >

and

CTRL-W <

使窗户变宽或变窄。

其他回答

CTRL-W >

and

CTRL-W <

使窗户变宽或变窄。

ctrl - w =

会使它们相等

如果你需要水平拆分调整大小: 该命令对所有分割都是一样的,只是参数改变了:

- +而不是< >

例子: 水平大小减少10列

:10winc -

水平大小增加30列

:30winc +

或在正常模式下:

水平分割

10 CTRL+w -

30 CTRL+w +

垂直分裂

10 CTRL+w < (decrease)

30 CTRL+w >(增加)

我把这些映射到我的.gvimrc中,让我点击command-[arrow]来移动当前窗口的高度和宽度:

" resize current buffer by +/- 5 
nnoremap <D-left> :vertical resize -5<cr>
nnoremap <D-down> :resize +5<cr>
nnoremap <D-up> :resize -5<cr>
nnoremap <D-right> :vertical resize +5<cr>

对于MacVim,你必须把它们放在你的。gvimrc(而不是。vimrc)中,否则它们会被系统的。gvimrc覆盖

同样的,我在我的.vimrc中使用下面的代码来让我在分割中移动,自动将我移动到的分割扩展到它的全部大小,并将其余的分割缩小到它们的最小高度或宽度:

" Switch between window splits using big J or K and expand the split to its 
" full size. 
" 
" Move vertically in the window through the horizontal splits... 
map <C-J> <C-w>j<C-w>_ 
map <C-K> <C-w>k<C-w>_ 

" Move horizontally in the window through the vertical splits... 
map <C-H> <C-w>h<C-w>\| 
map <C-L> <C-w>l<C-w>\|