Microsoft が提供する LSP を使用する場合、クライアントで必要な json データを生成してサーバーに送信する方法を教えてください。そして、サーバーから応答されたjsonデータをどのように処理しますか?
公式ドキュメントを読みましたが、方法が見つかりませんでした。私がやりたいのは、「ホバー」で表示するのではなく、関数定義のテキスト文字列を取得することだけです。
VSCode は、実装されたサーバーに情報を送信します。たとえば、プラグインがクライアント側で開始されるとすぐに、初期化要求がサーバーに送信されます。
次に、サーバーは、クライアントから送信された JSON ペイロードを処理し、 LSP 仕様に準拠した特定の応答を返すロジックを構築する必要があります。VSCode でトレースをオンにして、クライアントとサーバーによって送受信されるメッセージを確認することをお勧めします。lsp-sample の場合、次の設定を行うことができます:"languageServerExample.trace.server": "verbose"
でpackage.json
トレースを有効にします。
関数定義テキスト文字列に関するあなたの質問に関しては、クライアント コードで何らかの形でこれが必要であると仮定しています(?)。この場合、ホバー ハンドラーで関数定義文字列を抽出する必要があります。サーバーはその情報を送信しています。