project.nvim
project.nvim copied to clipboard
Make LSP root detection more robust "borrowing" the lspconfig strategy
The current implementation does not always get the right path for some LPSs. E.g. lua_ls.
This implementation strategy comes from lspconfig itself, but does not add new any dependency.
The current implementation that this request replaces is using deprecated API in vim.lsp.
Looks like this project is unmaintained, is anyone here?
Not much time to maintain it, will have a look when I get the chance to
Hello,
I can confirm this PR targets important issue.
The easiest way to reproduce:
- Open two files from different projects
- When switching between the buffers, root dir is the same, since
vim.lsp.buf_get_clients()[X].config.root_dir
returns the same. As mentioned here, need to follow lspconfig strategy and check forvim.lsp.buf_get_clients()[X].workspace_folders
With this fix, there is no such issue on my side.