diff options
| author | William Boman <william@redwill.se> | 2021-08-26 17:01:44 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-08-26 17:01:44 +0200 |
| commit | f989567a9a9ea0f46e502f2d2271604b1cb89f4c (patch) | |
| tree | 0963dc7092bafd55a85d7dda2f8b4764656a1f21 | |
| parent | fix: add typescript dependency to tsserver (#69) (diff) | |
| download | mason-f989567a9a9ea0f46e502f2d2271604b1cb89f4c.tar mason-f989567a9a9ea0f46e502f2d2271604b1cb89f4c.tar.gz mason-f989567a9a9ea0f46e502f2d2271604b1cb89f4c.tar.bz2 mason-f989567a9a9ea0f46e502f2d2271604b1cb89f4c.tar.lz mason-f989567a9a9ea0f46e502f2d2271604b1cb89f4c.tar.xz mason-f989567a9a9ea0f46e502f2d2271604b1cb89f4c.tar.zst mason-f989567a9a9ea0f46e502f2d2271604b1cb89f4c.zip | |
add g:lsp_installer_allow_federated_servers flag (#67)
| -rw-r--r-- | doc/nvim-lsp-installer.txt | 25 | ||||
| -rw-r--r-- | lua/nvim-lsp-installer/servers/vscode-langservers-extracted/init.lua | 2 | ||||
| -rw-r--r-- | plugin/nvim-lsp-installer.vim | 1 |
3 files changed, 27 insertions, 1 deletions
diff --git a/doc/nvim-lsp-installer.txt b/doc/nvim-lsp-installer.txt index c77a952c..ba3e52d8 100644 --- a/doc/nvim-lsp-installer.txt +++ b/doc/nvim-lsp-installer.txt @@ -79,6 +79,31 @@ Prints all installed language servers. ============================================================================== +OPTIONS *nvim-lsp-installer-options* + + *g:lsp_installer_allow_federated_servers* + *vim.g.lsp_installer_allow_federated_servers* +VimL: g:lsp_installer_allow_federated_servers +Lua: vim.g.lsp_installer_allow_federated_servers + + Type: |Boolean| + Default: `true` (`1`) + + Whether to allow LSP servers to share the same installation directory. + For some servers, this effectively causes more than one server to be + installed (and uninstalled) when executing `:LspInstall` and + `:LspUninstall`. + + For example, installing `cssls` will also install both `jsonls` and `html` + (and the other ways around), as these all share the same underlying + package. + + Example: > + let g:lsp_installer_allow_federated_servers = 0 + vim.g.lsp_installer_allow_federated_servers = false +< + +============================================================================== Lua module: nvim-lsp-installer *lsp_installer* *lsp_installer.get_available_servers()* diff --git a/lua/nvim-lsp-installer/servers/vscode-langservers-extracted/init.lua b/lua/nvim-lsp-installer/servers/vscode-langservers-extracted/init.lua index 3609b40c..53ba4815 100644 --- a/lua/nvim-lsp-installer/servers/vscode-langservers-extracted/init.lua +++ b/lua/nvim-lsp-installer/servers/vscode-langservers-extracted/init.lua @@ -6,7 +6,7 @@ local root_dir = server.get_server_root_path "vscode-langservers-extracted" return function(name, executable) return server.Server:new { name = name, - root_dir = root_dir, + root_dir = vim.g.lsp_installer_allow_federated_servers and root_dir or ("%s_%s"):format(root_dir, name), installer = npm.packages { "vscode-langservers-extracted" }, default_options = { cmd = { npm.executable(root_dir, executable), "--stdio" }, diff --git a/plugin/nvim-lsp-installer.vim b/plugin/nvim-lsp-installer.vim index 6e9e192d..1293b7fb 100644 --- a/plugin/nvim-lsp-installer.vim +++ b/plugin/nvim-lsp-installer.vim @@ -1,5 +1,6 @@ if exists('g:loaded_nvim_lsp_installer') | finish | endif let g:loaded_nvim_lsp_installer = 1 +let g:lsp_installer_allow_federated_servers = get(g:, "lsp_installer_allow_federated_servers", 1) let s:save_cpo = &cpo set cpo&vim |
