diff options
| author | Tobias Hunger <tobias.hunger@gmail.com> | 2022-02-20 12:26:28 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-02-20 12:26:28 +0100 |
| commit | df741c74dba2b7287194a6da1c113d606a709c24 (patch) | |
| tree | 8e13c714920ed3160286d655387149ae964a5f15 /lua/nvim-lsp-installer/servers | |
| parent | run autogen_metadata.lua (diff) | |
| download | mason-df741c74dba2b7287194a6da1c113d606a709c24.tar mason-df741c74dba2b7287194a6da1c113d606a709c24.tar.gz mason-df741c74dba2b7287194a6da1c113d606a709c24.tar.bz2 mason-df741c74dba2b7287194a6da1c113d606a709c24.tar.lz mason-df741c74dba2b7287194a6da1c113d606a709c24.tar.xz mason-df741c74dba2b7287194a6da1c113d606a709c24.tar.zst mason-df741c74dba2b7287194a6da1c113d606a709c24.zip | |
add slint_lsp (#492)
Diffstat (limited to 'lua/nvim-lsp-installer/servers')
| -rw-r--r-- | lua/nvim-lsp-installer/servers/init.lua | 1 | ||||
| -rw-r--r-- | lua/nvim-lsp-installer/servers/slint_lsp/init.lua | 37 |
2 files changed, 38 insertions, 0 deletions
diff --git a/lua/nvim-lsp-installer/servers/init.lua b/lua/nvim-lsp-installer/servers/init.lua index eabf3e46..2e5d4278 100644 --- a/lua/nvim-lsp-installer/servers/init.lua +++ b/lua/nvim-lsp-installer/servers/init.lua @@ -108,6 +108,7 @@ local CORE_SERVERS = Data.set_of { "salt_ls", "scry", "serve_d", + "slint_lsp", "solang", "solargraph", "solc", diff --git a/lua/nvim-lsp-installer/servers/slint_lsp/init.lua b/lua/nvim-lsp-installer/servers/slint_lsp/init.lua new file mode 100644 index 00000000..2cdfbd63 --- /dev/null +++ b/lua/nvim-lsp-installer/servers/slint_lsp/init.lua @@ -0,0 +1,37 @@ +local server = require "nvim-lsp-installer.server" +local Data = require "nvim-lsp-installer.data" +local std = require "nvim-lsp-installer.installers.std" +local path = require "nvim-lsp-installer.path" +local platform = require "nvim-lsp-installer.platform" +local process = require "nvim-lsp-installer.process" +local context = require "nvim-lsp-installer.installers.context" + +local coalesce, when = Data.coalesce, Data.when + +return function(name, root_dir) + local archive_name = coalesce( + when(platform.is_linux and platform.arch == "x64", "slint-lsp-linux.tar.gz"), + when(platform.is_win and platform.arch == "x64", "slint-lsp-windows.zip") + ) + return server.Server:new { + name = name, + root_dir = root_dir, + homepage = "https://slint-ui.com/", + languages = { "slint" }, + installer = { + context.use_github_release_file("slint-ui/slint", archive_name), + context.capture(function(ctx) + if platform.is_win then + return std.unzip_remote(ctx.github_release_file) + else + return std.untargz_remote(ctx.github_release_file) + end + end), + }, + default_options = { + cmd_env = { + PATH = process.extend_path { path.concat { root_dir, "slint-lsp" } }, + }, + }, + } +end |
