ILanguageClient 인터페이스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
언어 서버 프로토콜 기반 언어 서버에 연결하는 언어 클라이언트를 나타내는 인터페이스입니다.
public interface class ILanguageClient
public interface ILanguageClient
type ILanguageClient = interface
Public Interface ILanguageClient
설명
에 대한 ILanguageClient 일반 정품 인증 시퀀스는 다음 패턴을 따릅니다.
- Visual Studio는 를 호출합니다 OnLoadedAsync().
- 확장은 에서 OnLoadedAsync()반환하기 전에 이벤트를 호출하고 대기합니다.InvokeAsync<TEventArgs>(AsyncEventHandler<TEventArgs>, Object, TEventArgs)StartAsync
- Visual Studio는 에서 OnLoadedAsync()반환하기 전에 를 호출하고 대기합니다ActivateAsync(CancellationToken).
- 확장은 LSP 서버를 시작하고 를 Visual Studio에 반환 Connection 합니다.
- Visual Studio는 "initialize" 및 "initialized" LSP 메시지를 사용하여 서버를 비동기적으로 초기화하기 시작합니다.
- Visual Studio는 StartAsync 이벤트 처리를 완료합니다.
- 확장은 실행을 완료합니다 OnLoadedAsync() .
- Visual Studio는 OnServerInitializedAsync() "초기화" 및 "초기화된" LSP 메시지가 교환된 후 메서드를 호출합니다(또는 OnServerInitializeFailedAsync(ILanguageClientInitializationInfo) 오류가 발생한 경우 메서드).
속성
ConfigurationSections |
언어 클라이언트의 구성 섹션 이름을 가져옵니다. 언어 클라이언트가 설정을 제공하지 않는 경우 null일 수 있습니다. |
FilesToWatch |
변경 내용을 watch 파일 이름 목록을 가져옵니다. 변경 내용은 'workspace/didChangeWatchedFiles' 메시지를 통해 서버로 전송됩니다. watch 파일은 현재 활성 작업 영역 아래에 있어야 합니다. 파일 이름은 정확한 파일에 대한 상대 경로 또는 .gitignore see https://www.kernel.org/pub/software/scm/git/docs/gitignore.html 파일의 표준에 따른 glob 패턴으로 지정할 수 있습니다. |
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 "초기화" 및 "초기화된" 메시지가 교환되었습니다. |
OnServerInitializeFailedAsync(Exception) |
언어 서버를 초기화하지 못했다는 신호를 확장에 보냅니다. |
OnServerInitializeFailedAsync(ILanguageClientInitializationInfo) |
이 메서드는 Visual Studio에서 LSP 서버 초기화에 실패했음을 확장에 알리기 위해 호출됩니다. |
이벤트
StartAsync |
Visual Studio에 서버를 호출 ActivateAsync(CancellationToken)하여 시작해야 함을 나타내는 비동기 이벤트입니다. 서버가 이미 시작된 경우 이 이벤트는 무시됩니다. |
StopAsync |
Visual Studio에 LSP "종료" 요청을 전송하여 서버를 중지해야 함을 나타내는 비동기 이벤트입니다. 서버가 시작되지 않으면 이 이벤트는 무시됩니다. |