fix: Empty trigger_events crash the plugin (#33)

This commit is contained in:
Toni Müller
2023-07-21 08:33:55 +02:00
committed by GitHub
parent 473aea9d6f
commit 48f69fb61d
2 changed files with 38 additions and 27 deletions
+35 -27
View File
@@ -116,33 +116,41 @@ end
function M.on()
local augroup = autocmds.create_augroup({ clear = true })
api.nvim_create_autocmd(cnf.opts.trigger_events.immediate_save, {
callback = function(opts)
if should_be_saved(opts.buf) then
immediate_save(opts.buf)
end
end,
group = augroup,
desc = "Immediately save a buffer",
})
api.nvim_create_autocmd(cnf.opts.trigger_events.defer_save, {
callback = function(opts)
if should_be_saved(opts.buf) then
defer_save(opts.buf)
end
end,
group = augroup,
desc = "Save a buffer after the `debounce_delay`",
})
api.nvim_create_autocmd(cnf.opts.trigger_events.cancel_defered_save, {
callback = function(opts)
if should_be_saved(opts.buf) then
cancel_timer(opts.buf)
end
end,
group = augroup,
desc = "Cancel a pending save timer for a buffer",
})
local events = cnf.opts.trigger_events
if events.immediate_save ~= nil and #events.immediate_save > 0 then
api.nvim_create_autocmd(events.immediate_save, {
callback = function(opts)
if should_be_saved(opts.buf) then
immediate_save(opts.buf)
end
end,
group = augroup,
desc = "Immediately save a buffer",
})
end
if events.defer_save ~= nil and #events.defer_save > 0 then
api.nvim_create_autocmd(events.defer_save, {
callback = function(opts)
if should_be_saved(opts.buf) then
defer_save(opts.buf)
end
end,
group = augroup,
desc = "Save a buffer after the `debounce_delay`",
})
end
if events.cancel_defered_save ~= nil and #events.cancel_defered_save > 0 then
api.nvim_create_autocmd(events.cancel_defered_save, {
callback = function(opts)
if should_be_saved(opts.buf) then
cancel_timer(opts.buf)
end
end,
group = augroup,
desc = "Cancel a pending save timer for a buffer",
})
end
local function setup_dimming()
if cnf.opts.execution_message.enabled then