feat(on_leave): add closing tab when it's last window in tabpage

This commit is contained in:
kiyan 2021-06-28 20:00:03 +02:00
parent 28c7a34d30
commit a41f04c7e0

View File

@ -163,8 +163,19 @@ end
function M.on_leave()
vim.defer_fn(function()
if #api.nvim_list_wins() == 1 and view.win_open() then
if not view.win_open() then
return
end
local windows = api.nvim_list_wins()
local curtab = api.nvim_get_current_tabpage()
local wins_in_tabpage = vim.tbl_filter(function(w)
return api.nvim_win_get_tabpage(w) == curtab
end, windows)
if #windows == 1 then
api.nvim_command(':silent qa!')
elseif #wins_in_tabpage == 1 then
api.nvim_command(':tabclose')
end
end, 50)
end