ahmedkhalf / project.nvim

The superior project management solution for neovim.
Apache License 2.0
1.29k stars 119 forks source link

Make LSP root detection more robust "borrowing" the lspconfig strategy #120

Open hawk78 opened 1 year ago

hawk78 commented 1 year ago

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.

hawk78 commented 1 year ago

Looks like this project is unmaintained, is anyone here?

ahmedkhalf commented 1 year ago

Not much time to maintain it, will have a look when I get the chance to

gmerzu commented 10 months ago

Hello,

I can confirm this PR targets important issue.

The easiest way to reproduce: 1) Open two files from different projects 2) 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 for vim.lsp.buf_get_clients()[X].workspace_folders

With this fix, there is no such issue on my side.