1
0
mirror of https://github.com/SpaceVim/SpaceVim.git synced 2025-02-03 09:20:04 +08:00
SpaceVim/lua/spacevim/plugin/logevents.lua
2024-07-09 23:48:42 +08:00

41 lines
1.2 KiB
Lua

--=============================================================================
-- logevents.lua --- log events
-- Copyright (c) 2019-2024 Wang Shidong & Contributors
-- Author: Wang Shidong < wsdjeg@outlook.com >
-- URL: https://spacevim.org
-- License: GPLv3
--=============================================================================
local M = {}
local log = require('spacevim.logger').derive('logevent')
local notify = require('spacevim.api.notify')
local enabled = false
function M.toggle()
if not enabled then
notify.notify('logevent enabled')
local group = vim.api.nvim_create_augroup('logevent', { clear = true })
vim.api.nvim_create_autocmd(
vim.tbl_filter(function(e)
return not vim.endswith(e, 'Cmd') and e ~= 'SafeState'
end, vim.fn.getcompletion('', 'event')),
{
callback = vim.schedule_wrap(function(event)
log.debug(event.event .. event.buf)
end),
group = group,
}
)
enabled = true
else
notify.notify('logevent disabled')
vim.api.nvim_create_augroup('logevent', { clear = true })
enabled = false
end
end
return M