diff options
| -rw-r--r-- | README.md | 4 | ||||
| -rw-r--r-- | lua/nvim-lsp-installer/_generated/filetype_map.lua | 5 | ||||
| -rw-r--r-- | lua/nvim-lsp-installer/_generated/language_autocomplete_map.lua | 2 | ||||
| -rw-r--r-- | lua/nvim-lsp-installer/_generated/metadata.lua | 3 | ||||
| -rw-r--r-- | lua/nvim-lsp-installer/servers/init.lua | 1 | ||||
| -rw-r--r-- | lua/nvim-lsp-installer/servers/spectral/init.lua | 28 |
6 files changed, 40 insertions, 3 deletions
@@ -148,6 +148,7 @@ lsp_installer.settings({ | Angular | `angularls` | | Ansible | `ansiblels` | | Arduino | `arduino_language_server` | +| AsyncAPI | `spectral` | | Bash | `bashls` | | Bicep | `bicep` | | C | `ccls` | @@ -182,8 +183,8 @@ lsp_installer.settings({ | Haskell | `hls` | | JSON | `jsonls` | | Java | `jdtls` | -| JavaScript | `tsserver` | | JavaScript | `quick_lint_js` | +| JavaScript | `tsserver` | | Jsonnet | `jsonnet_ls` | | Kotlin | `kotlin_language_server` | | LaTeX | `ltex` | @@ -191,6 +192,7 @@ lsp_installer.settings({ | Lua | `sumneko_lua` | | OCaml | `ocamlls` | | Objective C | `ccls` | +| OpenAPI | `spectral` | | PHP | `intelephense` | | PHP | `phpactor` | | Powershell | `powershell_es` | diff --git a/lua/nvim-lsp-installer/_generated/filetype_map.lua b/lua/nvim-lsp-installer/_generated/filetype_map.lua index 22e655e9..1700b140 100644 --- a/lua/nvim-lsp-installer/_generated/filetype_map.lua +++ b/lua/nvim-lsp-installer/_generated/filetype_map.lua @@ -47,7 +47,7 @@ return { javascript = { "denols", "ember", "eslint", "quick_lint_js", "rome", "stylelint_lsp", "tailwindcss", "tsserver" }, ["javascript.jsx"] = { "denols", "eslint", "tsserver" }, javascriptreact = { "denols", "eslint", "graphql", "rome", "stylelint_lsp", "tailwindcss", "tsserver" }, - json = { "jsonls", "rome" }, + json = { "jsonls", "rome", "spectral" }, jsonnet = { "jsonnet_ls" }, kotlin = { "kotlin_language_server" }, leaf = { "tailwindcss" }, @@ -105,9 +105,10 @@ return { wxss = { "stylelint_lsp" }, xml = { "lemminx" }, xsd = { "lemminx" }, - yaml = { "ansiblels", "yamlls" }, + yaml = { "ansiblels", "spectral", "yamlls" }, ["yaml.ansible"] = { "ansiblels" }, ["yaml.docker-compose"] = { "yamlls" }, + yml = { "spectral" }, zig = { "zls" }, zir = { "zls" } }
\ No newline at end of file diff --git a/lua/nvim-lsp-installer/_generated/language_autocomplete_map.lua b/lua/nvim-lsp-installer/_generated/language_autocomplete_map.lua index bfa8d5c3..21fa8145 100644 --- a/lua/nvim-lsp-installer/_generated/language_autocomplete_map.lua +++ b/lua/nvim-lsp-installer/_generated/language_autocomplete_map.lua @@ -1,6 +1,7 @@ -- THIS FILE IS GENERATED. DO NOT EDIT MANUALLY. -- stylua: ignore start return { + asyncapi = { "spectral" }, c = { "ccls", "clangd" }, ["c#"] = { "csharp_ls", "omnisharp" }, ["c++"] = { "ccls", "clangd" }, @@ -13,6 +14,7 @@ return { latex = { "ltex", "texlab" }, lua = { "sumneko_lua" }, ["objective-c"] = { "ccls" }, + openapi = { "spectral" }, php = { "intelephense", "phpactor" }, python = { "jedi_language_server", "pylsp", "pyright" }, ruby = { "solargraph", "sorbet" }, diff --git a/lua/nvim-lsp-installer/_generated/metadata.lua b/lua/nvim-lsp-installer/_generated/metadata.lua index a150227e..84302655 100644 --- a/lua/nvim-lsp-installer/_generated/metadata.lua +++ b/lua/nvim-lsp-installer/_generated/metadata.lua @@ -172,6 +172,9 @@ return { sorbet = { filetypes = { "ruby" } }, + spectral = { + filetypes = { "yaml", "json", "yml" } + }, sqlls = { filetypes = { "sql", "mysql" } }, diff --git a/lua/nvim-lsp-installer/servers/init.lua b/lua/nvim-lsp-installer/servers/init.lua index 0dd8c30c..2f2ee023 100644 --- a/lua/nvim-lsp-installer/servers/init.lua +++ b/lua/nvim-lsp-installer/servers/init.lua @@ -88,6 +88,7 @@ local CORE_SERVERS = Data.set_of { "solang", "solargraph", "sorbet", + "spectral", "sqlls", "sqls", "stylelint_lsp", diff --git a/lua/nvim-lsp-installer/servers/spectral/init.lua b/lua/nvim-lsp-installer/servers/spectral/init.lua new file mode 100644 index 00000000..0c46be10 --- /dev/null +++ b/lua/nvim-lsp-installer/servers/spectral/init.lua @@ -0,0 +1,28 @@ +local server = require "nvim-lsp-installer.server" +local npm = require "nvim-lsp-installer.installers.npm" +local std = require "nvim-lsp-installer.installers.std" +local installers = require "nvim-lsp-installer.installers" +local context = require "nvim-lsp-installer.installers.context" +local path = require "nvim-lsp-installer.path" + +return function(name, root_dir) + return server.Server:new { + name = name, + root_dir = root_dir, + languages = { "openapi", "asyncapi" }, + homepage = "https://stoplight.io/open-source/spectral/", + installer = { + std.git_clone "https://github.com/stoplightio/vscode-spectral", + npm.install(), + installers.branch_context { + context.set_working_dir "server", + npm.install(), + }, + installers.always_succeed(npm.run "compile"), + context.set_working_dir "server", + }, + default_options = { + cmd = { "node", path.concat { root_dir, "out", "server.js" }, "--stdio" }, + }, + } +end |
