diff options
| author | RiN <hi@rin.rocks> | 2022-03-12 03:35:10 +0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-03-11 21:35:10 +0100 |
| commit | a049c201279c7e48e1a3a68acb5a15a306671551 (patch) | |
| tree | 05846f8b45f121d779cc5a3695adef46af021478 /lua/nvim-lsp-installer | |
| parent | Add Dhall LSP (#512) (diff) | |
| download | mason-a049c201279c7e48e1a3a68acb5a15a306671551.tar mason-a049c201279c7e48e1a3a68acb5a15a306671551.tar.gz mason-a049c201279c7e48e1a3a68acb5a15a306671551.tar.bz2 mason-a049c201279c7e48e1a3a68acb5a15a306671551.tar.lz mason-a049c201279c7e48e1a3a68acb5a15a306671551.tar.xz mason-a049c201279c7e48e1a3a68acb5a15a306671551.tar.zst mason-a049c201279c7e48e1a3a68acb5a15a306671551.zip | |
feat(reason_ls): add reason_ls for ReasonML (#528)
Diffstat (limited to 'lua/nvim-lsp-installer')
| -rw-r--r-- | lua/nvim-lsp-installer/_generated/filetype_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/reason_ls/init.lua | 40 |
4 files changed, 45 insertions, 1 deletions
diff --git a/lua/nvim-lsp-installer/_generated/filetype_map.lua b/lua/nvim-lsp-installer/_generated/filetype_map.lua index 735fe849..16736921 100644 --- a/lua/nvim-lsp-installer/_generated/filetype_map.lua +++ b/lua/nvim-lsp-installer/_generated/filetype_map.lua @@ -107,7 +107,7 @@ return { ql = { "codeqlls" }, r = { "r_language_server" }, razor = { "tailwindcss" }, - reason = { "ocamlls", "ocamllsp", "tailwindcss" }, + reason = { "ocamlls", "ocamllsp", "reason_ls", "tailwindcss" }, rescript = { "rescriptls", "tailwindcss" }, rmd = { "r_language_server" }, rnoweb = { "ltex" }, diff --git a/lua/nvim-lsp-installer/_generated/metadata.lua b/lua/nvim-lsp-installer/_generated/metadata.lua index dc76327c..29e93a15 100644 --- a/lua/nvim-lsp-installer/_generated/metadata.lua +++ b/lua/nvim-lsp-installer/_generated/metadata.lua @@ -217,6 +217,9 @@ return { r_language_server = { filetypes = { "r", "rmd" } }, + reason_ls = { + filetypes = { "reason" } + }, remark_ls = { filetypes = { "markdown" } }, diff --git a/lua/nvim-lsp-installer/servers/init.lua b/lua/nvim-lsp-installer/servers/init.lua index 2c727644..a7b295f4 100644 --- a/lua/nvim-lsp-installer/servers/init.lua +++ b/lua/nvim-lsp-installer/servers/init.lua @@ -103,6 +103,7 @@ local CORE_SERVERS = Data.set_of { "pyright", "quick_lint_js", "r_language_server", + "reason_ls", "remark_ls", "rescriptls", "rnix", diff --git a/lua/nvim-lsp-installer/servers/reason_ls/init.lua b/lua/nvim-lsp-installer/servers/reason_ls/init.lua new file mode 100644 index 00000000..5cb94119 --- /dev/null +++ b/lua/nvim-lsp-installer/servers/reason_ls/init.lua @@ -0,0 +1,40 @@ +local server = require "nvim-lsp-installer.server" +local platform = require "nvim-lsp-installer.platform" +local path = require "nvim-lsp-installer.path" +local std = require "nvim-lsp-installer.installers.std" +local context = require "nvim-lsp-installer.installers.context" +local Data = require "nvim-lsp-installer.data" +local process = require "nvim-lsp-installer.process" + +local coalesce, when = Data.coalesce, Data.when + +return function(name, root_dir) + local archive_name = coalesce( + when(platform.is_mac, "rls-macos"), + when(platform.is_linux, "rls-linux"), + when(platform.is_win, "rls-windows") + ) + return server.Server:new { + name = name, + root_dir = root_dir, + languages = { "reason" }, + homepage = "https://github.com/jaredly/reason-language-server", + installer = { + context.use_github_release_file("jaredly/reason-language-server", ("%s.zip"):format(archive_name)), + context.capture(function(ctx) + return std.unzip_remote(ctx.github_release_file) + end), + context.capture(function() + return std.rename(archive_name, "reason") + end), + context.receipt(function(receipt, ctx) + receipt:with_primary_source(receipt.github_release_file(ctx)) + end), + }, + default_options = { + cmd_env = { + PATH = process.extend_path { path.concat { root_dir, "reason" } }, + }, + }, + } +end |
