mirror of
https://github.com/TimUntersberger/neogit
synced 2024-09-16 14:24:09 +02:00
Add ability to open splits above/below all windows
This commit is contained in:
parent
2b74a777b9
commit
f16fcc0d46
5 changed files with 32 additions and 2 deletions
|
@ -401,6 +401,9 @@ The `kind` option can be one of the following values:
|
|||
- `replace`
|
||||
- `split`
|
||||
- `split_above`
|
||||
- `split_above_all`
|
||||
- `split_below`
|
||||
- `split_below_all`
|
||||
- `vsplit`
|
||||
- `auto` (`vsplit` if window would have 80 cols, otherwise `split`)
|
||||
|
||||
|
|
|
@ -242,6 +242,9 @@ function M.complete(arglead)
|
|||
"kind=tab",
|
||||
"kind=split",
|
||||
"kind=split_above",
|
||||
"kind=split_above_all",
|
||||
"kind=split_below",
|
||||
"kind=split_below_all",
|
||||
"kind=vsplit",
|
||||
"kind=floating",
|
||||
"kind=auto",
|
||||
|
|
|
@ -635,7 +635,19 @@ function M.validate_config()
|
|||
if
|
||||
validate_type(val, name, "string")
|
||||
and not vim.tbl_contains(
|
||||
{ "split", "vsplit", "split_above", "vsplit_left", "tab", "floating", "replace", "auto" },
|
||||
{
|
||||
"split",
|
||||
"vsplit",
|
||||
"split_above",
|
||||
"split_above_all",
|
||||
"split_below",
|
||||
"split_below_all",
|
||||
"vsplit_left",
|
||||
"tab",
|
||||
"floating",
|
||||
"replace",
|
||||
"auto",
|
||||
},
|
||||
val
|
||||
)
|
||||
then
|
||||
|
|
|
@ -281,6 +281,12 @@ function Buffer:show()
|
|||
win = api.nvim_open_win(self.handle, true, { split = "below" })
|
||||
elseif kind == "split_above" then
|
||||
win = api.nvim_open_win(self.handle, true, { split = "above" })
|
||||
elseif kind == "split_above_all" then
|
||||
win = api.nvim_open_win(self.handle, true, { split = "above", win = -1 })
|
||||
elseif kind == "split_below" then
|
||||
win = api.nvim_open_win(self.handle, true, { split = "below" })
|
||||
elseif kind == "split_below_all" then
|
||||
win = api.nvim_open_win(self.handle, true, { split = "below", win = -1 })
|
||||
elseif kind == "vsplit" then
|
||||
win = api.nvim_open_win(self.handle, true, { split = "right", vertical = true })
|
||||
elseif kind == "vsplit_left" then
|
||||
|
|
|
@ -369,7 +369,13 @@ function M:show()
|
|||
end
|
||||
end
|
||||
|
||||
if config.values.popup.kind == "split" or config.values.popup.kind == "split_above" then
|
||||
if
|
||||
config.values.popup.kind == "split"
|
||||
or config.values.popup.kind == "split_above"
|
||||
or config.values.popup.kind == "split_above_all"
|
||||
or config.values.popup.kind == "split_below"
|
||||
or config.values.popup.kind == "split_below_all"
|
||||
then
|
||||
vim.cmd.resize(vim.fn.line("$") + 1)
|
||||
|
||||
-- We do it again because things like the BranchConfigPopup come from an async context,
|
||||
|
|
Loading…
Reference in a new issue