diff --git a/modules/home-manager/cli/neovim/default.nix b/modules/home-manager/cli/neovim/default.nix index 1528061..280936a 100644 --- a/modules/home-manager/cli/neovim/default.nix +++ b/modules/home-manager/cli/neovim/default.nix @@ -38,6 +38,7 @@ in terraform-lsp tflint + vscode-langservers-extracted yaml-language-server # Formatters @@ -136,13 +137,18 @@ in p.dockerfile p.hcl p.helm + p.javascript p.latex p.lua p.llvm p.markdown p.markdown_inline + p.nix + p.puppet p.python + p.ruby p.terraform + p.typescript p.vim p.yaml ]) diff --git a/modules/home-manager/cli/neovim/files/lspconfig.lua b/modules/home-manager/cli/neovim/files/lspconfig.lua index 84fb126..ba64719 100644 --- a/modules/home-manager/cli/neovim/files/lspconfig.lua +++ b/modules/home-manager/cli/neovim/files/lspconfig.lua @@ -1,8 +1,20 @@ local lspconfig = require('lspconfig') +local capabilities = require("cmp_nvim_lsp").default_capabilities() + +lspconfig.bashls.setup { + capabilities = capabilities, +} + +lspconfig.clangd.setup { + capabilities = capabilities, +} + +lspconfig.eslint.setup{ + capabilities = capabilities, +} -lspconfig.bashls.setup {} -lspconfig.clangd.setup {} lspconfig.helm_ls.setup{ + capabilities = capabilities, settings = { ['helm-ls'] = { logLevel = "info", @@ -12,20 +24,27 @@ lspconfig.helm_ls.setup{ additionalValuesFilesGlobPattern = "values*.yaml" } }, - yamlls = { - enabled = false, - } } } + lspconfig.lua_ls.setup { - single_file_support = true, - flags = { - debounce_text_changes = 150, - } + capabilities = capabilities, + single_file_support = true, + flags = { + debounce_text_changes = 150, + } } -lspconfig.marksman.setup{} -lspconfig.nil_ls.setup {} + +lspconfig.marksman.setup{ + capabilities = capabilities, +} + +lspconfig.nil_ls.setup { + capabilities = capabilities, +} + lspconfig.pylsp.setup { + capabilities = capabilities, settings = { pylsp = { plugins = { @@ -36,14 +55,23 @@ lspconfig.pylsp.setup { } } } -lspconfig.terraformls.setup{} -lspconfig.tflint.setup{} + +lspconfig.terraformls.setup{ + capabilities = capabilities, +} + +lspconfig.tflint.setup{ + capabilities = capabilities, +} + lspconfig.yamlls.setup{ + capabilities = capabilities, settings = { yaml = { schemas = { ["https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/v1.30.0/all.json"] = {"k8s/**/*.yaml", "cluster/**/*.yaml",}, ["https://taskfile.dev/schema.json"] = {"**/Taskfile.*", "**/taskfile.*",}, + ["https://json.schemastore.org/lefthook.json"] = {"**/lefthook.*",}, }, }, },