aboutsummaryrefslogtreecommitdiffstats
path: root/lua/nvim-lsp-installer/server.lua
diff options
context:
space:
mode:
authorWilliam Boman <william@redwill.se>2021-08-23 06:53:11 +0200
committerGitHub <noreply@github.com>2021-08-23 06:53:11 +0200
commit564f03e39b02254919868850dd8089d018bd0e4e (patch)
tree319e88bebd4028549df9b22078768ed61b4be0cc /lua/nvim-lsp-installer/server.lua
parentexport proper location of haskell language servers (#60) (diff)
downloadmason-564f03e39b02254919868850dd8089d018bd0e4e.tar
mason-564f03e39b02254919868850dd8089d018bd0e4e.tar.gz
mason-564f03e39b02254919868850dd8089d018bd0e4e.tar.bz2
mason-564f03e39b02254919868850dd8089d018bd0e4e.tar.lz
mason-564f03e39b02254919868850dd8089d018bd0e4e.tar.xz
mason-564f03e39b02254919868850dd8089d018bd0e4e.tar.zst
mason-564f03e39b02254919868850dd8089d018bd0e4e.zip
eslintls: defer registering server definition with lspconfig (#62)
Resolves #61.
Diffstat (limited to 'lua/nvim-lsp-installer/server.lua')
-rw-r--r--lua/nvim-lsp-installer/server.lua7
1 files changed, 7 insertions, 0 deletions
diff --git a/lua/nvim-lsp-installer/server.lua b/lua/nvim-lsp-installer/server.lua
index edc80253..5aa75825 100644
--- a/lua/nvim-lsp-installer/server.lua
+++ b/lua/nvim-lsp-installer/server.lua
@@ -31,6 +31,9 @@ M.Server.__index = M.Server
-- Use this to defer setting up server specific things until they're actually
-- needed, like custom commands.
--
+-- @field pre_setup (function) An optional function to be executed prior to calling lspconfig's setup().
+-- Use this to defer setting up server specific things until they're actually needed.
+--
function M.Server:new(opts)
return setmetatable({
name = opts.name,
@@ -39,10 +42,14 @@ function M.Server:new(opts)
_default_options = opts.default_options,
_pre_install_check = opts.pre_install_check,
_post_setup = opts.post_setup,
+ _pre_setup = opts.pre_setup,
}, M.Server)
end
function M.Server:setup(opts)
+ if self._pre_setup then
+ self._pre_setup()
+ end
-- We require the lspconfig server here in order to do it as late as possible.
-- The reason for this is because once a lspconfig server has been imported, it's
-- automatically registered with lspconfig and causes it to show up in :LspInfo and whatnot.