mirror of
https://github.com/SpaceVim/SpaceVim.git
synced 2025-02-03 09:20:04 +08:00
41 lines
1.2 KiB
Lua
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
|