Compartilhar via


ILanguageClient Interface

Definição

Interface que representa um cliente de linguagem que se conecta a um servidor de linguagem baseado em protocolo de servidor de linguagem.

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

Comentários

Uma sequência normal de ativação para o ILanguageClient segue este padrão:

  1. O Visual Studio chama OnLoadedAsync(),
  2. A extensão chama e aguarda InvokeAsync<TEventArgs>(AsyncEventHandler<TEventArgs>, Object, TEventArgs) o StartAsync evento antes de retornar de OnLoadedAsync(),
  3. O Visual Studio chama e aguarda ActivateAsync(CancellationToken) antes de retornar de OnLoadedAsync(),
  4. A extensão inicia o servidor LSP e retorna um Connection para o Visual Studio,
  5. O Visual Studio inicia a inicialização assíncrona do servidor usando as mensagens LSP "inicializar" e "inicializadas",
  6. O Visual Studio conclui a manipulação de StartAsync eventos,
  7. A extensão conclui a OnLoadedAsync() execução,
  8. O Visual Studio chama o OnServerInitializedAsync() método depois que as mensagens LSP "inicializadas" e "inicializadas" são trocadas (ou o OnServerInitializeFailedAsync(ILanguageClientInitializationInfo) método em caso de falha).

Propriedades

ConfigurationSections

Obtém os nomes da seção de configuração para o cliente de idioma. Isso poderá ser nulo se o cliente de idioma não fornecer configurações.

FilesToWatch

Obtém a lista de nomes de arquivo a watch para alterações. As alterações serão enviadas ao servidor por meio da mensagem 'workspace/didChangeWatchedFiles'. Os arquivos a watch devem estar no workspace ativo atual. Os nomes de arquivo podem ser especificados como caminhos relativos para o arquivo exato ou como padrões glob seguindo o padrão em .gitignore ver https://www.kernel.org/pub/software/scm/git/docs/gitignore.html arquivos.

InitializationOptions

Obtém o objeto de opções de inicialização que o cliente deseja enviar quando a mensagem 'initialize' é enviada. Isso poderá ser nulo se o cliente não precisar de opções de inicialização personalizadas.

Name

Obtém o nome do cliente de idioma (exibido para o usuário).

ShowNotificationOnInitializeFailed

Obtém um valor que indica se uma bolha de notificação é mostrada quando o servidor de idioma não é inicializado.

Métodos

ActivateAsync(CancellationToken)

Esse método é chamado pelo Visual Studio para notificar a extensão de que o servidor LSP deve ser iniciado.

OnLoadedAsync()

Esse método é chamado pelo Visual Studio para notificar a extensão de que o cliente de linguagem foi carregado. A extensão pode iniciar o servidor LSP imediatamente ou aguardar o início da ação do usuário. Para iniciar a chamada do servidor e aguardar InvokeAsync<TEventArgs>(AsyncEventHandler<TEventArgs>, Object, TEventArgs) o StartAsync evento antes de retornar desse método.

OnServerInitializedAsync()

Esse método é chamado pelo Visual Studio para notificar a extensão de que o servidor LSP foi inicializado: mensagens LSP "inicializar" e "inicializadas" foram trocadas.

OnServerInitializeFailedAsync(Exception)

Sinaliza a extensão que o servidor de idioma falhou ao inicializar.

OnServerInitializeFailedAsync(ILanguageClientInitializationInfo)

Esse método é chamado pelo Visual Studio para notificar a extensão de que a inicialização do servidor LSP falhou.

Eventos

StartAsync

Evento assíncrono para indicar ao Visual Studio que o servidor deve ser iniciado chamando ActivateAsync(CancellationToken). Se o servidor já tiver sido iniciado, esse evento será ignorado.

StopAsync

Evento assíncrono para indicar ao Visual Studio que o servidor deve ser interrompido enviando uma solicitação de "desligamento" LSP. Se o servidor não for iniciado, esse evento será ignorado.

Aplica-se a