microsoft/language-server-protocol

What's the correct way for an LSP server to know whether a command is available on the client?

Open

#642 opened on 2018年12月17日

GitHub で見る
 (43 comments) (1 reaction) (0 assignees)HTML (956 forks)batch import
commandsfeature-requesthelp wanted

Repository metrics

Stars
 (12,810 stars)
PR merge metrics
 (平均マージ 19h 29m) (30d で 12 merged PRs)

説明

I'm implementing some refactors where the server needs some input from the user. In order to get input from the user I'm going to need to trigger a command on the client that can ask the user for input (for example, by having a command in the client extension that can call window.showInputBox or some equiv).

However, I can't find a way for the client to advertise (or server to know) which commands are supported on the client.

What's the expected way to handle this? Although I can document the commands that a client needs to implement for specific functionality in the server, that's not very compatible - if I wanted to add new requirements in the future, I'd need to know if the connected client supports them.

コントリビューターガイド