diff options
Diffstat (limited to '.config/nvim/lua/plugins/telescope.lua')
| -rw-r--r-- | .config/nvim/lua/plugins/telescope.lua | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/.config/nvim/lua/plugins/telescope.lua b/.config/nvim/lua/plugins/telescope.lua new file mode 100644 index 0000000..f942dc8 --- /dev/null +++ b/.config/nvim/lua/plugins/telescope.lua @@ -0,0 +1,42 @@ +return { + "nvim-telescope/telescope.nvim", + dependencies = { "nvim-lua/plenary.nvim" }, + config = function() + require("telescope").setup({}) + + local tscope = require('telescope.builtin') + vim.keymap.set("n", "<leader>ff", function() + local cwd + if vim.bo.filetype == "oil" then + -- For Oil buffers + cwd = require("oil").get_current_dir() + else + cwd = vim.fn.expand("%:p:h") + end + tscope.find_files({ cwd = cwd }) + end, { desc = "Find File" }) + + vim.keymap.set("n", "<leader>fp", function() + tscope.find_files({ + cwd = vim.loop.cwd(), + }) + end, { desc = "Find Project File" }) + vim.keymap.set('n', '<leader>bb', tscope.buffers, + { desc = "Find Buffer" }) + vim.keymap.set('n', '<leader>fh', tscope.help_tags, + { desc = "Find Help" }) + -- vim.keymap.set('n', '<leader>fg', function() + -- tscope.grep_string( + -- { search = vim.fn.input("Grep > "), + -- desc = "Find by Grep" }); + -- end) + vim.keymap.set('n', '<leader>fg', tscope.live_grep, + { desc = "Find by Grep" }) + vim.keymap.set('n', '<leader>fr', tscope.oldfiles, + { desc = "Find Recent Files" }) + vim.keymap.set('n', '<leader>lw', tscope.diagnostics, + { desc = "Search Diagnostics" }) + vim.keymap.set('n', '<leader>lg', tscope.lsp_references, + { desc = "Search References" }) + end, +} |
