feat: make buffer cleanup delay configurable (#191)
This commit is contained in:
parent
deba4db1ac
commit
a9f7f6927d
2 changed files with 15 additions and 4 deletions
|
|
@ -34,6 +34,10 @@ local default_config = {
|
||||||
trash_command = "trash-put",
|
trash_command = "trash-put",
|
||||||
-- Selecting a new/moved/renamed file or directory will prompt you to save changes first
|
-- Selecting a new/moved/renamed file or directory will prompt you to save changes first
|
||||||
prompt_save_on_select_new_entry = true,
|
prompt_save_on_select_new_entry = true,
|
||||||
|
-- Oil will automatically delete hidden buffers after this delay
|
||||||
|
-- You can set the delay to false to disable cleanup entirely
|
||||||
|
-- Note that the cleanup process only starts when none of the oil buffers are currently displayed
|
||||||
|
cleanup_delay_ms = 2000,
|
||||||
-- Keymaps in oil buffer. Can be any value that `vim.keymap.set` accepts OR a table of keymap
|
-- Keymaps in oil buffer. Can be any value that `vim.keymap.set` accepts OR a table of keymap
|
||||||
-- options with a `callback` (e.g. { callback = function() ... end, desc = "", mode = "n" })
|
-- options with a `callback` (e.g. { callback = function() ... end, desc = "", mode = "n" })
|
||||||
-- Additionally, if it is a string that matches "actions.<name>",
|
-- Additionally, if it is a string that matches "actions.<name>",
|
||||||
|
|
|
||||||
|
|
@ -258,11 +258,18 @@ M.initialize = function(bufnr)
|
||||||
-- First wait a short time (10ms) for the buffer change to settle
|
-- First wait a short time (10ms) for the buffer change to settle
|
||||||
vim.defer_fn(function()
|
vim.defer_fn(function()
|
||||||
local visible_buffers = get_visible_hidden_buffers()
|
local visible_buffers = get_visible_hidden_buffers()
|
||||||
-- Only kick off the 2-second timer if we don't have any visible oil buffers
|
-- Only delete oil buffers if none of them are visible
|
||||||
if visible_buffers and vim.tbl_isempty(visible_buffers) then
|
if visible_buffers and vim.tbl_isempty(visible_buffers) then
|
||||||
vim.defer_fn(function()
|
-- Check if cleanup is enabled
|
||||||
M.delete_hidden_buffers()
|
if type(config.cleanup_delay_ms) == "number" then
|
||||||
end, 2000)
|
if config.cleanup_delay_ms > 0 then
|
||||||
|
vim.defer_fn(function()
|
||||||
|
M.delete_hidden_buffers()
|
||||||
|
end, config.cleanup_delay_ms)
|
||||||
|
else
|
||||||
|
M.delete_hidden_buffers()
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end, 10)
|
end, 10)
|
||||||
end,
|
end,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue