go to definition doesn't work well across workspace, if function is defined in workspace A, and being called from workspace B, then it seems not possible to jump from B to find the definition in A. I wonder if this is a bug or design defect or I miss anything to make it work.
This is a shortcoming of the implementation. We didn't have time to implement multi-root as a single language server before the feature landed in the mainline VS Code build. It's on our backlog to consolidate the servers, but it requires some additional refactoring and we wanted to see how popular the feature is before prioritizing that work above other features and bug fixes.
I see, thanks for all the work you guy have done.
anyway, IMO this should be the #1 issue to fix, otherwise multi root workspace basically not very helpful comparing to open multiple windows for each workspace.
Actually, I think I spoke to soon. I should be able to make it work by forwarding the request to all open servers. I'll need to see if vs code will remove duplicate results though.
Can you add the path to the function definition to the browse.path in workspace B? We allow paths outside the workspace.
@sean-mcmanus, yes that would work too but seems like more config work than we should ask people to do in the general case.
@bobbrow just wonder any plan on this issue? it causes very bad experience for multi root workspace..
The correct fix for this is not something we plan to do in the immediate future do to other high priority issues, but we might be able to put in a temporary patch for this to improve the experience in the near term. I'm adding the Backlog tag so that I don't lose track of this issue.
I would really love this feature. The codebase I am working with has multiple "projects" (think in main code and several libraries), and I can't afford not to have this :(
Hi @kmalloc . We believe this scenario has been addressed by recent multi-root improvements. Could you try this out with a recent version of the extension? If you are still seeing an issue, let us know, and we can reopen this.
Hi @kmalloc . We believe this scenario has been addressed by recent multi-root improvements. Could you try this out with a recent version of the extension? If you are still seeing an issue, let us know, and we can reopen this.
yes, it works now, thanks for the hardwork.
Most helpful comment
I would really love this feature. The codebase I am working with has multiple "projects" (think in main code and several libraries), and I can't afford not to have this :(