Files

68 lines
2.0 KiB
Lua
Raw Permalink Normal View History

2026-05-20 09:39:20 -06:00
-- ============================================================
-- TROUBLE.NVIM
-- Better diagnostics / references / quickfix UI
-- ============================================================
vim.pack.add {
{
src = 'https://github.com/folke/trouble.nvim',
},
}
require('trouble').setup {
auto_close = false,
auto_open = false,
auto_preview = true,
focus = true,
modes = {
diagnostics = {
auto_open = false,
},
},
icons = {
indent = {
top = '',
middle = '├╴',
last = '└╴',
fold_open = '',
fold_closed = '',
ws = ' ',
},
},
}
local trouble = require 'trouble'
-- ============================================================
-- KEYMAPS
-- ============================================================
-- General diagnostics
vim.keymap.set('n', '<leader>xx', function() trouble.toggle 'diagnostics' end, { desc = 'Trouble: Diagnostics' })
-- Workspace diagnostics
vim.keymap.set('n', '<leader>xw', function() trouble.toggle 'workspace_diagnostics' end, { desc = 'Trouble: Workspace Diagnostics' })
-- Current buffer diagnostics
vim.keymap.set('n', '<leader>xd', function() trouble.toggle 'document_diagnostics' end, { desc = 'Trouble: Document Diagnostics' })
-- Quickfix
vim.keymap.set('n', '<leader>xq', function() trouble.toggle 'quickfix' end, { desc = 'Trouble: Quickfix' })
-- Location list
vim.keymap.set('n', '<leader>xl', function() trouble.toggle 'loclist' end, { desc = 'Trouble: Location List' })
-- LSP references
vim.keymap.set('n', 'gr', function() trouble.toggle 'lsp_references' end, { desc = 'Trouble: References' })
-- Symbols
vim.keymap.set('n', '<leader>xs', function() trouble.toggle 'symbols' end, { desc = 'Trouble: Symbols' })
-- Toggle previous/next diagnostics
vim.keymap.set('n', '[x', function() trouble.prev { skip_groups = true, jump = true } end, { desc = 'Previous Trouble Item' })
vim.keymap.set('n', ']x', function() trouble.next { skip_groups = true, jump = true } end, { desc = 'Next Trouble Item' })