jupyterlab-monaco icon indicating copy to clipboard operation
jupyterlab-monaco copied to clipboard

LSP (language server protocol) integration

Open gnestor opened this issue 6 years ago • 4 comments

Here we can discuss the future plans for LSP integration 👍

WIP PR: https://github.com/jupyterlab/jupyterlab-monaco/pull/12

gnestor avatar Jul 11 '18 16:07 gnestor

Since JupyterCon is coming to New York soon, which is where I am, we had had thoughts of doing work on the hacking day after the conference. It could be a good opportunity for us to get together to push this integration, perhaps using pr #12 as a basis.

juliandolby avatar Jul 24 '18 22:07 juliandolby

I think this is a good first step (to plan on having folks gather to work on this at the JupyterCon Sprints). Pasting some general notes from elsewhere:

A few thoughts about LSP integration:

  • We probably want to have a jupyter notebook server extension that can act as a proxy between specific LSPs and the frontend, through a standard web socket protocol and URLs. I am thinking of new endpoints like /lsp/python or /lsp/R and something that can return the list of available and running LSP servers.
  • A new set of classes on jupyterlab services that has a well designed client to those endpoints and which returns the actual client LSP objects that Monaco needs.

ellisonbg avatar Jul 27 '18 00:07 ellisonbg

These two projects both offer monaco editors in JupyterLab with LSP support:

https://github.com/theia-ide/theia https://github.com/R-Brain/jupyterlab

gnestor avatar Sep 14 '18 01:09 gnestor

I have created a PR to the enhancement-proposals repo regarding LSP support in jupyterlab-monaco: https://github.com/jupyter/enhancement-proposals/pull/26

gnestor avatar Oct 24 '18 18:10 gnestor