dotfiles/.config/nvim/lua/config/plugins/autosession.lua

39 lines
1.1 KiB
Lua
Raw Permalink Normal View History

2025-05-01 07:50:51 +05:00
return {
'rmagatti/auto-session',
lazy = false,
---enables autocomplete for opts
---@module 'auto-session'
2025-05-01 07:50:51 +05:00
---@type AutoSession.Config
opts = {
suppressed_dirs = { '~/', '~/Downloads', '/' },
2025-05-05 22:56:56 +05:00
pre_save_cmds = {
function()
local bufs = vim.api.nvim_list_bufs()
for _, buf in ipairs(bufs) do
if vim.bo[buf].buftype == 'terminal' then
vim.api.nvim_buf_delete(buf, { force = true, unload = false })
end
end
end
},
2025-05-02 19:52:18 +05:00
pre_restore_cmds = {
-- might not be necessary, but save current harpoon data when we're about to restore a session
function() require('harpoon'):sync() end,
},
post_restore_cmds = {
function()
-- vim.notify('calling harpoon sync after restore')
local harpoon = require('harpoon')
local hdata = require('harpoon.data')
-- this is the only way i found to force harpoon to reread data from the disk rather
-- than using what's in memory
require('harpoon').data = hdata.Data:new(harpoon.config)
end,
},
2025-05-01 07:50:51 +05:00
}
}