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

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


当前回答

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覆盖

这是我现在使用的:

nnoremap <silent> <Leader>= :exe "resize " . (winheight(0) * 3/2)<CR>
nnoremap <silent> <Leader>- :exe "resize " . (winheight(0) * 2/3)<CR>
nnoremap <silent> <Leader>0 :exe "vertical resize " . (winwidth(0) * 3/2)<CR>
nnoremap <silent> <Leader>9 :exe "vertical resize " . (winwidth(0) * 2/3)<CR>

我使用数字通过在.vimrc中映射以下内容来调整大小

nmap 7 :res +2<CR> " increase pane by 2 
nmap 8 :res -2<CR> " decrease pane by 2
nmap 9 :vertical res +2<CR> " vertical increase pane by 2
nmap 0 :vertical res -2<CR> " vertical decrease pane by 2

我的另一个建议是:

为了将窗口的宽度设置为80列,请使用

80 CTRL+W |

为了将其设置为最大宽度,只需省略前面的数字:

CTRL+W |