From 8f7ee56dab264615eeb3b83ecda68270bedc6595 Mon Sep 17 00:00:00 2001 From: Folke Lemaitre Date: Sat, 8 Jun 2024 08:11:28 +0200 Subject: [PATCH] refactor: LazyVim.lsp.on_attach --- lua/lazyvim/plugins/extras/coding/copilot.lua | 6 ++--- lua/lazyvim/plugins/extras/lang/angular.lua | 8 +++---- lua/lazyvim/plugins/extras/lang/go.lua | 24 +++++++++---------- lua/lazyvim/plugins/extras/lang/helm.lua | 22 ++++++++--------- lua/lazyvim/plugins/extras/lang/python.lua | 8 +++---- lua/lazyvim/plugins/extras/lang/yaml.lua | 6 ++--- 6 files changed, 32 insertions(+), 42 deletions(-) diff --git a/lua/lazyvim/plugins/extras/coding/copilot.lua b/lua/lazyvim/plugins/extras/coding/copilot.lua index afe14f61..a9897107 100644 --- a/lua/lazyvim/plugins/extras/coding/copilot.lua +++ b/lua/lazyvim/plugins/extras/coding/copilot.lua @@ -66,10 +66,8 @@ return { -- attach cmp source whenever copilot attaches -- fixes lazy-loading issues with the copilot cmp source LazyVim.lsp.on_attach(function(client) - if client.name == "copilot" then - copilot_cmp._on_insert_enter({}) - end - end) + copilot_cmp._on_insert_enter({}) + end, "copilot") end, }, }, diff --git a/lua/lazyvim/plugins/extras/lang/angular.lua b/lua/lazyvim/plugins/extras/lang/angular.lua index fef54cc7..9dd82329 100644 --- a/lua/lazyvim/plugins/extras/lang/angular.lua +++ b/lua/lazyvim/plugins/extras/lang/angular.lua @@ -36,11 +36,9 @@ return { setup = { angularls = function() LazyVim.lsp.on_attach(function(client) - if client.name == "angularls" then - --HACK: disable angular renaming capability due to duplicate rename popping up - client.server_capabilities.renameProvider = false - end - end) + --HACK: disable angular renaming capability due to duplicate rename popping up + client.server_capabilities.renameProvider = false + end, "angularls") end, }, }, diff --git a/lua/lazyvim/plugins/extras/lang/go.lua b/lua/lazyvim/plugins/extras/lang/go.lua index 5551789e..b3e0ffab 100644 --- a/lua/lazyvim/plugins/extras/lang/go.lua +++ b/lua/lazyvim/plugins/extras/lang/go.lua @@ -61,20 +61,18 @@ return { -- workaround for gopls not supporting semanticTokensProvider -- https://github.com/golang/go/issues/54531#issuecomment-1464982242 LazyVim.lsp.on_attach(function(client, _) - if client.name == "gopls" then - if not client.server_capabilities.semanticTokensProvider then - local semantic = client.config.capabilities.textDocument.semanticTokens - client.server_capabilities.semanticTokensProvider = { - full = true, - legend = { - tokenTypes = semantic.tokenTypes, - tokenModifiers = semantic.tokenModifiers, - }, - range = true, - } - end + if not client.server_capabilities.semanticTokensProvider then + local semantic = client.config.capabilities.textDocument.semanticTokens + client.server_capabilities.semanticTokensProvider = { + full = true, + legend = { + tokenTypes = semantic.tokenTypes, + tokenModifiers = semantic.tokenModifiers, + }, + range = true, + } end - end) + end, "gopls") -- end workaround end, }, diff --git a/lua/lazyvim/plugins/extras/lang/helm.lua b/lua/lazyvim/plugins/extras/lang/helm.lua index 4145b790..67ec0b26 100644 --- a/lua/lazyvim/plugins/extras/lang/helm.lua +++ b/lua/lazyvim/plugins/extras/lang/helm.lua @@ -1,13 +1,3 @@ -LazyVim.lsp.on_attach(function(client, buffer) - if client.name == "yamlls" then - if vim.api.nvim_get_option_value("filetype", { buf = buffer }) == "helm" then - vim.schedule(function() - vim.cmd("LspStop ++force yamlls") - end) - end - end -end) - return { recommended = function() return LazyVim.extras.wants({ @@ -25,9 +15,19 @@ return { "neovim/nvim-lspconfig", opts = { servers = { - yamlls = {}, helm_ls = {}, }, + setup = { + yamlls = function() + LazyVim.lsp.on_attach(function(client, buffer) + if vim.bo[buffer].filetype == "helm" then + vim.schedule(function() + vim.cmd("LspStop ++force yamlls") + end) + end + end, "yamlls") + end, + }, }, }, } diff --git a/lua/lazyvim/plugins/extras/lang/python.lua b/lua/lazyvim/plugins/extras/lang/python.lua index 1d2bb206..0be4b93c 100644 --- a/lua/lazyvim/plugins/extras/lang/python.lua +++ b/lua/lazyvim/plugins/extras/lang/python.lua @@ -58,11 +58,9 @@ return { setup = { [ruff] = function() LazyVim.lsp.on_attach(function(client, _) - if client.name == ruff then - -- Disable hover in favor of Pyright - client.server_capabilities.hoverProvider = false - end - end) + -- Disable hover in favor of Pyright + client.server_capabilities.hoverProvider = false + end, ruff) end, }, }, diff --git a/lua/lazyvim/plugins/extras/lang/yaml.lua b/lua/lazyvim/plugins/extras/lang/yaml.lua index b34e2a26..9a3aadb8 100644 --- a/lua/lazyvim/plugins/extras/lang/yaml.lua +++ b/lua/lazyvim/plugins/extras/lang/yaml.lua @@ -60,10 +60,8 @@ return { -- Neovim < 0.10 does not have dynamic registration for formatting if vim.fn.has("nvim-0.10") == 0 then LazyVim.lsp.on_attach(function(client, _) - if client.name == "yamlls" then - client.server_capabilities.documentFormattingProvider = true - end - end) + client.server_capabilities.documentFormattingProvider = true + end, "yamlls") end end, },