From a176347ba96360637f290161f766c58229490dec Mon Sep 17 00:00:00 2001 From: maye Date: Wed, 21 May 2025 15:24:21 +0800 Subject: [PATCH] improve lazy.nvim configs --- init.lua | 2 -- lua/configs/options.lua | 2 +- lua/plugins/colorscheme.lua | 2 ++ lua/plugins/fzf.lua | 13 +++++++------ lua/plugins/gitsigns.lua | 1 + lua/plugins/lspconfig.lua | 11 +++++------ lua/plugins/mason.lua | 16 +++++++++++++++- lua/plugins/nvim-colorizer.lua | 1 + lua/plugins/snacks.lua | 4 ++-- lua/plugins/treesitter.lua | 2 ++ 10 files changed, 36 insertions(+), 18 deletions(-) diff --git a/init.lua b/init.lua index 5e80811..f54fdee 100644 --- a/init.lua +++ b/init.lua @@ -1,5 +1,3 @@ require('configs.options') require('configs.mappings') require('configs.lazy') - -require("functions.lsp") diff --git a/lua/configs/options.lua b/lua/configs/options.lua index da1e5d3..96e1669 100644 --- a/lua/configs/options.lua +++ b/lua/configs/options.lua @@ -30,7 +30,7 @@ opt.shiftround = true opt.hlsearch = true opt.ignorecase = true opt.smartcase = true -opt.wildignore = opt.wildignore + { "*/node_modules/*", "*/.git/*", "*/vendor/*" } +opt.wildignore = opt.wildignore + { "*/node_modules/*", "*/.git/*", "*/vendor/*", "*/.venv/*" } opt.wildmenu = true -- ui diff --git a/lua/plugins/colorscheme.lua b/lua/plugins/colorscheme.lua index ac64ac0..19d6f76 100644 --- a/lua/plugins/colorscheme.lua +++ b/lua/plugins/colorscheme.lua @@ -2,6 +2,7 @@ return { "ellisonleao/gruvbox.nvim", priority = 1000, lazy = false, + event = "VimEnter", config = function() require("gruvbox").setup({ italic = { @@ -11,6 +12,7 @@ return { emphasis = false, }, }) + vim.o.background = "dark" vim.cmd.colorscheme("gruvbox") end, } diff --git a/lua/plugins/fzf.lua b/lua/plugins/fzf.lua index c1feacd..ebebdfb 100644 --- a/lua/plugins/fzf.lua +++ b/lua/plugins/fzf.lua @@ -2,18 +2,19 @@ return { { "ibhagwan/fzf-lua", dependencies = { "nvim-tree/nvim-web-devicons" }, + cmd = "FzfLua", opts = {}, config = function() local fzf_lua = require("fzf-lua") - vim.keymap.set("n", "", fzf_lua.files, {}) - vim.keymap.set("n", "", function() fzf_lua.diagnostics_workspace({ multiline = false }) end, {}) - vim.keymap.set("n", "fg", fzf_lua.live_grep, {}) + -- vim.keymap.set("n", "", fzf_lua.files, {}) + -- vim.keymap.set("n", "", function() fzf_lua.diagnostics_workspace({ multiline = false }) end, {}) + -- vim.keymap.set("n", "fg", fzf_lua.live_grep, {}) - vim.keymap.set("n", "rg", fzf_lua.registers, {}) - vim.keymap.set("n", "gs", fzf_lua.git_status, {}) + -- vim.keymap.set("n", "rg", fzf_lua.registers, {}) + -- vim.keymap.set("n", "gs", fzf_lua.git_status, {}) - vim.keymap.set("n", "qf", fzf_lua.quickfix, {}) + -- vim.keymap.set("n", "qf", fzf_lua.quickfix, {}) vim.keymap.set({ "n", "v" }, "ca", fzf_lua.lsp_code_actions, {}) end, diff --git a/lua/plugins/gitsigns.lua b/lua/plugins/gitsigns.lua index c6b8ea6..72d934c 100644 --- a/lua/plugins/gitsigns.lua +++ b/lua/plugins/gitsigns.lua @@ -1,6 +1,7 @@ return { "lewis6991/gitsigns.nvim", key = {}, + event = { "VeryLazy" }, opts = { current_line_blame = true, current_line_blame_opts = { delay = 100 }, diff --git a/lua/plugins/lspconfig.lua b/lua/plugins/lspconfig.lua index 419e5f4..0133361 100644 --- a/lua/plugins/lspconfig.lua +++ b/lua/plugins/lspconfig.lua @@ -1,10 +1,9 @@ return { "neovim/nvim-lspconfig", + event = "InsertEnter", -- cond = not require("commons").tools.is_version_gte_0_11(), - dependencies = { { "saghen/blink.cmp" } }, - key = { - { "gd", vim.lsp.buf.definition, { "n" }, desc = "Go to definition" }, - { "gD", vim.lsp.buf.declaration, { "n" }, desc = "Go to declaration" }, - }, - config = function() end, + dependencies = { { "saghen/blink.cmp" }, { "williamboman/mason.nvim" } }, + config = function() + require("functions.lsp") + end, } diff --git a/lua/plugins/mason.lua b/lua/plugins/mason.lua index 7c74184..4b9b630 100644 --- a/lua/plugins/mason.lua +++ b/lua/plugins/mason.lua @@ -1,4 +1,18 @@ return { "mason-org/mason.nvim", - opts = {}, + cmd = "Mason", + build = ":MasonUpdate", + opts_extend = { "ensure_installed" }, + opts = { ensure_installed = { "stylua", "lua-language-server", "gopls", "pyright" } }, + config = function(_, opts) + require("mason").setup(opts) + local mr = require("mason-registry") + + mr.refresh(function() + for _, tool in ipairs(opts.ensure_installed) do + local p = mr.get_package(tool) + if not p:is_installed() then p:install() end + end + end) + end, } diff --git a/lua/plugins/nvim-colorizer.lua b/lua/plugins/nvim-colorizer.lua index 98afa7d..cf94e83 100644 --- a/lua/plugins/nvim-colorizer.lua +++ b/lua/plugins/nvim-colorizer.lua @@ -1,5 +1,6 @@ return { "norcalli/nvim-colorizer.lua", + ft = { "css", "scss", "html" }, config = function(_) require("colorizer").setup() vim.defer_fn(function() require("colorizer").attach_to_buffer(0) end, 0) diff --git a/lua/plugins/snacks.lua b/lua/plugins/snacks.lua index d0c5eef..7d0e5a4 100644 --- a/lua/plugins/snacks.lua +++ b/lua/plugins/snacks.lua @@ -10,7 +10,7 @@ return { bigfile = { enabled = true }, dashboard = { enabled = true }, explorer = { enabled = true }, - indent = { enabled = true }, + indent = { enabled = false }, input = { enabled = true }, picker = { enabled = true }, notifier = { enabled = true }, @@ -18,7 +18,7 @@ return { scope = { enabled = true }, scroll = { enabled = true }, statuscolumn = { enabled = true }, - words = { enabled = true }, + words = { enabled = false }, }, keys = { { "", function() Snacks.picker.smart() end, desc = "Smart Find Files" }, diff --git a/lua/plugins/treesitter.lua b/lua/plugins/treesitter.lua index e7757c4..0cd909e 100644 --- a/lua/plugins/treesitter.lua +++ b/lua/plugins/treesitter.lua @@ -1,6 +1,7 @@ return { "nvim-treesitter/nvim-treesitter", build = function() require("nvim-treesitter.install").update({ with_sync = true })() end, + event = { "BufReadPost" }, config = function() local configs = require("nvim-treesitter.configs") configs.setup({ @@ -24,6 +25,7 @@ return { end end, }, + playground = { enable = false }, incremental_selection = { enable = true }, indent = { enable = true }, })