fix(root): dont use single-file lsps for root detection. use workspaces only

This commit is contained in:
Folke Lemaitre
2023-10-15 22:38:15 +02:00
parent 8af7309c7e
commit 6f88b8b36f

View File

@ -32,13 +32,12 @@ function M.detectors.lsp(buf)
end
local roots = {} ---@type string[]
for _, client in pairs(Util.lsp.get_clients({ bufnr = buf })) do
-- only check workspace folders, since we're not interested in clients
-- running in single file mode
local workspace = client.config.workspace_folders
for _, ws in pairs(workspace or {}) do
roots[#roots + 1] = vim.uri_to_fname(ws.uri)
end
if client.config.root_dir then
roots[#roots + 1] = client.config.root_dir
end
end
return vim.tbl_filter(function(path)
path = Util.norm(path)