From 321957d0bd73a7784e9738ebf0cae1a108c0c8f6 Mon Sep 17 00:00:00 2001 From: Michael Lingelbach Date: Thu, 4 Feb 2021 00:16:59 -0800 Subject: Automatically reattach to buffers after reloading --- lua/lspconfig/configs.lua | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'lua') diff --git a/lua/lspconfig/configs.lua b/lua/lspconfig/configs.lua index a56993d0..13b92b17 100644 --- a/lua/lspconfig/configs.lua +++ b/lua/lspconfig/configs.lua @@ -87,10 +87,12 @@ function configs.__newindex(t, config_name, config_def) M.cmd = config.cmd -- In the case of a reload, close existing things. + local reload = false if M.manager then for _, client in ipairs(M.manager.clients()) do client.stop(true) end + reload = true M.manager = nil end @@ -173,6 +175,11 @@ function configs.__newindex(t, config_name, config_def) M.manager = manager M.make_config = make_config + if reload and not (config.autostart == false) then + for _, bufnr in ipairs(vim.api.nvim_list_bufs()) do + manager.try_add_wrapper(bufnr) + end + end end function M._setup_buffer(client_id, bufnr) -- cgit v1.2.3-70-g09d2