From aa32ac00b972cba2a99e78108cdf20b338926b47 Mon Sep 17 00:00:00 2001 From: Matt Leong Date: Sun, 24 Oct 2021 16:27:25 -0700 Subject: [PATCH] fix(lsp): install if defined on config --- lua/cosmic/lsp/providers/efm.lua | 10 +++------- lua/cosmic/lsp/providers/init.lua | 10 +++++----- 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/lua/cosmic/lsp/providers/efm.lua b/lua/cosmic/lsp/providers/efm.lua index 7254c60..c671972 100644 --- a/lua/cosmic/lsp/providers/efm.lua +++ b/lua/cosmic/lsp/providers/efm.lua @@ -61,11 +61,8 @@ formatters.defaults = { local function is_formatter_disabled(formatter) if config.lsp and config.lsp.servers and config.lsp.servers.efm and config.lsp.servers.efm.disable_formatters then - for i in pairs(config.lsp.servers.efm.disable_formatters) do - local disabled = config.lsp.servers.efm.disable_formatters[i] - if disabled == formatter then - return true - end + if vim.tbl_contains(config.lsp.servers.efm.disable_formatters, formatter) then + return true end end return false @@ -74,8 +71,7 @@ end local languages = {} for formatter, filetypes in pairs(formatters.defaults) do if not is_formatter_disabled(formatter) then - for i in pairs(filetypes) do - local filetype = filetypes[i] + for _, filetype in pairs(filetypes) do languages[filetype] = languages[filetype] or {} table.insert(languages[filetype], formatters[formatter]) end diff --git a/lua/cosmic/lsp/providers/init.lua b/lua/cosmic/lsp/providers/init.lua index bf5c2f6..b9bc2df 100644 --- a/lua/cosmic/lsp/providers/init.lua +++ b/lua/cosmic/lsp/providers/init.lua @@ -33,11 +33,11 @@ local disabled_servers = {} if config.lsp and config.lsp.servers then for config_server, config_opt in pairs(config.lsp.servers) do if config_opt == false then - for server in pairs(requested_servers) do - if (requested_servers[server] == config_server) then - table.insert(disabled_servers, requested_servers[server]) - end - end + table.insert(disabled_servers, config_server) + elseif not vim.tbl_contains(requested_servers, config_server) then + -- add additonally defined servers to be installed + -- todo: how to handle non-default server opts? + table.insert(requested_servers, config_server) end end end