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

Documentation here is lacking

Open rnmalonebb opened this issue 1 year ago • 4 comments

Integrating with this library has been very challenging due to a distinct lack of documentation on how to create a language client.

The README immediately lists off multiple libraries that implement it - that's great but we don't need those, we want our own standalone language client wired up to an existing editor instance.

The examples don't even show a monaco-languageclient being created or what the API is, they all use the monaco-editor-wrapper library which does not suit our use case.

All in all, when working with complex subjects like LSP, there is limited resources online with how to implement it. I think with kind of library there needs to be a basic setup guide and API documentation, on top of the existing type declaration files that do very little to guide users on how to integrate with the package.

rnmalonebb avatar Oct 08 '24 12:10 rnmalonebb

Those open-source libraries are only maintained by 2 persons not working on it full-time. There is room for improvements.

We are talking about integrating IDE-like features in one's app, with additional complexity added by the network separating the client and the server.

I think @kaisalmen is already working on a solution to help integrating it (especially the filesystem problem)

Help is welcome, any PR will be considered, feel free to contribute

CGNonofr avatar Oct 08 '24 13:10 CGNonofr

I'll be happy to contribute once I've grasped it!

Another very frustrating issue is the examples use an API for a release candidate not publicly available.

rnmalonebb avatar Oct 08 '24 13:10 rnmalonebb

Another very frustrating issue is the examples use an API for a release candidate not publicly available.

Yes, I know, it will come. I busy with other things and unable to continue the work. I want to update to the latest monaco-vscode-api version first and push out an new next version.

they all use the monaco-editor-wrapper library which does not suit our use case.

There is the bare example: https://github.com/TypeFox/monaco-languageclient/blob/main/packages/examples/src/bare/client.ts It is also mentioned in the README.

There is room for doc improvement. On the other hand, many of the examples pose answers to questions some-one else had in the past. As @CGNonofr said, help is welcome. 🙂

kaisalmen avatar Oct 09 '24 17:10 kaisalmen

@rnmalonebb next.2 versions of the packages are now available

kaisalmen avatar Oct 10 '24 14:10 kaisalmen

I have added the request for better documentation to our enhancement idea discussion: https://github.com/TypeFox/monaco-languageclient/discussions/773

kaisalmen avatar Oct 25 '24 13:10 kaisalmen