Public Access
buffers close toast
This commit is contained in:
@@ -2,6 +2,7 @@ local M = {}
|
|||||||
|
|
||||||
function M.close_hidden()
|
function M.close_hidden()
|
||||||
local visible_buffers = {}
|
local visible_buffers = {}
|
||||||
|
local closed_count = 0
|
||||||
|
|
||||||
for _, tabpage in ipairs(vim.api.nvim_list_tabpages()) do
|
for _, tabpage in ipairs(vim.api.nvim_list_tabpages()) do
|
||||||
for _, window in ipairs(vim.api.nvim_tabpage_list_wins(tabpage)) do
|
for _, window in ipairs(vim.api.nvim_tabpage_list_wins(tabpage)) do
|
||||||
@@ -12,8 +13,17 @@ function M.close_hidden()
|
|||||||
for _, buffer in ipairs(vim.api.nvim_list_bufs()) do
|
for _, buffer in ipairs(vim.api.nvim_list_bufs()) do
|
||||||
if vim.bo[buffer].buflisted and not visible_buffers[buffer] then
|
if vim.bo[buffer].buflisted and not visible_buffers[buffer] then
|
||||||
vim.api.nvim_buf_delete(buffer, { force = true })
|
vim.api.nvim_buf_delete(buffer, { force = true })
|
||||||
|
closed_count = closed_count + 1
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if closed_count == 0 then
|
||||||
|
vim.notify("No hidden buffers to close", vim.log.levels.INFO)
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
local buffer_label = closed_count == 1 and "buffer" or "buffers"
|
||||||
|
vim.notify(string.format("Closed %d hidden %s", closed_count, buffer_label), vim.log.levels.INFO)
|
||||||
end
|
end
|
||||||
|
|
||||||
return M
|
return M
|
||||||
|
|||||||
Reference in New Issue
Block a user