diff options
Diffstat (limited to 'lua/lvim/lsp')
| -rw-r--r-- | lua/lvim/lsp/manager.lua | 10 | ||||
| -rw-r--r-- | lua/lvim/lsp/templates.lua | 3 | 
2 files changed, 9 insertions, 4 deletions
| diff --git a/lua/lvim/lsp/manager.lua b/lua/lvim/lsp/manager.lua index 0b11c175..a8544803 100644 --- a/lua/lvim/lsp/manager.lua +++ b/lua/lvim/lsp/manager.lua @@ -26,8 +26,8 @@ local function resolve_config(name, user_config)      capabilities = require("lvim.lsp").common_capabilities(),    } -  local status_ok, custom_config = pcall(require, "lvim.lsp/providers/" .. name) -  if status_ok then +  local has_custom_provider, custom_config = pcall(require, "lvim/lsp/providers/" .. name) +  if has_custom_provider then      Log:debug("Using custom configuration for requested server: " .. name)      config = vim.tbl_deep_extend("force", config, custom_config)    end @@ -70,7 +70,11 @@ function M.setup(server_name, user_config)    if server_available and ensure_installed(requested_server) then      requested_server:setup(config)    else -    require("lspconfig")[server_name].setup(config) +    -- since it may not be installed, don't attempt to configure the LSP unless there is a custom provider +    local has_custom_provider, _ = pcall(require, "lvim/lsp/providers/" .. server_name) +    if has_custom_provider then +      require("lspconfig")[server_name].setup(config) +    end    end  end diff --git a/lua/lvim/lsp/templates.lua b/lua/lvim/lsp/templates.lua index 3478f4fb..33c75a6e 100644 --- a/lua/lvim/lsp/templates.lua +++ b/lua/lvim/lsp/templates.lua @@ -19,7 +19,8 @@ end  ---@param server_name string name of a valid language server, e.g. pyright, gopls, tsserver, etc.  ---@param dir string the full path to the desired directory  function M.generate_ftplugin(server_name, dir) -  if vim.tbl_contains(lvim.lsp.override, server_name) then +  local has_custom_provider, _ = pcall(require, "lvim/lsp/providers/" .. server_name) +  if vim.tbl_contains(lvim.lsp.override, server_name) and not has_custom_provider then      return    end | 
