diff --git a/.config/nvim/lua/plugins/auto-session.lua b/.config/nvim/lua/plugins/auto-session.lua index 0f03fe2..6c022c6 100644 --- a/.config/nvim/lua/plugins/auto-session.lua +++ b/.config/nvim/lua/plugins/auto-session.lua @@ -1,16 +1,34 @@ return { "rmagatti/auto-session", - config = function() - local auto_session = require("auto-session") + lazy = false, - auto_session.setup({ - auto_restore_enabled = false, - auto_session_suppress_dirs = { "~/", "~/Downloads", "~/Documents", "~/Desktop", "~/Photos" } - }) + -- Configure keybinds + keys = { + { "wa", "SessionToggleAutoSave", desc = "Toggle session autosave" }, + { "wD", "Autosession delete", desc = "Delete a session" }, + { "wd", "SessionDelete", desc = "Delete session for cwd" }, + { "wl", "SessionSearch", desc = "Open session picker" }, + { "wr", "SessionRestore", desc = "Restore session for cwd" }, + { "ws", "SessionSave", desc = "Save session for cwd" }, + }, - local keymap = vim.keymap + ---@module "auto-session" + ---@type AutoSession.Config + opts = { + auto_save = true, + auto_restore = false, -- don't auto restore the last session + session_lens = { + load_on_setup = true, + previewer = false, - keymap.set("n", "wr", "SessionRestore", { desc = "Restore session for cwd" }) - keymap.set("n", "ws", "SessionSave", { desc = "Save session for auto session root dir" }) - end, + mappings = { + delete_session = { "i", "" }, + alternate_session = { "i", "" }, + copy_session = { "i", "" }, + }, + }, + bypass_save_filetypes = { "alpha", "dashboard" }, -- don't save dashboard/greeter to a session + -- Folders listed here will not have sessions created within. + suppress_dirs = { "~/", "~/Downloads", "~/Documents", "~/Desktop", "/" }, + }, }