diff options
Diffstat (limited to 'nvim/lua/plugins/telescope.lua')
-rw-r--r-- | nvim/lua/plugins/telescope.lua | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/nvim/lua/plugins/telescope.lua b/nvim/lua/plugins/telescope.lua new file mode 100644 index 0000000..bd26f0f --- /dev/null +++ b/nvim/lua/plugins/telescope.lua @@ -0,0 +1,52 @@ +return { + { + 'nvim-telescope/telescope.nvim', tag = '0.1.8', + dependencies = { 'nvim-lua/plenary.nvim' }, + + config = function() + local builtin = require('telescope.builtin') + vim.keymap.set('n', '<leader>ff', builtin.find_files, { desc = 'Telescope find files' }) + vim.keymap.set('n', '<C-p>', builtin.git_files, { desc = 'hello world' }) + vim.keymap.set('n', '<leader>ps', function() + builtin.grep_string({ search = vim.fn.input("Grep > ") }); + end) + + vim.keymap.set("n", "<leader>rw", function() + builtin.grep_string { search = vim.fn.expand "<cword>", } + end, { silent = true}) + end + }, + + { + "debugloop/telescope-undo.nvim", + dependencies = { -- note how they're inverted to above example + { + "nvim-telescope/telescope.nvim", + dependencies = { "nvim-lua/plenary.nvim" }, + }, + }, + keys = { + { -- lazy style key map + "<leader>u", + "<cmd>Telescope undo<cr>", + desc = "undo history", + }, + }, + opts = { + -- don't use `defaults = { }` here, do this in the main telescope spec + extensions = { + undo = { + -- telescope-undo.nvim config, see below + }, + -- no other extensions here, they can have their own spec too + }, + }, + config = function(_, opts) + -- Calling telescope's setup from multiple specs does not hurt, it will happily merge the + -- configs for us. We won't use data, as everything is in it's own namespace (telescope + -- defaults, as well as each extension). + require("telescope").setup(opts) + require("telescope").load_extension("undo") + end, + }, +} |