diff --git a/nvim/lua/gerrrt/plugins/ccc-nvim.lua b/nvim/lua/gerrrt/plugins/ccc-nvim.lua index c989db8..995b766 100644 --- a/nvim/lua/gerrrt/plugins/ccc-nvim.lua +++ b/nvim/lua/gerrrt/plugins/ccc-nvim.lua @@ -4,7 +4,7 @@ -- ================================================================================================ return { "uga-rosa/ccc.nvim", - event = { "BufReadPost", "BufNewFile" }, + ft = { "css", "scss", "sass", "less", "html", "javascript", "javascriptreact", "typescript", "typescriptreact", "svelte", "vue" }, cmd = { "CccPick", "CccConvert", "CccHighlighterToggle" }, config = function() require("ccc").setup({ diff --git a/nvim/lua/gerrrt/plugins/mini-nvim.lua b/nvim/lua/gerrrt/plugins/mini-nvim.lua index 1443f54..5033f5a 100644 --- a/nvim/lua/gerrrt/plugins/mini-nvim.lua +++ b/nvim/lua/gerrrt/plugins/mini-nvim.lua @@ -1,18 +1,23 @@ -- ================================================================================================ -- TITLE : mini.nvim modules | small, focused editing upgrades -- LINKS : https://github.com/echasnovski/mini.nvim --- NOTE : Removed mini.comment (Neovim ships native gc/gcc since 0.10) and mini.icons --- (nvim-web-devicons already covers icons and several plugins depend on it). +-- NOTE : Removed mini.comment (Neovim ships native gc/gcc since 0.10). +-- Consolidated from separate per-module specs into a single spec so lazy.nvim only +-- tracks one plugin entry and runtime/lockfile overhead is minimized. -- mini.move owns line moving; mini.bufremove backs bd. -- ================================================================================================ return { - { "echasnovski/mini.ai", version = "*", opts = {} }, - { "echasnovski/mini.move", version = "*", opts = {} }, - { "echasnovski/mini.surround", version = "*", opts = {} }, - { "echasnovski/mini.cursorword", version = "*", opts = {} }, - { "echasnovski/mini.indentscope", version = "*", opts = {} }, - { "echasnovski/mini.pairs", version = "*", opts = {} }, - { "echasnovski/mini.trailspace", version = "*", opts = {} }, - { "echasnovski/mini.bufremove", version = "*", opts = {} }, - { "echasnovski/mini.notify", version = "*", opts = {} }, + "echasnovski/mini.nvim", + version = "*", + config = function() + require("mini.ai").setup({}) + require("mini.move").setup({}) + require("mini.surround").setup({}) + require("mini.cursorword").setup({}) + require("mini.indentscope").setup({}) + require("mini.pairs").setup({}) + require("mini.trailspace").setup({}) + require("mini.bufremove").setup({}) + require("mini.notify").setup({}) + end, } diff --git a/nvim/lua/gerrrt/plugins/nvim-lint.lua b/nvim/lua/gerrrt/plugins/nvim-lint.lua index 1fbaa72..b8213fb 100644 --- a/nvim/lua/gerrrt/plugins/nvim-lint.lua +++ b/nvim/lua/gerrrt/plugins/nvim-lint.lua @@ -1,7 +1,7 @@ -- ================================================================================================ -- TITLE : nvim-lint | standalone linter runner -- LINKS : https://github.com/mfussenegger/nvim-lint --- ABOUT : Runs a filetype's linter on read / write / leaving insert mode, surfacing results as +-- ABOUT : Runs a filetype's linter on write / leaving insert mode, surfacing results as -- normal diagnostics (Trouble, cd, [d/]d all work). Binaries installed by -- mason-tool-installer in conform.lua. -- ASTRAL: Python is intentionally NOT here — the ruff language server (servers/ruff.lua) @@ -10,7 +10,7 @@ -- ================================================================================================ return { "mfussenegger/nvim-lint", - event = { "BufReadPost", "BufNewFile", "BufWritePost" }, + event = { "BufReadPost", "BufNewFile" }, config = function() local lint = require("lint") lint.linters_by_ft = { @@ -31,7 +31,7 @@ return { } local grp = vim.api.nvim_create_augroup("NvimLint", { clear = true }) - vim.api.nvim_create_autocmd({ "BufWritePost", "BufReadPost", "InsertLeave" }, { + vim.api.nvim_create_autocmd({ "BufWritePost", "InsertLeave" }, { group = grp, callback = function() require("lint").try_lint() diff --git a/nvim/lua/gerrrt/plugins/rustaceanvim.lua b/nvim/lua/gerrrt/plugins/rustaceanvim.lua index aea45a1..0fd1c85 100644 --- a/nvim/lua/gerrrt/plugins/rustaceanvim.lua +++ b/nvim/lua/gerrrt/plugins/rustaceanvim.lua @@ -27,6 +27,6 @@ end return { "mrcjkb/rustaceanvim", version = "^6", - lazy = false, + ft = "rust", config = config, } diff --git a/nvim/lua/gerrrt/servers/emmet_ls.lua b/nvim/lua/gerrrt/servers/emmet_ls.lua index 68f7a0d..d4b4747 100644 --- a/nvim/lua/gerrrt/servers/emmet_ls.lua +++ b/nvim/lua/gerrrt/servers/emmet_ls.lua @@ -12,5 +12,8 @@ return function(capabilities) "svelte", "vue", }, + root_dir = function(fname) + return vim.fs.root(fname, { "package.json", ".git" }) + end, }) end diff --git a/nvim/lua/gerrrt/servers/tailwindcss.lua b/nvim/lua/gerrrt/servers/tailwindcss.lua index a6c1ff6..2d07f04 100644 --- a/nvim/lua/gerrrt/servers/tailwindcss.lua +++ b/nvim/lua/gerrrt/servers/tailwindcss.lua @@ -2,5 +2,14 @@ return function(capabilities) vim.lsp.config("tailwindcss", { capabilities = capabilities, filetypes = { "javascript", "javascriptreact", "typescript", "typescriptreact", "vue", "svelte" }, + root_dir = function(fname) + return vim.fs.root(fname, { + "tailwind.config.js", + "tailwind.config.ts", + "tailwind.config.mjs", + "postcss.config.js", + "postcss.config.ts", + }) + end, }) end diff --git a/nvim/lua/gerrrt/servers/ts_ls.lua b/nvim/lua/gerrrt/servers/ts_ls.lua index a3aaf1f..8310c79 100644 --- a/nvim/lua/gerrrt/servers/ts_ls.lua +++ b/nvim/lua/gerrrt/servers/ts_ls.lua @@ -3,5 +3,8 @@ return function(capabilities) capabilities = capabilities, filetypes = { "typescript", "javascript", "typescriptreact", "javascriptreact" }, settings = { typescript = { indentStyle = "space", indentSize = 2 } }, + root_dir = function(fname) + return vim.fs.root(fname, { "tsconfig.json", "jsconfig.json", "package.json" }) + end, }) end