diff options
| author | kraftwerk28 <kefirchik3@gmail.com> | 2021-04-05 13:52:19 +0300 |
|---|---|---|
| committer | kraftwerk28 <kefirchik3@gmail.com> | 2021-04-05 13:56:38 +0300 |
| commit | a39b3109e04c26c4b926460815f655570e27896d (patch) | |
| tree | bd949c02d1a9b724f454a96d3f120148b510f331 /lua/lspconfig.lua | |
| parent | [docgen] Update CONFIG.md (diff) | |
| download | nvim-lspconfig-a39b3109e04c26c4b926460815f655570e27896d.tar nvim-lspconfig-a39b3109e04c26c4b926460815f655570e27896d.tar.gz nvim-lspconfig-a39b3109e04c26c4b926460815f655570e27896d.tar.bz2 nvim-lspconfig-a39b3109e04c26c4b926460815f655570e27896d.tar.lz nvim-lspconfig-a39b3109e04c26c4b926460815f655570e27896d.tar.xz nvim-lspconfig-a39b3109e04c26c4b926460815f655570e27896d.tar.zst nvim-lspconfig-a39b3109e04c26c4b926460815f655570e27896d.zip | |
Restart clients attached to current buffer if none specified
Diffstat (limited to 'lua/lspconfig.lua')
| -rw-r--r-- | lua/lspconfig.lua | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/lua/lspconfig.lua b/lua/lspconfig.lua index 4c9fbda4..ba8660ec 100644 --- a/lua/lspconfig.lua +++ b/lua/lspconfig.lua @@ -45,15 +45,20 @@ function M._root._setup() }; LspRestart = { function(client_id) - if client_id then - local client = vim.lsp.get_client_by_id(tonumber(client_id)) - if client then - local client_name = client.name - client.stop() - vim.defer_fn(function() - require('lspconfig')[client_name].autostart() - end, 500) - end + local clients + + if client_id == nil then + clients = vim.lsp.buf_get_clients(0) + else + clients = {vim.lsp.get_client_by_id(tonumber(client_id))} + end + + for _, client in ipairs(clients) do + local client_name = client.name + client.stop() + vim.defer_fn(function() + require('lspconfig')[client_name].autostart() + end, 500) end end; "-nargs=? -complete=customlist,v:lua.lsp_get_active_client_ids"; |
