refactor(nvim): modernize plugin stack

Removed dead weight:
- Drop nightfox, rose-pine, kanagawa, everforest colorschemes
- Remove fzf/fzf.vim (redundant with telescope)
- Remove vim-fugitive and its keymaps (lazygit covers this)
- Remove Comment.nvim (built into nvim 0.10+)

Replaced:
- nvim-cmp → blink.cmp (Rust-powered, faster, ghost text)
- none-ls/null-ls → conform.nvim (async, maintained)
- cmp-nvim-lsp capabilities → blink.cmp.get_lsp_capabilities()
- Copilot suggestions now routed through blink-copilot

Added:
- lazydev.nvim for proper Lua LSP in nvim config
- flash.nvim (s/S jump anywhere on screen)
- which-key.nvim (leader key popup with groups)
- snacks.nvim (notifier + word highlights)
- nvim-treesitter-textobjects (af/if, ac/ic, ]f/[f)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Thomas Naderer
2026-03-01 21:26:55 +01:00
parent 82fc23530d
commit 61b1e3d2a9
6 changed files with 252 additions and 191 deletions

View File

@@ -1,6 +1,8 @@
return {
{
"nvim-treesitter/nvim-treesitter",
build = ":TSUpdate",
dependencies = { "nvim-treesitter/nvim-treesitter-textobjects" },
config = function()
require("nvim-treesitter.configs").setup({
ensure_installed = { "c", "lua", "python", "javascript", "markdown", "markdown_inline", "html", "css", "bash", "vim", "vimdoc" },
@@ -39,6 +41,29 @@ return {
node_decremental = "grm",
},
},
textobjects = {
select = {
enable = true,
lookahead = true,
keymaps = {
["af"] = "@function.outer",
["if"] = "@function.inner",
["ac"] = "@class.outer",
["ic"] = "@class.inner",
["aa"] = "@parameter.outer",
["ia"] = "@parameter.inner",
},
},
move = {
enable = true,
set_jumps = true,
goto_next_start = { ["]f"] = "@function.outer", ["]c"] = "@class.outer" },
goto_next_end = { ["]F"] = "@function.outer", ["]C"] = "@class.outer" },
goto_previous_start = { ["[f"] = "@function.outer", ["[c"] = "@class.outer" },
goto_previous_end = { ["[F"] = "@function.outer", ["[C"] = "@class.outer" },
},
},
})
-- Better folding setup
@@ -47,4 +72,5 @@ return {
vim.opt.foldlevel = 20
vim.opt.foldenable = false
end,
},
}