diff options
| author | Raphael <glepnir@neovim.pro> | 2022-12-26 20:50:30 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-12-26 20:50:30 +0800 |
| commit | a63d2c75c6880d45209baff596939343e8a431fd (patch) | |
| tree | 480d0b99b721f266a9352c35d3a133a2a3d95a69 /lua/lspconfig/configs.lua | |
| parent | fix: use client config capabilities to check server support workspae (#2354) (diff) | |
| download | nvim-lspconfig-a63d2c75c6880d45209baff596939343e8a431fd.tar nvim-lspconfig-a63d2c75c6880d45209baff596939343e8a431fd.tar.gz nvim-lspconfig-a63d2c75c6880d45209baff596939343e8a431fd.tar.bz2 nvim-lspconfig-a63d2c75c6880d45209baff596939343e8a431fd.tar.lz nvim-lspconfig-a63d2c75c6880d45209baff596939343e8a431fd.tar.xz nvim-lspconfig-a63d2c75c6880d45209baff596939343e8a431fd.tar.zst nvim-lspconfig-a63d2c75c6880d45209baff596939343e8a431fd.zip | |
fix: check workspace after client initial (#2356)
* fix: some server need restart
* fix: improve
* fix: async start client
* fix: remove session file
* fix: improve logic
* fix: improve logic
* fix: check the root already in workspace
* fix: improve check
* fix: add start_new_client into the if branch
Diffstat (limited to 'lua/lspconfig/configs.lua')
| -rw-r--r-- | lua/lspconfig/configs.lua | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/lua/lspconfig/configs.lua b/lua/lspconfig/configs.lua index 71d553c9..a4eb8351 100644 --- a/lua/lspconfig/configs.lua +++ b/lua/lspconfig/configs.lua @@ -132,8 +132,7 @@ function configs.__newindex(t, config_name, config_def) return end local pseudo_root = #bufname == 0 and uv.cwd() or util.path.dirname(util.path.sanitize(bufname)) - local client_id = M.manager.add(pseudo_root, true) - lsp.buf_attach_client(api.nvim_get_current_buf(), client_id) + M.manager.add(pseudo_root, true, api.nvim_get_current_buf()) end end @@ -235,7 +234,6 @@ function configs.__newindex(t, config_name, config_def) return end - local id local root_dir local bufname = api.nvim_buf_get_name(bufnr) @@ -253,14 +251,10 @@ function configs.__newindex(t, config_name, config_def) end if root_dir then - id = manager.add(root_dir, false) + manager.add(root_dir, false, bufnr) elseif config.single_file_support then local pseudo_root = #bufname == 0 and uv.cwd() or util.path.dirname(buf_path) - id = manager.add(pseudo_root, true) - end - - if id then - lsp.buf_attach_client(bufnr, id) + manager.add(pseudo_root, true, bufnr) end end |
