From ae6d1cebb8aa4e1e00d9d938c6b6230cc62dd4e2 Mon Sep 17 00:00:00 2001 From: Pratik Tripathy Date: Mon, 28 Jul 2025 12:54:04 +0530 Subject: [PATCH] refactor(neovim): Rename files, move plugin declarations around, remove plugins completely - Removed: dotnet with all related configs & plugins - Removed: `vim-highlightedyank` replaced with autocommand - Moved: `indent-blankline` from `code-generic` -> `ui` - Moved: All javascript plugins to `code-lsp`: WIP - Moved: `vim-easymotion` from `code-navigation` -> `navigation` - Renamed: `code-completion` -> `completion` - Renamed: `code-formatting` -> `formatting` - Renamed: `code-git` -> `git` - Renamed: `code-lint` -> `lint` - Renamed: `navigate-files` -> `navigation` --- common/.config/nvim/lsp/omnisharp.lua | 32 ----------------- common/.config/nvim/lua/config/autocmd.lua | 13 +++++++ .../.config/nvim/lua/plugins/code-generic.lua | 26 -------------- common/.config/nvim/lua/plugins/code-lsp.lua | 34 +++++++++++++++++++ .../nvim/lua/plugins/code-navigation.lua | 8 ----- .../{code-completion.lua => completion.lua} | 0 .../{code-formatting.lua => formatting.lua} | 0 .../lua/plugins/{code-git.lua => git.lua} | 11 ------ .../.config/nvim/lua/plugins/lang-dotnet.lua | 3 -- .../.config/nvim/lua/plugins/lang-reactjs.lua | 33 ------------------ .../plugins/{code-lint.lua => linting.lua} | 0 .../{navigate-files.lua => navigation.lua} | 6 ++++ common/.config/nvim/lua/plugins/ui.lua | 28 +++++++++++++-- 13 files changed, 79 insertions(+), 115 deletions(-) delete mode 100644 common/.config/nvim/lsp/omnisharp.lua delete mode 100644 common/.config/nvim/lua/plugins/code-navigation.lua rename common/.config/nvim/lua/plugins/{code-completion.lua => completion.lua} (100%) rename common/.config/nvim/lua/plugins/{code-formatting.lua => formatting.lua} (100%) rename common/.config/nvim/lua/plugins/{code-git.lua => git.lua} (84%) delete mode 100644 common/.config/nvim/lua/plugins/lang-dotnet.lua delete mode 100644 common/.config/nvim/lua/plugins/lang-reactjs.lua rename common/.config/nvim/lua/plugins/{code-lint.lua => linting.lua} (100%) rename common/.config/nvim/lua/plugins/{navigate-files.lua => navigation.lua} (98%) diff --git a/common/.config/nvim/lsp/omnisharp.lua b/common/.config/nvim/lsp/omnisharp.lua deleted file mode 100644 index dc3c95b..0000000 --- a/common/.config/nvim/lsp/omnisharp.lua +++ /dev/null @@ -1,32 +0,0 @@ -return { - cmd = { "omnisharp" }, - handlers = { - ["textDocument/definition"] = function(...) - return require("omnisharp_extended").handler(...) - end, - }, - enable_roslyn_analyzers = true, - organize_imports_on_format = true, - enable_import_completion = true, - enable_editorconfig_support = true, - enable_ms_build_load_projects_on_demand = false, - analyze_open_documents_only = false, - settings = { - dotnet = { - server = { - useOmnisharpServer = true, - useModernNet = true, - }, - }, - csharp = { - inlayHints = { - parameters = { - enabled = true, - }, - types = { - enabled = true, - }, - }, - }, - }, -} diff --git a/common/.config/nvim/lua/config/autocmd.lua b/common/.config/nvim/lua/config/autocmd.lua index 59c9e65..901a75b 100644 --- a/common/.config/nvim/lua/config/autocmd.lua +++ b/common/.config/nvim/lua/config/autocmd.lua @@ -12,3 +12,16 @@ if not vim.g.vscode then nested = true, }) end + +vim.api.nvim_create_autocmd("TextYankPost", { + desc = "Highlight when yanking text", + group = vim.api.nvim_create_augroup("highlight-yank", { clear = true }), + callback = function() + vim.highlight.on_yank({ + higroup = "Visual", -- Highlight group to use + timeout = 400, -- Duration in milliseconds + on_visual = true, -- Highlight visual selections + on_macro = false, -- Don't highlight during macro playback + }) + end, +}) diff --git a/common/.config/nvim/lua/plugins/code-generic.lua b/common/.config/nvim/lua/plugins/code-generic.lua index f42164e..07fc9b5 100644 --- a/common/.config/nvim/lua/plugins/code-generic.lua +++ b/common/.config/nvim/lua/plugins/code-generic.lua @@ -1,32 +1,6 @@ return { { "tpope/vim-repeat" }, - -- indent guides for Neovim - { - "lukas-reineke/indent-blankline.nvim", - cond = require("config.util").is_not_vscode(), - opts = { - indent = { char = "│", tab_char = "│" }, - scope = { enabled = false }, - exclude = { - filetypes = { - "help", - "alpha", - "dashboard", - "neo-tree", - "Trouble", - "trouble", - "lazy", - "mason", - "notify", - "toggleterm", - "lazyterm", - }, - }, - }, - main = "ibl", - }, - -- mini.nvim: Collection of various small independent plugins/modules { "echasnovski/mini.nvim", diff --git a/common/.config/nvim/lua/plugins/code-lsp.lua b/common/.config/nvim/lua/plugins/code-lsp.lua index 02f2562..1337286 100644 --- a/common/.config/nvim/lua/plugins/code-lsp.lua +++ b/common/.config/nvim/lua/plugins/code-lsp.lua @@ -81,4 +81,38 @@ return { require("crates").setup() end, }, + + -- Javascript/Typescript/React/Vue + -- + -- Automatically add closing tags for HTML and JSX + { + "windwp/nvim-ts-autotag", + config = function() + require("nvim-ts-autotag").setup() + end, + }, + + -- Intelligent commenting on JSX + { + "JoosepAlviste/nvim-ts-context-commentstring", + opts = { + options = { + enable_autocmd = false, + }, + }, + config = function() + vim.g.skip_ts_context_commentstring_module = true + end, + }, + + -- Highlight colors + { + "brenoprata10/nvim-highlight-colors", + setup = { + enable_tailwind = true, + }, + config = function() + require("nvim-highlight-colors").setup() + end, + }, } diff --git a/common/.config/nvim/lua/plugins/code-navigation.lua b/common/.config/nvim/lua/plugins/code-navigation.lua deleted file mode 100644 index 2032140..0000000 --- a/common/.config/nvim/lua/plugins/code-navigation.lua +++ /dev/null @@ -1,8 +0,0 @@ -return { - { - "easymotion/vim-easymotion", - keys = { - { "j", "(easymotion-s)", desc = "Easymotion jump" }, - }, - }, -} diff --git a/common/.config/nvim/lua/plugins/code-completion.lua b/common/.config/nvim/lua/plugins/completion.lua similarity index 100% rename from common/.config/nvim/lua/plugins/code-completion.lua rename to common/.config/nvim/lua/plugins/completion.lua diff --git a/common/.config/nvim/lua/plugins/code-formatting.lua b/common/.config/nvim/lua/plugins/formatting.lua similarity index 100% rename from common/.config/nvim/lua/plugins/code-formatting.lua rename to common/.config/nvim/lua/plugins/formatting.lua diff --git a/common/.config/nvim/lua/plugins/code-git.lua b/common/.config/nvim/lua/plugins/git.lua similarity index 84% rename from common/.config/nvim/lua/plugins/code-git.lua rename to common/.config/nvim/lua/plugins/git.lua index e714b1b..5936b45 100644 --- a/common/.config/nvim/lua/plugins/code-git.lua +++ b/common/.config/nvim/lua/plugins/git.lua @@ -75,18 +75,7 @@ return { -- Text object map({ "o", "x" }, "ih", ":Gitsigns select_hunk", { desc = "Git: Visual select hunk" }) - -- Staging - -- Actions map("n", "gr", gs.reset_hunk, { desc = "Git: reset hunk" }) - map("n", "gsh", gs.stage_hunk, { desc = "Git: Stage Hunk" }) - map("n", "gsu", gs.undo_stage_hunk, { desc = "Git: Undo Stage Hunk" }) - map("n", "gsb", gs.stage_buffer, { desc = "Git: Stage Current File" }) - -- visual mode - map("v", "gsH", function() - gs.stage_hunk({ vim.fn.line("."), vim.fn.line("v") }) - end, { desc = "Git: Visual Stage Hunk" }) - - -- normal mode map("n", "gp", gs.preview_hunk, { desc = "Git: Preview hunk" }) map("n", "gK", function() diff --git a/common/.config/nvim/lua/plugins/lang-dotnet.lua b/common/.config/nvim/lua/plugins/lang-dotnet.lua deleted file mode 100644 index 450faa1..0000000 --- a/common/.config/nvim/lua/plugins/lang-dotnet.lua +++ /dev/null @@ -1,3 +0,0 @@ -return { - { "Hoffs/omnisharp-extended-lsp.nvim", lazy = true }, -} diff --git a/common/.config/nvim/lua/plugins/lang-reactjs.lua b/common/.config/nvim/lua/plugins/lang-reactjs.lua deleted file mode 100644 index 23af575..0000000 --- a/common/.config/nvim/lua/plugins/lang-reactjs.lua +++ /dev/null @@ -1,33 +0,0 @@ -return { - -- Automatically add closing tags for HTML and JSX - { - "windwp/nvim-ts-autotag", - config = function() - require("nvim-ts-autotag").setup() - end, - }, - - -- Intelligent commenting on JSX - { - "JoosepAlviste/nvim-ts-context-commentstring", - opts = { - options = { - enable_autocmd = false, - }, - }, - config = function() - vim.g.skip_ts_context_commentstring_module = true - end, - }, - - -- Highlight colors - { - "brenoprata10/nvim-highlight-colors", - setup = { - enable_tailwind = true, - }, - config = function() - require("nvim-highlight-colors").setup() - end, - }, -} diff --git a/common/.config/nvim/lua/plugins/code-lint.lua b/common/.config/nvim/lua/plugins/linting.lua similarity index 100% rename from common/.config/nvim/lua/plugins/code-lint.lua rename to common/.config/nvim/lua/plugins/linting.lua diff --git a/common/.config/nvim/lua/plugins/navigate-files.lua b/common/.config/nvim/lua/plugins/navigation.lua similarity index 98% rename from common/.config/nvim/lua/plugins/navigate-files.lua rename to common/.config/nvim/lua/plugins/navigation.lua index 78a733e..358f515 100644 --- a/common/.config/nvim/lua/plugins/navigate-files.lua +++ b/common/.config/nvim/lua/plugins/navigation.lua @@ -1,4 +1,10 @@ return { + { + "easymotion/vim-easymotion", + keys = { + { "j", "(easymotion-s)", desc = "Easymotion jump" }, + }, + }, -- File Explorer: Neotree { diff --git a/common/.config/nvim/lua/plugins/ui.lua b/common/.config/nvim/lua/plugins/ui.lua index d78cedd..09da6a1 100644 --- a/common/.config/nvim/lua/plugins/ui.lua +++ b/common/.config/nvim/lua/plugins/ui.lua @@ -17,8 +17,6 @@ return { cond = require("config.util").is_not_vscode(), }, - { "machakann/vim-highlightedyank" }, - { "catppuccin/nvim", name = "catppuccin", @@ -307,6 +305,32 @@ return { end, }, + -- Indent guides for Neovim + { + "lukas-reineke/indent-blankline.nvim", + cond = require("config.util").is_not_vscode(), + opts = { + indent = { char = "│", tab_char = "│" }, + scope = { enabled = false }, + exclude = { + filetypes = { + "help", + "alpha", + "dashboard", + "neo-tree", + "Trouble", + "trouble", + "lazy", + "mason", + "notify", + "toggleterm", + "lazyterm", + }, + }, + }, + main = "ibl", + }, + -- Better folds { "kevinhwang91/nvim-ufo",