windows

open command in a new window

[!TIP|label:reference:]

" :[N]new [++opt] [+cmd] {file}

:<n>command +<command>
" |    |        + the command will be execute
" |    + command to create new window. i.e.: new, vnew, split/sp, vsplit/vsp
" + line number or column number

move between windows

COMMANDS
SHORTCUT

:wincmd l

ctrl + w ⇢ l

:wincmd h

ctrl + w ⇢ h

:wincmd j

ctrl + w ⇢ j

:wincmd k

ctrl + w ⇢ k

:wincmd r

ctrl + w ⇢ r

resize

[!NOTE|label:reference:]

  • maximium split window: ctrl + w ⇢ _

  • maximium vsplit window: ctrl + w ⇢ |

  • resize window: ctrl + w ⇢ |

horizontal resize

:res is the shortcut of :resize

COMMANDS OR SHORTCUT
COMMENTS

:res[ize] n

setup the width to lines

:res[ize] -n

reduce lines of the width

:res[ize] +n

extend lines of the width

ctrl + w ⇢ +

extend 1 line

:wincmd +

extend 1 line

ctrl + w ⇢ -

reduce 1 line

:wincmd -

reduce 1 line

ctrl + w ⇢ =

resize to default: 50%

:wincmd =

resize to default: 50%

ctrl + w ⇢ _

maximum the window

:wincmd _

maximum the window

vertical resize

COMMANDS OR SHORTCUT
COMMENTS

:vertical res[ize] n

setup the width to columns

:vertical res[ize] -n

reduce columns of the width

:vertical res[ize] +n

extend columns of the width

ctrl + w ⇢ >

extend 1 column

:wincmd >

extend 1 column

ctrl + w ⇢ <

reduce 1 column

:wincmd <

reduce 1 column

ctrl + w ⇢ =

resize to default: 50%

:wincmd =

resize to default: 50%

ctrl + w ⇢ |

maximum the window

:wincmd ⎮

maximum the window

  • automatically fitting a quickfix window height

     .vimrc
    au FileType qf call AdjustWindowHeight(3, 10)
    function! AdjustWindowHeight(minheight, maxheight)
      exe max([min([line("$"), a:maxheight]), a:minheight]) . "wincmd _"
    endfunction

Last updated

Was this helpful?