This plugin adds the user command :Sp[lit]
to Neovim. It works the same as
Neovim's :sp[lit]
and :vs[plit]
, but can be configured to split
automatically, always horizontal or always vertical. The automatic split is
based on if the current window is wider than than your preferred minimal window
width.
Use 'yochem/autosplit.nvim'
with your package manager.
Currently, these are the options you can configure and their defaults:
require('autosplit').setup({
split = 'auto', -- choose one of 'auto', 'horizontal' and 'vertical'
min_win_width = 80 -- the minimal width you want for a splitted window
})
Just replace all your usage of :split
with :Split
. It has the same
signature as :split
(see :help :split
for more information):
:[N]Sp[lit] [file]
This means that you can open this README.md in a new horizontal split of 5
lines high using :5Sp README.md
.
It is of course also possible to remap this to a keybinding, or even better,
use :cabbrev
if you want to
replace :split
with this version:
vim.cmd('cabbrev sp Sp')
vim.cmd('cabbrev split Split')
This abbreviation however does not work when using a count (:10sp
does not
change to :10Sp
).
The current heuristic for the auto option whether to split vertical or horizontal is based on if the current window can split in two N-column windows, with N being configurable. If you think there is a better heuristic, for example using the ratio between window width and height, let me know!