Condividi tramite


ILanguageClient Interfaccia

Definizione

Interfaccia che rappresenta un client linguistico che si connette a un server di linguaggio basato su linguaggio basato su linguaggio.

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

Commenti

Sequenza normale di attivazione per il ILanguageClient modello seguente:

  1. Chiamate OnLoadedAsync()di Visual Studio ,
  2. L'estensione chiama e attende InvokeAsync<TEventArgs>(AsyncEventHandler<TEventArgs>, Object, TEventArgs) l'evento StartAsync prima di restituire da OnLoadedAsync(),
  3. Chiamate e attese ActivateAsync(CancellationToken) di Visual Studio prima di restituire da OnLoadedAsync(),
  4. L'estensione avvia il server LSP e restituisce un oggetto Connection a Visual Studio,
  5. Visual Studio avvia l'inizializzazione asincrona del server usando i messaggi LSP "inizializza" e "inizializzati",
  6. Visual Studio completa la gestione degli StartAsync eventi,
  7. L'estensione completa l'esecuzione OnLoadedAsync() ,
  8. Visual Studio chiama il OnServerInitializedAsync() metodo dopo il messaggio LSP "inizializzato" e "inizializzato" (o il OnServerInitializeFailedAsync(ILanguageClientInitializationInfo) metodo in caso di errore).

Proprietà

ConfigurationSections

Ottiene i nomi delle sezioni di configurazione per il client di lingua. Questo può essere Null se il client della lingua non fornisce impostazioni.

FilesToWatch

Ottiene l'elenco dei nomi di file da watch per le modifiche. Le modifiche verranno inviate al server tramite messaggio 'workspace/didChangeWatchedFiles'. I file da watch devono trovarsi nell'area di lavoro attiva corrente. I nomi dei file possono essere specificati come percorsi relativi al file esatto o come modelli glob che seguono lo standard in .gitignore vedere https://www.kernel.org/pub/software/scm/git/docs/gitignore.html i file.

InitializationOptions

Ottiene l'oggetto opzioni di inizializzazione che il client vuole inviare quando viene inviato il messaggio "inizializza". Questo può essere Null se il client non necessita di opzioni di inizializzazione personalizzate.

Name

Ottiene il nome del client di lingua (visualizzato all'utente).

ShowNotificationOnInitializeFailed

Ottiene un valore che indica se viene visualizzata una bolla di notifica quando il server di lingua non riesce a inizializzare.

Metodi

ActivateAsync(CancellationToken)

Questo metodo viene chiamato da Visual Studio per notificare all'estensione che deve essere avviato il server LSP.

OnLoadedAsync()

Questo metodo viene chiamato da Visual Studio per notificare all'estensione che il client del linguaggio è stato caricato. L'estensione può avviare immediatamente il server LSP o attendere l'avvio dell'azione dell'utente. Per avviare la chiamata al server e attendere InvokeAsync<TEventArgs>(AsyncEventHandler<TEventArgs>, Object, TEventArgs) l'evento StartAsync prima di restituire da questo metodo.

OnServerInitializedAsync()

Questo metodo viene chiamato da Visual Studio per notificare all'estensione che il server LSP è stato inizializzato: i messaggi "inizializza" e "inizializzati" del provider di servizi di rete sono stati scambiati.

OnServerInitializeFailedAsync(Exception)

Segnala l'estensione che il server della lingua non è riuscito a inizializzare.

OnServerInitializeFailedAsync(ILanguageClientInitializationInfo)

Questo metodo viene chiamato da Visual Studio per notificare all'estensione che l'inizializzazione del server LSP non è riuscita.

Eventi

StartAsync

Evento asincrono per indicare a Visual Studio che il server deve essere avviato chiamando ActivateAsync(CancellationToken). Se il server è già stato avviato, questo evento verrà ignorato.

StopAsync

Evento asincrono per indicare a Visual Studio che il server deve essere arrestato inviando una richiesta di "arresto" di LSP. Se il server non viene avviato, questo evento verrà ignorato.

Si applica a