I'm writing a Language Server Protocol (LSP) server for use with neovim, and I'd like to test it against VSCode to make sure I've got all the details right and that I'm not accidentally encoding any neovim-isms into my implementation.
The current docs suggest I should write a VSCode extension to act as the client to my server, but I'm not really interested in putting that much effort into a platform I won't use.
In neovim I can just define a CLI command and the filetype it corresponds to and hit go:
let g:LanguageClient_serverCommands = {
\ 'rust': ['rustup', 'run', 'nightly', 'rls'],
\ 'javascript': ['/opt/javascript-typescript-langserver/lib/language-server-stdio.js'],
\ }
does something similar exist in Visual Studio code?
It takes little effort to write a language client in VSCode, here is how I did it:
Once the client starts, it starts the server and starts the initialization conversation, the client watches all the important events on VSCode (document opened/closed/modified, Ctrl+space,...) and sends the right requests/notifications to the server