Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[lsp4e-dev] Support for any Document (not only IFile): progress and call for assistance

Hi all,

I've worked on enabling support for any IDocument, even for those that are external and not part of the workspace ( https://bugs.eclipse.org/bugs/show_bug.cgi?id=508488 )
I introduced a new API to achieve that: LanguageServiceAccessor.getLanguageServers(document, filter) .
In https://git.eclipse.org/c/lsp4e/lsp4e.git/commit/?id=a4df4854d5d12de9f458401809c5d7a51a42bc7e , you can see how this is now used by LSBasedHover to enable Hover on an external file, the HoverTest now includes a new test covering this.

I think this is going to be a major achievement in LSP4E. The new "API" can replace many other pieces of code which are so great, and we'll be able to simplify a few things with it. I think once this new flow is used for all operations, and code in clean and everyone is fine with the new methods, then we can try to go for a 1.0 release.

However, we're not quite there yet, and it'd be great if some other contributors could invest a bit in it ASAP. The amount of operations that need to change is relatively high (~20 classes to adapt) and the work can very well distribute.
So if some of you could "take" some existing operations, write a test for the external file case, and adapt the class doing the job to use the new LanguageServiceAccessor.getLanguageServers(document, filter) method, that'd be very profitable.
I've already covered hover, documentLink, definition and am working on completion. If you with to take any other operation, please comment on the bug when you get started to avoid duplicate work.

Thanks in advance.

--
Mickael Istria
Eclipse IDE developer, for Red Hat Developers

Back to the top