trying stuff

main
Bryan 2024-11-11 06:43:02 -06:00
parent e69c014833
commit ccc6bc20e2
1 changed files with 12 additions and 10 deletions

View File

@ -110,21 +110,20 @@ function M.stop()
M.fire("Stop") M.fire("Stop")
end end
vim.api.nvim_create_autocmd("SessionWritePost", {
callback = function()
if type(config.save_post) == "function" then
config.save_post()
end
M.fire("SavePost")
-- return true -- returning true deletes autocmd after fired
end,
})
---Save the session ---Save the session
---@param opts? { force?: boolean, session?: string } ---@param opts? { force?: boolean, session?: string }
function M.save(opts) function M.save(opts)
opts = opts or {} opts = opts or {}
vim.api.nvim_create_autocmd("SessionWritePost", {
callback = function()
if type(config.save_post) == "function" then
config.save_post()
end
M.fire("SavePost")
-- return true -- returning true deletes autocmd after fired
end,
})
-- Do not save the session if should_save evals to false...unless it's forced -- Do not save the session if should_save evals to false...unless it's forced
if type(config.should_save) == "function" and not config.should_save() and not opts.force then if type(config.should_save) == "function" and not config.should_save() and not opts.force then
M.fire("SavePost") M.fire("SavePost")
@ -135,7 +134,10 @@ function M.save(opts)
if type(config.save_pre) == "function" then if type(config.save_pre) == "function" then
config.save_pre() config.save_pre()
end end
local oldconfirm = vim.o.confirm
vim.o.confirm = false
pcall(vim.api.nvim_command, "wa") pcall(vim.api.nvim_command, "wa")
vim.o.confirm = oldconfirm
vim.api.nvim_command("mksession! " .. e(opts.session or vim.g.persisting_session or M.current())) vim.api.nvim_command("mksession! " .. e(opts.session or vim.g.persisting_session or M.current()))
end end