From de01a37cb68c3ddfb64e9576df0878a4373a6dcb Mon Sep 17 00:00:00 2001 From: Peter Benjamin Date: Thu, 7 Mar 2024 02:55:58 -0800 Subject: [PATCH] feat(lang): add support for helm chart templates (#2273) * feat(lang): add support for helm chart templates * fix(helm): stop yamlls and disable autostart * fix(helm): stop yaml & docker compose lsp on helm file types Revert disabling `autostart` since that kills the LSP globally even when opening a standard yaml file, like GitHub Workflow file. * fix(helm): remove docker compose lsp overrides Since docker compose LSP does not seem to be triggered or started by opening *.yaml helm files, the config overrides were removed to simplify Helm config. * fix(helm): ensure mason installs helm lsp --- lua/lazyvim/plugins/extras/lang/helm.lua | 30 ++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 lua/lazyvim/plugins/extras/lang/helm.lua diff --git a/lua/lazyvim/plugins/extras/lang/helm.lua b/lua/lazyvim/plugins/extras/lang/helm.lua new file mode 100644 index 00000000..8af1b512 --- /dev/null +++ b/lua/lazyvim/plugins/extras/lang/helm.lua @@ -0,0 +1,30 @@ +require("lazyvim.util").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 { + { "towolf/vim-helm", ft = "helm" }, + { + "neovim/nvim-lspconfig", + opts = { + servers = { + yamlls = {}, + helm_ls = {}, + }, + }, + }, + { + "williamboman/mason.nvim", + opts = function(_, opts) + vim.list_extend(opts.ensure_installed, { + "helm-ls", + }) + end, + }, +}