Vim split to a specific size
Vim supports two kinds of splits: vertical (:vsplit
) and horizontal (:split
). You can open any file in a split by calling :split path/to/file
or :vsplit path/to/file
. By default, the full width or height of the current buffer will be divided in two. The new split will take up 50% of the available real estate, and the existing will be reduced to 50% of its original size.
But! Vim has a way to open splits to a specific size: By prepending a number to a split command, that split will be opened to the exact character width or height you specify. For example: :20 vsplit path/to/file
will open a split that is exactly 20 characters wide, instead of 50% of the current width.
Note that the number includes the line numbers, gutter, and bar between buffers. For a vertical split, 4 characters will typically be lost to that space.
You can enter this with or without the space between the number. For example: :30split path/to/file
and :30 split path/to/file
will do the same thing.
We have written a ton about splits, so be sure to check the archives. Our post about resizing slits will come in handy paired with this tip.