diff --git a/lua/ow/plugins/telescope.lua b/lua/ow/plugins/telescope.lua index c6a0b09..c302dc7 100644 --- a/lua/ow/plugins/telescope.lua +++ b/lua/ow/plugins/telescope.lua @@ -6,6 +6,7 @@ return { event = "VeryLazy", dependencies = { "nvim-lua/plenary.nvim", + "debugloop/telescope-undo.nvim", { "nvim-telescope/telescope-fzf-native.nvim", build = "make", @@ -26,6 +27,21 @@ return { }, }, }, + extensions = { + undo = { + mappings = { + i = { + [""] = require("telescope-undo.actions").yank_deletions, + [""] = false, + [""] = false, + [""] = require("telescope-undo.actions").yank_additions, + }, + n = { + ["u"] = false, + }, + }, + }, + }, pickers = { oldfiles = { initial_mode = "normal", @@ -34,10 +50,12 @@ return { initial_mode = "normal", mappings = { n = { - [""] = actions.delete_buffer + actions.move_to_top, + [""] = actions.delete_buffer + + actions.move_to_top, }, i = { - [""] = actions.delete_buffer + actions.move_to_top, + [""] = actions.delete_buffer + + actions.move_to_top, }, }, }, @@ -62,65 +80,48 @@ return { }, }) - vim.keymap.set( - "n", - "ff", - function() - builtin.find_files({ - hidden = true, - no_ignore = true, - no_ignore_parent = true, - previewer = false, - }) - end - ) - vim.keymap.set( - "n", - "fr", - function() - builtin.oldfiles({ - only_cwd = true, - hidden = true, - previewer = false, - }) - end - ) - vim.keymap.set( - "n", - "fg", - function() - builtin.live_grep({ - additional_args = function(_) - return { - "--hidden", - "--iglob=!.venv", - "--iglob=!vendor", - "--iglob=!.git", - } - end, - previewer = true, - }) - end - ) - vim.keymap.set( - "n", - "fb", - function() - builtin.buffers({ previewer = false, sort_mru = true }) - end - ) - vim.keymap.set( - "n", - "fd", - function() - builtin.diagnostics({ - bufnr = 0, - }) - end - ) + vim.keymap.set("n", "ff", function() + builtin.find_files({ + hidden = true, + no_ignore = true, + no_ignore_parent = true, + previewer = false, + }) + end) + vim.keymap.set("n", "fr", function() + builtin.oldfiles({ + only_cwd = true, + hidden = true, + previewer = false, + }) + end) + vim.keymap.set("n", "fg", function() + builtin.live_grep({ + additional_args = function(_) + return { + "--hidden", + "--iglob=!.venv", + "--iglob=!vendor", + "--iglob=!.git", + } + end, + previewer = true, + }) + end) + vim.keymap.set("n", "fb", function() + builtin.buffers({ previewer = false, sort_mru = true }) + end) + vim.keymap.set("n", "fd", function() + builtin.diagnostics({ + bufnr = 0, + }) + end) telescope.load_extension("fzf") telescope.load_extension("notify") vim.keymap.set("n", "fn", telescope.extensions.notify.notify) + + telescope.load_extension("undo") + vim.keymap.set("n", "fu", telescope.extensions.undo.undo) end, }