summaryrefslogtreecommitdiff
path: root/lua/lvim/lsp/templates.lua
diff options
context:
space:
mode:
authorCPea <[email protected]>2022-06-26 19:08:54 +0700
committerGitHub <[email protected]>2022-06-26 14:08:54 +0200
commitc6431a09c7e6541dba46a7f7e6db7a34d0d00092 (patch)
tree0b3835e07f37519cca9ab6b9cc676b5aaca94fe3 /lua/lvim/lsp/templates.lua
parent12f8798bb05038a6269c6e50fe20c53ac47f75e3 (diff)
feat(lsp): add option to override default `nvim-lsp-installer` settings (#2698)
Diffstat (limited to 'lua/lvim/lsp/templates.lua')
-rw-r--r--lua/lvim/lsp/templates.lua10
1 files changed, 9 insertions, 1 deletions
diff --git a/lua/lvim/lsp/templates.lua b/lua/lvim/lsp/templates.lua
index 09f82430..578362a7 100644
--- a/lua/lvim/lsp/templates.lua
+++ b/lua/lvim/lsp/templates.lua
@@ -17,12 +17,20 @@ end
local skipped_filetypes = lvim.lsp.automatic_configuration.skipped_filetypes
local skipped_servers = lvim.lsp.automatic_configuration.skipped_servers
+local ensure_installed_servers = lvim.lsp.installer.setup.ensure_installed
+
+---Check if we should skip generating an ftplugin file based on the server_name
+---@param server_name string name of a valid language server
+local function should_skip(server_name)
+ -- ensure_installed_servers should take priority over skipped_servers
+ return vim.tbl_contains(skipped_servers, server_name) and not vim.tbl_contains(ensure_installed_servers, server_name)
+end
---Generates an ftplugin file based on the server_name in the selected directory
---@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(skipped_servers, server_name) then
+ if should_skip(server_name) then
return
end