Home

Awesome

winresizer.vim

Very simple vim plugin for easy resizing of your vim windows.

You can resize windows continuously by using typical keymaps of Vim. (h, j, k, l)
The WindowResize mode makes your operation more quickly and more naturally.

Demo

For terminal vim

Resize mode

demo-for-terminal

Window Move mode

You can move windows.
demo-move

Change the focus & resize window

Focus mode -> Resize mode
demo-focus

For MacVim(gui vim)

demo-for-macvim

In default setting

  1. You press keys Ctrl + E or execute :WinResizerStartResize on vim(in normal mode), to run this plugin

  2. Start 'window resize mode', and you can resize current vim windows using 'h', 'j', 'k', 'l' keys

  3. You want to finish resize mode, then press "Enter" key

  4. If you cancel window resize, then press "q" key. You will get window size of before change

  5. You can change the mode if you press "e" in 'window resize mode'

Customize options

You can change settings and key mappings by using below options.(in your vimrc).

The key values are ASCII values. You can find a list of mappings here.

variable namedefault valuedescription
g:winresizer_enable1Use winresizer (If this value is 0, this plugin will not work)
g:winresizer_gui_enable0Use winresizer in GUI Vim (If this value is 0, this plugin will not work in GUI Vim such as Mac Vim)
g:winresizer_finish_with_escape1If this value is 1, window resize mode is finished(fixed) by Esc
g:winresizer_vert_resize10The change width of window size when left or right key is pressed
g:winresizer_horiz_resize3The change height of window size when down or up key is pressed
g:winresizer_start_keyCtrl + eStart window resize mode
g:winresizer_gui_start_keyCtrl + aStart window resize mode (in GUI Vim)
g:winresizer_keycode_left104(h)Expand window size to left
g:winresizer_keycode_right108(l)Expand window size to right
g:winresizer_keycode_down106(j)Expand window size to down
g:winresizer_keycode_up107(k)Expand window size to up
g:winresizer_keycode_focus102(f)Change a mode to Focus mode
g:winresizer_keycode_move109(m)Change a mode to Move mode
g:winresizer_keycode_resize114(r)Change a mode to Resize mode
g:winresizer_keycode_mode101(e)Rotate a mode (Resize -> Move -> Focus -> Resize ...)
g:winresizer_keycode_finish13(Enter)Fix and escape from window resize mode
g:winresizer_keycode_cancel113(q)Cancel and quit window resize mode

If you want to resize MacVim window itself, you must set below.

let g:winresizer_gui_enable = 1

Example in your .vimrc

:memo: If you use winresizer with default settings. Don't have to do any settings.

" If you want to start window resize mode by `Ctrl+T`
let g:winresizer_start_key = '<C-T>'

" If you want to cancel and quit window resize mode by `z` (keycode 122)
let g:winresizer_keycode_cancel = 122

" To expand your window size toward upper using upper arrow (instead of k)
let g:winresizer_keycode_up = "\<UP>"
" To expand your window size toward lower using down arrow (instead of j)
let g:winresizer_keycode_down = "\<DOWN>"