41 lines
1.3 KiB
Lua
41 lines
1.3 KiB
Lua
|
local K = require('core.keymap')
|
||
|
|
||
|
return {
|
||
|
'shatur/neovim-session-manager',
|
||
|
dependencies = {
|
||
|
'nvim-lua/plenary.nvim',
|
||
|
},
|
||
|
config = function()
|
||
|
local Path = require('plenary.path')
|
||
|
local config = require('session_manager.config')
|
||
|
local session_manager = require('session_manager')
|
||
|
session_manager.setup({
|
||
|
sessions_dir = Path:new(vim.fn.stdpath('data'), 'sessions'),
|
||
|
autoload_mode = config.AutoloadMode.Disabled,
|
||
|
autosave_last_session = true,
|
||
|
autosave_ignore_not_normal = true,
|
||
|
autosave_ignore_dirs = {},
|
||
|
autosave_ignore_filetypes = {
|
||
|
'gitcommit',
|
||
|
'gitrebase',
|
||
|
},
|
||
|
autosave_ignore_buftypes = {},
|
||
|
autosave_only_in_session = true,
|
||
|
max_path_length = 80,
|
||
|
})
|
||
|
|
||
|
vim.keymap.set(
|
||
|
K.SESSIONS.MENU.mode,
|
||
|
K.SESSIONS.MENU.shortcut,
|
||
|
session_manager.available_commands,
|
||
|
{ desc = K.SESSIONS.MENU.description }
|
||
|
)
|
||
|
vim.keymap.set(
|
||
|
K.SESSIONS.CREATE.mode,
|
||
|
K.SESSIONS.CREATE.shortcut,
|
||
|
session_manager.save_current_session,
|
||
|
{ desc = K.SESSIONS.CREATE.description }
|
||
|
)
|
||
|
end,
|
||
|
}
|