|author||Jonah Graham <email@example.com>||Mon Aug 31 22:04:44 2020 -0400|
|committer||Jonah Graham <firstname.lastname@example.org>||Mon Aug 31 22:14:30 2020 -0400|
Bug 564070: Handle exception on launch/attach command Previously a launch or attach would cause an exception, but the thenCombineAsync that is next would be waiting for the initialized to also be ready, however that was never going to happen because of the exception on the launch/attach. Therefore, if the launch/attach finishes exceptionally, mark initialized as finishing exceptionally so that the sequence does not hang. Change-Id: I3c23fb4fd970475b94d8444b412de355491282dd
Target audience are Eclipse plugin developers or Language developers willing to integrate a language which ships a Language Server or Debug Adapter into Eclipse IDE. End-users can also take advantage of this as LSP4E also defines a way to bind Eclipse IDE to existing language servers from UI.
Install it into Eclipse IDE, or add it to your target-platform using one of this p2 repository:
LSP4E mostly ships extensions to the Generic Editor proposal for Eclipse Platform Text. But those classes can be reused in any editor or other extensions.
At the moment, it provides regular JFace/Platform Text classes for:
Support for the Debug Adapter Protocol includes usual debug operations (breakpoints, step forward, step into, view variable value, evaluate expression, change variable value...) in the Platform Debug framework and its related UI components.
Examples of integration contain:
All those examples are already good for usage as they provide advanced edition features, and great for showcase of the LSP4E project.
Contributions are highly welcome. See how
The Language Server protocol specification is an open-source project.
As the Language Server Protocol doesn't include support for syntax highlighting, most adopters of LSP4E usually pair it with the Eclipse TM4E project to provide Syntax Highlighting according to TextMate grammars.
Possible integration with Docker images as language-server are made possible thanks to Eclipse Docker Tools, which are part of the Eclipse LinuxTools project.
This has been initiated during the EclipseCon France 2016 Unconference. Some initial documentation is still available (although it may not be up to date).