return { "nvim-telescope/telescope.nvim", dependencies = { "debugloop/telescope-undo.nvim", }, config = function(plugin, opts) local actions = require("telescope.actions") opts.defaults.mappings = { i = { [""] = actions.move_selection_next, [""] = actions.move_selection_previous, [""] = actions.file_vsplit, [""] = actions.file_split, [""] = actions.close, }, } opts.extensions = { undo = { entry_format = "state #$ID, $STAT, $TIME", mappings = { i = { [""] = require("telescope-undo.actions").yank_additions, [""] = require("telescope-undo.actions").yank_deletions, [""] = require("telescope-undo.actions").restore, }, }, }, } require("plugins.configs.telescope")(plugin, opts) -- require telescope and load extensions as necessary local telescope = require("telescope") telescope.load_extension("undo") vim.keymap.set("n", "fu", function() telescope.extensions.undo.undo() end, { desc = "Undo tree" }) end, }