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,6 +110,11 @@ function M.stop()
M.fire("Stop") M.fire("Stop")
end end
---Save the session
---@param opts? { force?: boolean, session?: string }
function M.save(opts)
opts = opts or {}
vim.api.nvim_create_autocmd("SessionWritePost", { vim.api.nvim_create_autocmd("SessionWritePost", {
callback = function() callback = function()
if type(config.save_post) == "function" then if type(config.save_post) == "function" then
@ -119,12 +124,6 @@ vim.api.nvim_create_autocmd("SessionWritePost", {
-- return true -- returning true deletes autocmd after fired -- return true -- returning true deletes autocmd after fired
end, end,
}) })
---Save the session
---@param opts? { force?: boolean, session?: string }
function M.save(opts)
opts = opts or {}
-- 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