From 7ee242ab9aca63f81ceb14d0b148e42e6ebfa054 Mon Sep 17 00:00:00 2001 From: Valeriy Filippov Date: Wed, 11 Mar 2026 11:45:41 +0300 Subject: [PATCH] Add helm LSP --- nvim/lsp/helmls.lua | 13 +++++++++ nvim/lua/config/lsp.lua | 53 ++++++++++++++++++------------------ nvim/lua/plugins/helm-ls.lua | 8 ++++++ nvim/lua/plugins/mason.lua | 1 + 4 files changed, 49 insertions(+), 26 deletions(-) create mode 100644 nvim/lsp/helmls.lua create mode 100644 nvim/lua/plugins/helm-ls.lua diff --git a/nvim/lsp/helmls.lua b/nvim/lsp/helmls.lua new file mode 100644 index 0000000..2129386 --- /dev/null +++ b/nvim/lsp/helmls.lua @@ -0,0 +1,13 @@ +-- https://github.com/neovim/nvim-lspconfig/blob/master/lsp/helm_ls.lua +return { + cmd = { "helm_ls", "serve" }, + filetypes = { "helm", "yaml.helm-values" }, + root_markers = { "Chart.yaml" }, + capabilities = { + workspace = { + didChangeWatchedFiles = { + dynamicRegistration = true, + }, + }, + }, +} diff --git a/nvim/lua/config/lsp.lua b/nvim/lua/config/lsp.lua index bcca2e5..f7da6f7 100644 --- a/nvim/lua/config/lsp.lua +++ b/nvim/lua/config/lsp.lua @@ -1,31 +1,32 @@ vim.lsp.enable({ - "dockerls", - "gitlabcils", - "luals", - "terraformls", - "yamlls" + "dockerls", + "gitlabcils", + "helmls", + "luals", + "terraformls", + "yamlls", }) vim.diagnostic.config({ - virtual_lines = true, - -- virtual_text = true, - underline = true, - update_in_insert = false, - severity_sort = true, - float = { - border = "rounded", - source = true, - }, - signs = { - text = { - [vim.diagnostic.severity.ERROR] = "󰅚 ", - [vim.diagnostic.severity.WARN] = "󰀪 ", - [vim.diagnostic.severity.INFO] = "󰋽 ", - [vim.diagnostic.severity.HINT] = "󰌶 ", - }, - numhl = { - [vim.diagnostic.severity.ERROR] = "ErrorMsg", - [vim.diagnostic.severity.WARN] = "WarningMsg", - }, - }, + virtual_lines = true, + -- virtual_text = true, + underline = true, + update_in_insert = false, + severity_sort = true, + float = { + border = "rounded", + source = true, + }, + signs = { + text = { + [vim.diagnostic.severity.ERROR] = "󰅚 ", + [vim.diagnostic.severity.WARN] = "󰀪 ", + [vim.diagnostic.severity.INFO] = "󰋽 ", + [vim.diagnostic.severity.HINT] = "󰌶 ", + }, + numhl = { + [vim.diagnostic.severity.ERROR] = "ErrorMsg", + [vim.diagnostic.severity.WARN] = "WarningMsg", + }, + }, }) diff --git a/nvim/lua/plugins/helm-ls.lua b/nvim/lua/plugins/helm-ls.lua new file mode 100644 index 0000000..6008a10 --- /dev/null +++ b/nvim/lua/plugins/helm-ls.lua @@ -0,0 +1,8 @@ +-- https://github.com/qvalentin/helm-ls.nvim +return { + "qvalentin/helm-ls.nvim", + ft = "helm", + opts = { + -- leave empty or see below + }, +} diff --git a/nvim/lua/plugins/mason.lua b/nvim/lua/plugins/mason.lua index 637e2d5..46ebf72 100644 --- a/nvim/lua/plugins/mason.lua +++ b/nvim/lua/plugins/mason.lua @@ -23,6 +23,7 @@ return { ensure_installed = { "docker-language-server", -- https://github.com/docker/docker-language-server "gitlab-ci-ls", -- https://github.com/alesbrelih/gitlab-ci-ls + "helm-ls", -- https://github.com/mrjosh/helm-ls "lua-language-server", -- https://github.com/luals/lua-language-server "prettier", -- https://github.com/prettier/prettier "prettierd", -- https://github.com/prettier/prettier