dots2/nvim/lua/plugins_base/telescope.lua
2025-09-17 16:48:07 +02:00

70 lines
1.8 KiB
Lua

return {
"molecule-man/telescope-menufacture",
{
"nvim-telescope/telescope.nvim",
tag = "0.1.8",
dependencies = { "nvim-lua/plenary.nvim" },
event = "VimEnter",
config = function()
require("telescope").load_extension("menufacture")
local builtin = require("telescope.builtin")
vim.keymap.set(
"n",
"<leader>sf",
require("telescope").extensions.menufacture.find_files,
{ desc = "[S]earch [F]iles" }
)
vim.keymap.set(
"n",
"<leader>sg",
require("telescope").extensions.menufacture.live_grep,
{ desc = "[S]earch [G]rep" }
)
vim.keymap.set(
"n",
"<leader>sw",
require("telescope").extensions.menufacture.grep_string,
{ desc = "[S]earch [W]ord under cursor" }
)
vim.keymap.set("n", "<leader>/", function()
-- You can pass additional configuration to Telescope to change the theme, layout, etc.
builtin.current_buffer_fuzzy_find(require("telescope.themes").get_dropdown({
winblend = 20,
previewer = false,
}))
end, { desc = "[/] Fuzzily search in current buffer" })
vim.keymap.set("n", "<leader>ff", function()
require("telescope.builtin").lsp_document_symbols({ symbols = "function" })
end, { desc = "[F]ind [F]unction" })
end,
},
{
"jmacadie/telescope-hierarchy.nvim",
dependencies = {
{
"nvim-telescope/telescope.nvim",
dependencies = { "nvim-lua/plenary.nvim" },
},
},
keys = {
{ -- lazy style key map
-- Choose your own keys, this works for me
"<leader>si",
"<cmd>Telescope hierarchy incoming_calls<cr>",
desc = "LSP: [S]earch [I]ncoming Calls",
},
{
"<leader>so",
"<cmd>Telescope hierarchy outgoing_calls<cr>",
desc = "LSP: [S]earch [O]utgoing Calls",
},
},
opts = {},
config = function(_, opts)
require("telescope").setup(opts)
require("telescope").load_extension("hierarchy")
end,
},
}