nvim/lua/plugins/telescope.lua
2025-04-08 15:20:13 -04:00

115 lines
3.5 KiB
Lua

return {
{ 'nvim-telescope/telescope-fzf-native.nvim', build = 'cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release && cmake --build build --config Release' },
{
"folke/trouble.nvim",
keys = {
{
"<leader><Tab>",
function()
require("trouble").next { jump = true, skip_groups = true }
end,
},
{
"<leader><esc>",
function()
require("trouble").prev { jump = true, skip_groups = true }
end,
},
},
},
{
"nvim-telescope/telescope.nvim",
tag = "0.1.8",
dependencies = { "nvim-lua/plenary.nvim" },
keys = {
{
"<leader>dd",
function()
require("telescope.builtin").diagnostics()
end,
desc = "[D]iagnostics",
},
{
"gd",
function()
require("telescope.builtin").lsp_definitions()
end,
desc = "LSP def",
},
{
"gr",
function()
require("telescope.builtin").lsp_references()
end,
desc = "[L]SP, Find [R]eferences",
},
{
"<leader>ws",
function()
require("telescope.builtin").lsp_workspace_symbols()
end,
desc = "LSP, [W]orkspace [S]ymbols",
},
{
"gi",
function()
require("telescope.builtin").lsp_implementations()
end,
desc = "[L]sp, [I]mplementations",
},
{
"gt",
function()
require("telescope.builtin").lsp_type_definitions()
end,
desc = "[L]SP, Type Definitions",
},
{
"<leader>ff",
function()
local builtin = require "telescope.builtin"
builtin.find_files()
end,
desc = "Telescope: Find files",
},
{
"<leader>b",
function()
local builtin = require "telescope.builtin"
builtin.buffers()
end,
},
{
"<leader>fg",
function()
local builtin = require "telescope.builtin"
builtin.live_grep()
end,
},
},
config = function()
local builtin = require "telescope.builtin"
local open_with_trouble = require("trouble.sources.telescope").open
-- Search with telescope and open with trouble
local telescope = require "telescope"
telescope.setup {
pickers = {
buffers = {
initial_mode = "normal"
}
},
defaults = {
mappings = {
i = { ["<c-a>"] = open_with_trouble, ["<c-d>"] = require('telescope.actions').delete_buffer },
n = { ["<c-a>"] = open_with_trouble, ["<c-d>"] = require('telescope.actions').delete_buffer },
},
},
}
require('telescope').load_extension('fzf')
end,
},
}