t0vim/lua/custom/trouble.lua

38 lines
1.5 KiB
Lua

local trouble = require("trouble")
-- Setup Trouble
trouble.setup()
-- Keybindings
vim.keymap.set("n", "<leader>xx", "<cmd>Trouble diagnostics toggle<cr>", { desc = "Diagnostics (Trouble)" })
vim.keymap.set("n", "<leader>xX", "<cmd>Trouble diagnostics toggle filter.buf=0<cr>",
{ desc = "Buffer Diagnostics (Trouble)" })
vim.keymap.set("n", "<leader>cs", "<cmd>Trouble symbols toggle focus=false<cr>", { desc = "Symbols (Trouble)" })
vim.keymap.set("n", "<leader>cl", "<cmd>Trouble lsp toggle focus=false win.position=right<cr>",
{ desc = "LSP Definitions / references / ... (Trouble)" })
vim.keymap.set("n", "<leader>xL", "<cmd>Trouble loclist toggle<cr>", { desc = "Location List (Trouble)" })
vim.keymap.set("n", "<leader>xQ", "<cmd>Trouble qflist toggle<cr>", { desc = "Quickfix List (Trouble)" })
-- Telescope integration
-- local actions = require("telescope.actions")
-- local add_to_trouble = require("trouble.sources.telescope").add
local ok, telescope = pcall(require, "telescope")
if ok then
local open_with_trouble = require("trouble.sources.telescope").open
telescope.setup({
defaults = {
mappings = {
i = { ["<c-t>"] = open_with_trouble },
n = { ["<c-t>"] = open_with_trouble },
},
},
})
end
-- For fzf-lua settings
local ok_fzf, fzf_lua_config = pcall(require, "fzf-lua.config")
if ok_fzf then
local actions = require("trouble.sources.fzf").actions
fzf_lua_config.defaults.actions.files["ctrl-t"] = actions.open
end