feat(plugin): replace Lspsaga with native LSP & Snacks integration

Why: Clean up the heavy Lspsaga UI and adopt built‑in LSP plus Snacks for better performance and maintainability.

- New Features
  - Use native `vim.lsp.buf` functions for code actions, diagnostics, rename, etc.
  - Integrate Snacks picker for definitions, references, symbols, and type definitions.
- Enhancements  - Update keybindings to use Snacks and native APIs instead of Lspsaga.
  - Drop `nvimdev/Lspsaga.nvim`, `typescript-tools.nvim`, and unused `plenary.nvim`.
  - Preserve mini.misc auto‑root and other minor improvements.
- Bug Fixes
  - Resolve broken Lspsaga UI configuration and related mappings.
  - Remove stale `<leader>la` mapping that referenced Lspsaga.
This commit is contained in:
sankalp committed 2026-05-18 21:47:09 +05:45
1 parent 5f67b0fd94
commit 2c12d4fe08
4 files changed
+14 -61

No files matched your search

-18
View File
@@ -2,7 +2,6 @@ add({
'mason-org/mason.nvim', -- lsp installer manager
'mason-org/mason-lspconfig.nvim', -- lsp installer
'neovim/nvim-lspconfig', -- lsp config
'nvimdev/Lspsaga.nvim', -- lsp ui
'rachartier/tiny-inline-diagnostic.nvim', -- inline diagnostic
'rachartier/tiny-code-action.nvim', -- code action
})
@@ -28,23 +27,6 @@ require('mason-lspconfig').setup({
-- improve neovim lsp experience
vim.api.nvim_create_autocmd('LspAttach', {
callback = function()
require('lspsaga').setup({
ui = {
theme = 'round',
border = 'rounded',
devicon = true,
title = true,
winblend = 1,
expand = '',
collapse = '',
preview = '',
code_action = '󰠠 ',
diagnostic = '',
incoming = '',
outgoing = '',
hover = '',
},
})
--inline diagnostic
require('tiny-inline-diagnostic').setup({