Bagikan melalui


ILanguageClient Antarmuka

Definisi

Antarmuka yang mewakili klien bahasa yang terhubung ke server bahasa berbasis protokol sever bahasa.

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

Keterangan

Urutan aktivasi normal untuk ILanguageClient mengikuti pola ini:

  1. Panggilan OnLoadedAsync()Visual Studio ,
  2. Ekstensi memanggil dan menunggu InvokeAsync<TEventArgs>(AsyncEventHandler<TEventArgs>, Object, TEventArgs) peristiwa StartAsync sebelum kembali dari OnLoadedAsync(),
  3. Panggilan dan tunggu ActivateAsync(CancellationToken) Visual Studio sebelum kembali dari OnLoadedAsync(),
  4. Ekstensi memulai server LSP dan mengembalikan Connection ke Visual Studio,
  5. Visual Studio mulai menginisialisasi server secara asinkron menggunakan pesan LSP "inisialisasi" dan "diinisialisasi",
  6. Visual Studio menyelesaikan StartAsync penanganan peristiwa,
  7. Ekstensi menyelesaikan OnLoadedAsync() eksekusi,
  8. Visual Studio memanggil metode setelah pesan LSP "inisialisasi OnServerInitializedAsync() " dan "diinisialisasi" ditukar (atau OnServerInitializeFailedAsync(ILanguageClientInitializationInfo) metode jika terjadi kegagalan).

Properti

ConfigurationSections

Mendapatkan nama bagian konfigurasi untuk klien bahasa. Ini mungkin null jika klien bahasa tidak menyediakan pengaturan.

FilesToWatch

Mendapatkan daftar nama file untuk watch perubahan. Perubahan akan dikirim ke server melalui pesan 'workspace/didChangeWatchedFiles'. File yang akan watch harus berada di bawah ruang kerja aktif saat ini. Nama file dapat ditentukan sebagai jalur relatif ke file yang tepat, atau sebagai pola glob mengikuti standar di .gitignore lihat https://www.kernel.org/pub/software/scm/git/docs/gitignore.html file.

InitializationOptions

Mendapatkan objek opsi inisialisasi yang ingin dikirim klien saat pesan 'inisialisasi' dikirim. Ini mungkin null jika klien tidak memerlukan opsi inisialisasi kustom.

Name

Mendapatkan nama klien bahasa (ditampilkan kepada pengguna).

ShowNotificationOnInitializeFailed

Mendapatkan nilai yang menunjukkan apakah peragaan gelembung pemberitahuan ditampilkan saat server bahasa gagal menginisialisasi.

Metode

ActivateAsync(CancellationToken)

Metode ini dipanggil oleh Visual Studio untuk memberi tahu ekstensi bahwa server LSP harus dimulai.

OnLoadedAsync()

Metode ini dipanggil oleh Visual Studio untuk memberi tahu ekstensi bahwa klien bahasa telah dimuat. Ekstensi dapat segera memulai server LSP, atau menunggu tindakan pengguna dimulai. Untuk memulai panggilan server dan menunggu InvokeAsync<TEventArgs>(AsyncEventHandler<TEventArgs>, Object, TEventArgs) peristiwa StartAsync sebelum kembali dari metode ini.

OnServerInitializedAsync()

Metode ini dipanggil oleh Visual Studio untuk memberi tahu ekstensi bahwa server LSP telah diinisialisasi: Pesan LSP "menginisialisasi" dan "diinisialisasi" telah ditukar.

OnServerInitializeFailedAsync(Exception)

Menandakan ekstensi yang gagal diinisialisasi oleh server bahasa.

OnServerInitializeFailedAsync(ILanguageClientInitializationInfo)

Metode ini dipanggil oleh Visual Studio untuk memberi tahu ekstensi bahwa inisialisasi server LSP telah gagal.

Acara

StartAsync

Peristiwa asinkron untuk menunjukkan kepada Visual Studio bahwa server harus dimulai dengan memanggil ActivateAsync(CancellationToken). Jika server sudah dimulai, kejadian ini akan diabaikan.

StopAsync

Peristiwa asinkron untuk menunjukkan kepada Visual Studio bahwa server harus dihentikan dengan mengirim permintaan "matikan" LSP. Jika server tidak dimulai, kejadian ini akan diabaikan.

Berlaku untuk