diff options
| author | William Boman <william@redwill.se> | 2021-04-04 18:37:59 +0200 |
|---|---|---|
| committer | William Boman <william@redwill.se> | 2021-04-04 18:37:59 +0200 |
| commit | 4fbf2d0b0595f6de4e1debde67bbeeec280b3e89 (patch) | |
| tree | 4a7ae6493876a458024b65005d222182cb1b9f94 /lua/nvim-lsp-installer/installers/solargraph.lua | |
| parent | update README and change get_installed_servers() return value (#1) (diff) | |
| download | mason-4fbf2d0b0595f6de4e1debde67bbeeec280b3e89.tar mason-4fbf2d0b0595f6de4e1debde67bbeeec280b3e89.tar.gz mason-4fbf2d0b0595f6de4e1debde67bbeeec280b3e89.tar.bz2 mason-4fbf2d0b0595f6de4e1debde67bbeeec280b3e89.tar.lz mason-4fbf2d0b0595f6de4e1debde67bbeeec280b3e89.tar.xz mason-4fbf2d0b0595f6de4e1debde67bbeeec280b3e89.tar.zst mason-4fbf2d0b0595f6de4e1debde67bbeeec280b3e89.zip | |
use same lsp server names as lspconfig
Diffstat (limited to 'lua/nvim-lsp-installer/installers/solargraph.lua')
| -rw-r--r-- | lua/nvim-lsp-installer/installers/solargraph.lua | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/lua/nvim-lsp-installer/installers/solargraph.lua b/lua/nvim-lsp-installer/installers/solargraph.lua new file mode 100644 index 00000000..c902632b --- /dev/null +++ b/lua/nvim-lsp-installer/installers/solargraph.lua @@ -0,0 +1,36 @@ +local installer = require('nvim-lsp-installer.installer') +local capabilities = require('nvim-lsp-installer.capabilities') + +local root_dir = installer.get_server_root_path('ruby') + +local install_cmd = [[ +wget -O solargraph.tar $(curl -s https://api.github.com/repos/castwide/solargraph/tags | grep 'tarball_url' | cut -d\" -f4 | head -n1); +rm -rf solargraph; +mkdir solargraph; +tar -xzf solargraph.tar -C solargraph --strip-components 1; +rm solargraph.tar; +cd solargraph; + +bundle install --without development --path vendor/bundle; + +echo '#!/usr/bin/env bash' > solargraph; +echo 'cd "$(dirname "$0")" || exit' >> solargraph; +echo 'bundle exec solargraph $*' >> solargraph; + +chmod +x solargraph; +]] + +return installer.create_lsp_config_installer { + name = "solargraph", + root_dir = root_dir, + install_cmd = install_cmd, + pre_install = function () + if vim.fn.executable('bundle') ~= 1 then + error("bundle not installed") + end + end, + default_options = { + cmd = { root_dir .. '/solargraph/solargraph', 'stdio' }, + capabilities = capabilities.create(), + } +} |
