diff options
| author | Michael Lingelbach <m.j.lbach@gmail.com> | 2021-04-05 10:35:13 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-04-05 10:35:13 -0700 |
| commit | 676c26d88b5b80fb68e6813a45dcf40556adf1e5 (patch) | |
| tree | bd949c02d1a9b724f454a96d3f120148b510f331 /lua | |
| parent | [docgen] Update CONFIG.md (diff) | |
| parent | Restart clients attached to current buffer if none specified (diff) | |
| download | nvim-lspconfig-676c26d88b5b80fb68e6813a45dcf40556adf1e5.tar nvim-lspconfig-676c26d88b5b80fb68e6813a45dcf40556adf1e5.tar.gz nvim-lspconfig-676c26d88b5b80fb68e6813a45dcf40556adf1e5.tar.bz2 nvim-lspconfig-676c26d88b5b80fb68e6813a45dcf40556adf1e5.tar.lz nvim-lspconfig-676c26d88b5b80fb68e6813a45dcf40556adf1e5.tar.xz nvim-lspconfig-676c26d88b5b80fb68e6813a45dcf40556adf1e5.tar.zst nvim-lspconfig-676c26d88b5b80fb68e6813a45dcf40556adf1e5.zip | |
Merge pull request #823 from kraftwerk28/master
Restart clients attached to current buffer if none specified
Diffstat (limited to '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"; |
