refactor: telescope extension
parent
459adba9dd
commit
2b7ab49f36
|
|
@ -1,6 +1,7 @@
|
|||
local actions_state = require("telescope.actions.state")
|
||||
local transform_mod = require("telescope.actions.mt").transform_mod
|
||||
|
||||
local utils = require("persisted.utils")
|
||||
local M = {}
|
||||
|
||||
---Get the selected session from Telescope
|
||||
|
|
@ -9,6 +10,14 @@ local get_selected_session = function()
|
|||
return actions_state.get_selected_entry()
|
||||
end
|
||||
|
||||
M.load_session = function(session, config)
|
||||
utils.load_session(
|
||||
session.file_path,
|
||||
config.telescope.before_source and config.telescope.before_source(session) or _,
|
||||
config.telescope.after_source and config.telescope.after_source(session) or _
|
||||
)
|
||||
end
|
||||
|
||||
---Delete the selected session from disk
|
||||
--@return string
|
||||
M.delete_session = function()
|
||||
|
|
|
|||
|
|
@ -10,7 +10,8 @@ local function search_sessions(opts)
|
|||
local utils = require("persisted.utils")
|
||||
local config = require("persisted.config").options
|
||||
|
||||
pickers.new(opts, {
|
||||
pickers
|
||||
.new(opts, {
|
||||
prompt_title = "Sessions",
|
||||
sorter = conf.generic_sorter(opts),
|
||||
finder = _finders.session_finder(require("persisted").list()),
|
||||
|
|
@ -27,16 +28,12 @@ local function search_sessions(opts)
|
|||
actions.select_default:replace(function()
|
||||
local session = action_state.get_selected_entry()
|
||||
actions.close(prompt_bufnr)
|
||||
|
||||
utils.load_session(
|
||||
session.file_path,
|
||||
config.telescope.before_source and config.telescope.before_source(session) or _,
|
||||
config.telescope.after_source and config.telescope.after_source(session) or _
|
||||
)
|
||||
_actions.load_session(session, config)
|
||||
end)
|
||||
return true
|
||||
end,
|
||||
}):find()
|
||||
})
|
||||
:find()
|
||||
end
|
||||
|
||||
return require("telescope").register_extension({
|
||||
|
|
|
|||
Loading…
Reference in New Issue