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

-26
View File
@@ -11,9 +11,7 @@ add({
'numToStr/Navigator.nvim', -- navigator
'm4xshen/hardtime.nvim', -- workflow
'mg979/vim-visual-multi', -- multiple cursors
'pmizio/typescript-tools.nvim', -- typescript tools
{ src = 'iamcco/markdown-preview.nvim', build = 'cd app && npm install' },
'nvim-lua/plenary.nvim', -- dependency for typescript-tools
-- 'nvim-flutter/flutter-tools.nvim', -- flutter tools
})
@@ -69,27 +67,3 @@ vim.keymap.set('i', '<A-x>', function()
return vim.fn['codeium#Clear']()
end, { expr = true, silent = true })
-- typescript tools
require('typescript-tools').setup({
filetypes = { 'javascript', 'javascriptreact', 'typescript', 'typescriptreact' },
settings = {
separate_diagnostic_server = true,
publish_diagnostic_on = 'insert_leave',
expose_as_code_action = {
'fix_all',
'add_missing_imports',
'remove_unused',
'remove_unused_imports',
'organize_imports',
},
tsserver_plugins = {},
complete_function_calls = false,
include_completions_with_insert_text = true,
code_lens = 'off',
disable_member_code_lens = true,
jsx_close_tag = {
enable = false,
filetypes = { 'javascriptreact', 'typescriptreact' },
},
},
})