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:
@@ -4,10 +4,6 @@ return {
|
||||
{ "gruvbox-community/gruvbox", priority = 1000 },
|
||||
{ "folke/tokyonight.nvim", priority = 1000 },
|
||||
{ "catppuccin/nvim", name = "catppuccin", priority = 1000 },
|
||||
{ "EdenEast/nightfox.nvim", priority = 1000 },
|
||||
{ "rose-pine/neovim", name = "rose-pine", priority = 1000 },
|
||||
{ "rebelot/kanagawa.nvim", priority = 1000 },
|
||||
{ "sainnhe/everforest", priority = 1000 },
|
||||
|
||||
|
||||
-- Auto-save
|
||||
@@ -73,10 +69,6 @@ return {
|
||||
current_line_blame = false,
|
||||
}
|
||||
},
|
||||
{
|
||||
"tpope/vim-fugitive",
|
||||
cmd = { "Git", "Gvdiffsplit" },
|
||||
},
|
||||
{
|
||||
"kdheepak/lazygit.nvim",
|
||||
dependencies = { "nvim-lua/plenary.nvim" },
|
||||
@@ -107,30 +99,70 @@ return {
|
||||
right_alt = "",
|
||||
space = " ",
|
||||
}
|
||||
-- Tokyo Night Moon colors, transparent background
|
||||
vim.g.tmuxline_theme = {
|
||||
a = { "#1e2030", "#82aaff" },
|
||||
b = { "#82aaff", "default" },
|
||||
c = { "#636da6", "default" },
|
||||
x = { "#636da6", "default" },
|
||||
y = { "#82aaff", "default" },
|
||||
z = { "#1e2030", "#82aaff" },
|
||||
win = { "#636da6", "default" },
|
||||
cwin = { "#1e2030", "#c099ff" },
|
||||
bg = { "#636da6", "default" },
|
||||
}
|
||||
vim.g.tmuxline_preset = {
|
||||
a = "#S",
|
||||
win = "#I #W",
|
||||
a = "#S",
|
||||
win = "#I #W",
|
||||
cwin = "#I #W",
|
||||
y = "%H:%M",
|
||||
z = "%d %b",
|
||||
y = "%H:%M",
|
||||
z = "%d %b",
|
||||
}
|
||||
end,
|
||||
},
|
||||
|
||||
-- FZF
|
||||
{
|
||||
"junegunn/fzf",
|
||||
build = function()
|
||||
vim.fn["fzf#install"]()
|
||||
end,
|
||||
},
|
||||
{ "junegunn/fzf.vim" },
|
||||
|
||||
-- Productivity
|
||||
{ "numToStr/Comment.nvim", event = "VeryLazy", opts = {} },
|
||||
{ "windwp/nvim-autopairs", event = "InsertEnter", opts = {} },
|
||||
{ "tpope/vim-surround", event = "VeryLazy" },
|
||||
|
||||
-- Flash: jump anywhere with 2 chars (replaces f/t for long range)
|
||||
{
|
||||
"folke/flash.nvim",
|
||||
event = "VeryLazy",
|
||||
opts = {},
|
||||
keys = {
|
||||
{ "s", mode = { "n", "x", "o" }, function() require("flash").jump() end, desc = "Flash jump" },
|
||||
{ "S", mode = { "n", "x", "o" }, function() require("flash").treesitter() end, desc = "Flash treesitter" },
|
||||
},
|
||||
},
|
||||
|
||||
-- Which-key: show available keybindings after leader
|
||||
{
|
||||
"folke/which-key.nvim",
|
||||
event = "VeryLazy",
|
||||
opts = {
|
||||
spec = {
|
||||
{ "<leader>f", group = "find" },
|
||||
{ "<leader>g", group = "git" },
|
||||
{ "<leader>s", group = "split/spell" },
|
||||
{ "<leader>w", group = "write" },
|
||||
{ "<leader>d", group = "date" },
|
||||
{ "<leader>l", group = "lsp" },
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
-- Snacks: notifications + quality-of-life utilities
|
||||
{
|
||||
"folke/snacks.nvim",
|
||||
priority = 1000,
|
||||
lazy = false,
|
||||
opts = {
|
||||
notifier = { enabled = true },
|
||||
words = { enabled = true },
|
||||
},
|
||||
},
|
||||
|
||||
-- -- Tmux navigation
|
||||
-- { "christoomey/vim-tmux-navigator" },
|
||||
|
||||
|
||||
Reference in New Issue
Block a user