Move LSP config from lazy.on_event to direct execution
init.lua now requires lsp.lua on VimEnter, so the file no longer needs its own lazy.on_event wrapper. This simplifies the code and keeps the delay-loading decision in one place. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
5d40b6c245
commit
7f754cd8ba
51
lua/lsp.lua
51
lua/lsp.lua
@ -43,37 +43,36 @@ lazy.on_event("conform", "BufWritePre", "*", function()
|
|||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
-- mason + LSP 配置延迟到 VimEnter,避免启动时加载
|
-- mason + LSP 配置
|
||||||
lazy.on_event("lsp", "VimEnter", "*", function()
|
-- 由 init.lua 在 VimEnter 时 require,此处直接执行
|
||||||
vim.cmd.packadd("nvim-lspconfig")
|
vim.cmd.packadd("nvim-lspconfig")
|
||||||
require("mason").setup()
|
require("mason").setup()
|
||||||
|
|
||||||
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||||
capabilities = vim.tbl_deep_extend("force", capabilities, require("mini.completion").get_lsp_capabilities())
|
capabilities = vim.tbl_deep_extend("force", capabilities, require("mini.completion").get_lsp_capabilities())
|
||||||
|
|
||||||
vim.lsp.config("*", { capabilities = capabilities })
|
vim.lsp.config("*", { capabilities = capabilities })
|
||||||
|
|
||||||
vim.lsp.config("lua_ls", {
|
vim.lsp.config("lua_ls", {
|
||||||
settings = {
|
settings = {
|
||||||
Lua = {
|
Lua = {
|
||||||
diagnostics = { globals = { "vim" } },
|
diagnostics = { globals = { "vim" } },
|
||||||
},
|
|
||||||
},
|
},
|
||||||
})
|
},
|
||||||
|
})
|
||||||
|
|
||||||
vim.lsp.enable({
|
vim.lsp.enable({
|
||||||
"html",
|
"html",
|
||||||
"cssls",
|
"cssls",
|
||||||
"gopls",
|
"gopls",
|
||||||
"vtsls",
|
"vtsls",
|
||||||
"rust_analyzer",
|
"rust_analyzer",
|
||||||
"lua_ls",
|
"lua_ls",
|
||||||
"taplo",
|
"taplo",
|
||||||
"svelte",
|
"svelte",
|
||||||
"dartls",
|
"dartls",
|
||||||
"kotlin_lsp",
|
"kotlin_lsp",
|
||||||
})
|
})
|
||||||
end)
|
|
||||||
|
|
||||||
-- LSP keymaps(用 function 包装延迟 vim.lsp/vim.diagnostic 模块加载)
|
-- LSP keymaps(用 function 包装延迟 vim.lsp/vim.diagnostic 模块加载)
|
||||||
vim.keymap.set("n", "gd", function() vim.lsp.buf.definition() end, { desc = "Go to definition" })
|
vim.keymap.set("n", "gd", function() vim.lsp.buf.definition() end, { desc = "Go to definition" })
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user