Language

ILanguageClient インターフェイス

定義

言語サーバー プロトコル ベースの言語サーバーに接続する言語クライアントを表すインターフェイス。

public interface class ILanguageClient
public interface ILanguageClient
type ILanguageClient = interface
Public Interface ILanguageClient

注釈

の通常のアクティブ化シーケンスは、次の ILanguageClient パターンに従います。

  1. Visual Studio は、 を呼び出します OnLoadedAsync()。
  2. 拡張機能は、 からOnLoadedAsync()戻る前に イベントをStartAsync呼び出して待機しますInvokeAsync<TEventArgs>(AsyncEventHandler<TEventArgs>, Object, TEventArgs)。
  3. から戻る前に Visual Studio が ActivateAsync(CancellationToken) を呼び出して待機します OnLoadedAsync()。
  4. 拡張機能は LSP サーバーを起動し、 を Visual Studio に返します Connection 。
  5. Visual Studio は、"initialize" および "initialize" LSP メッセージを使用してサーバーの非同期初期化を開始します。
  6. Visual Studio でイベント処理が完了します StartAsync 。
  7. 拡張機能によって実行が完了します OnLoadedAsync() 。
  8. Visual Studio は、"initialize" メッセージと "initialize" LSP メッセージが交換された後 (または失敗した場合は メソッド) の後に メソッドをOnServerInitializeFailedAsync(ILanguageClientInitializationInfo)呼び出OnServerInitializedAsync()します。

プロパティ

ConfigurationSections

言語クライアントの構成セクション名を取得します。 言語クライアントが設定を提供しない場合、これは null になる可能性があります。

FilesToWatch

変更をwatchするファイル名の一覧を取得します。 変更は、'workspace/didChangeWatchedFiles' メッセージを介してサーバーに送信されます。 watchするファイルは、現在アクティブなワークスペースの下にある必要があります。 ファイル名は、正確なファイルへの相対パスとして指定することも、.gitignore の標準に従う glob パターンとしてファイルを参照することもできます https://www.kernel.org/pub/software/scm/git/docs/gitignore.html 。

InitializationOptions

"initialize" メッセージの送信時にクライアントが送信する初期化オプション オブジェクトを取得します。 クライアントがカスタム初期化オプションを必要としない場合、これは null になる可能性があります。

Name

言語クライアントの名前を取得します (ユーザーに表示されます)。

ShowNotificationOnInitializeFailed

言語サーバーの初期化に失敗したときに通知バブル ショーを表示するかどうかを示す値を取得します。

メソッド

ActivateAsync(CancellationToken)

このメソッドは、LSP サーバーを起動する必要があることを拡張機能に通知するために Visual Studio によって呼び出されます。

OnLoadedAsync()

このメソッドは、言語クライアントが読み込まれたことを拡張機能に通知するために Visual Studio によって呼び出されます。 拡張機能は、LSP サーバーをすぐに起動するか、ユーザーの操作が開始されるのを待つことができます。 サーバー呼び出しを開始し、このメソッドから戻る前に StartAsync イベントを待機InvokeAsync<TEventArgs>(AsyncEventHandler<TEventArgs>, Object, TEventArgs)します。

OnServerInitializedAsync()

このメソッドは、LSP サーバーが初期化されたことを拡張機能に通知するために Visual Studio によって呼び出されます。LSP "initialize" メッセージと "initialize" メッセージが交換されました。

OnServerInitializeFailedAsync(Exception)

言語サーバーの初期化に失敗したことを拡張機能に通知します。

OnServerInitializeFailedAsync(ILanguageClientInitializationInfo)

このメソッドは、LSP サーバーの初期化に失敗したことを拡張機能に通知するために Visual Studio によって呼び出されます。

イベント

StartAsync

を呼び出 ActivateAsync(CancellationToken)してサーバーを起動する必要があることを Visual Studio に示す非同期イベント。 サーバーが既に起動されている場合、このイベントは無視されます。

StopAsync

LSP "シャットダウン" 要求を送信してサーバーを停止する必要があることを Visual Studio に示す非同期イベント。 サーバーが起動されていない場合、このイベントは無視されます。

適用対象