Udostępnij za pośrednictwem


Informacje o rozszerzalności Programu VisualStudio.Extensibility (wersja zapoznawcza)

VisualStudio.Extensibility to nowa struktura do tworzenia rozszerzeń programu Visual Studio, które koncentrują się głównie na rozszerzeniach, które wybiegają poza procesem ze środowiska IDE w celu zwiększenia wydajności i niezawodności. Oferuje nowoczesny, asynchroniczny interfejs API, który jest usprawniony i starannie zaprojektowany, aby zmaksymalizować produktywność deweloperów. VisualStudio.Extensibility jest aktywnie rozwijane i jest dostępne jako wersja zapoznawcza.

W bieżącej wersji zapoznawczej możesz opracować szeroką gamę rozszerzeń dla programu Visual Studio, w tym między innymi:

  • Tworzenie poleceń
  • Praca z kodem lub tekstem w edytorze
  • Wyświetlanie monitów lub okien dialogowych dla użytkownika
  • Tworzenie wizualizatorów debugera

Rozszerzenie VisualStudio.Extensibility ma na celu rozwiązanie wielu problemów, które deweloperzy doświadczają podczas korzystania z rozszerzeń i pisania ich w programie Visual Studio. Pisanie rozszerzeń przy użyciu rozszerzenia VisualStudio.Extensibility zapewnia następujące korzyści:

  • Zwiększona niezawodność: program Visual Studio pozostaje responsywny i nie ulega awarii, jeśli rozszerzenie zawiesi się.
  • Zmniejszenie złożoności interfejsu API: VisualStudio.Extensibility ma uproszczoną architekturę, spójne interfejsy API i przejrzystą dokumentację.
  • funkcja ładowania na gorąco: program Visual Studio nie musi być uruchamiany ponownie podczas instalowania rozszerzeń.

W końcu będzie można użyć zestawu VISUALStudio.Extensibility SDK do napisania dowolnego rozszerzenia, które można napisać przy użyciu zestawu Visual Studio SDK. Jednak do tego czasu mogą wystąpić sytuacje, w których funkcje potrzebne w rozszerzeniu nie są jeszcze dostępne w programie VisualStudio.Extensibility. W takim przypadku można użyć zestawu VisualStudio.Extensibility SDK razem z zestawem Visual Studio SDK uruchomionym w procesie, aby pokryć wszelkie luki w funkcjach. Aby dowiedzieć się więcej, zobacz rozszerzenia in-proc.

Najnowsze informacje na temat VisualStudio.Extensibility można znaleźć w repozytorium GitHub VSExtensibility, w sekcji ogłoszenia.

Artykuł Opis
Instalowanie programu VisualStudio.Extensibility Pobierz i zainstaluj najnowszą wersję zapoznawcza programu VisualStudio.Extensibility.
Rozpoczynanie pracy Zacznij od szybkich startów dla początkujących i samouczków wprowadzających, jeśli wcześniej nie tworzyłeś żadnego rozszerzenia.
pojęcia dotyczące Utwórz model mentalny sposobu działania zestawu SDK i rozszerzeń.
Przeglądy Dowiedz się więcej, zapoznając się z omówieniem poszczególnych głównych obszarów funkcjonalności.
Przykładów Zapoznaj się z przykładowym kodem demonstrującymi główne funkcje.
dokumentacja interfejsu API Przeglądaj dokumentację API VisualStudio.Extensibility.
Eksperymentalne Interfejsy API i Zmiany Powodujące Niezgodność Dowiedz się więcej o naszym podejściu do stabilnych kontra eksperymentalnych interfejsów API oraz o zmianach niezgodnych z poprzednią wersją.
Znane problemy Wyświetl znane problemy z zestawem VisualStudio.Extensibility SDK.
Tematy zaawansowane Poznaj szczegóły implementacji zestawu VisualStudio.Extensibility SDK.

Instalowanie rozszerzenia VisualStudio.Extensibility

Bieżąca wersja zapoznawcza VisualStudio.Extensibility współpracuje z programem Visual Studio 2022, w wersji 17.9 (zapoznawczej 1) lub nowszej, z koniecznością zainstalowania obciążenia Visual Studio extension development.

Zacznij

Poniższe artykuły ułatwiają zorientowanie się i rozpoczęcie pracy"

Aby dowiedzieć się, jak pracować z programem VisualStudio.Extensibility, zalecamy dokładne zrozumienie programowania asynchronicznego za pomocą asynchronicznego programowania oraz i iniekcji zależności . Ponadto interfejs użytkownika w programie VisualStudio.Extensibility jest oparty na programie Windows Presentation Foundation (WPF), dlatego warto przejrzeć dokumentację WPF.

Pojęcia

Jeśli znasz zestaw Visual Studio SDK, zapoznaj się z tematem Introduction to VisualStudio.Extensibility for VSSDK users( Wprowadzenie do programu VisualStudio.Extensibility dla użytkowników zestawu VSSDK).

Aby utworzyć model mentalny działania rozszerzeń programu Visual Studio, zobacz Części nowego rozszerzenia programu Visual Studio, aby dowiedzieć się więcej o architekturze rozszerzenia. Ponadto możesz przeczytać o wstrzykiwaniu zależności , które służy do udostępniania komponentów między składnikami rozszerzenia.

Aby dowiedzieć się, co jest zawarte w zestawie SDK, zobacz obszary funkcjonalne zestawu SDK.

Kiedy i gdzie powinno pojawić się rozszerzenie w środowisku IDE? Rozszerzenia programu Visual Studio są wyświetlane w środowisku IDE po spełnieniu określonych warunków. Aby kontrolować sposób i czas wyświetlania rozszerzenia w środowisku IDE, zobacz Ograniczenia aktywacji oparte na regułach.

Rozszerzenia programu Visual Studio udostępniają swoje funkcje w programie Visual Studio za pośrednictwem współtworzenia. Aby uzyskać więcej informacji, zobacz Contributions

Dowiedz się więcej o modelu interfejsu użytkownika zdalnego używanym w programie VisualStudio.Extensibility.

Przeglądy

Zapoznaj się z omówieniem obszarów zestawu SDK, które mogą być potrzebne w projektach deweloperskich rozszerzeń.

  • Utwórz polecenia i uwidocznij je użytkownikom w środowisku IDE, zobacz Polecenia.
  • Pracuj z zawartością plików i dokumentów, zobacz Rozszerzenia edytora.
  • Współpracuj z reprezentacją tych dokumentów w pamięci, zobacz Documents.
  • Użyj okna wyjściowego w rozszerzeniu, zobacz Okno wyjściowe.
  • Praca z oknami narzędzi, oknami dokowania w środowisku IDE programu Visual Studio, zobacz Okna narzędzi.
  • Użyj monitów z przyciskami dostosowywalnymi, aby wchodzić w interakcję z użytkownikiem, zobacz Monity użytkownika.
  • Korzystaj z okien dialogowych z niestandardowym interfejsem użytkownika do interakcji. Zobacz Dialogs.
  • Tworzenie niestandardowych wizualizacji danych podczas debugowania, zobacz Debugger Visualizers
  • Wykonywanie zapytań lub modyfikowanie informacji o projektach i rozwiązaniach, zobacz Project Query
  • Definiowanie, odczytywanie i aktualizowanie ustawień, zobacz Ustawienia
  • Praca z serwerami językowymi/dostawcą LSP w celu uzyskania dodatkowej obsługi języka, zobacz Language Server Provider

Przykłady i samouczki

Rozwiązanie programu Visual Studio zawierające wszystkie przykłady można znaleźć na stronie Samples.sln.

Próbka Opis
prosty program obsługi poleceń Demonstruje podstawy pracy z poleceniami. Zobacz również samouczek Tworzenie pierwszego rozszerzenia programu Visual Studio.
Wstaw rozszerzenie identyfikatora GUID Pokazuje, jak wstawić tekst lub kod w edytorze kodu, jak skonfigurować polecenie z określonym warunkiem aktywacji oraz jak używać pliku zasobu do lokalizacji. Zobacz również samouczek Tworzenie prostego rozszerzenia.
Polecenia nadrzędnego Pokazuje, jak utworzyć polecenie, które może być przypisane do różnych aspektów IDE.
selektor dokumentów Pokazuje, jak utworzyć rozszerzenie edytora, które ma zastosowanie tylko do plików pasujących do wzorca ścieżki pliku.
okno danych wyjściowych Pokazuje najbardziej podstawowe użycie okna wyjściowego interfejsu API
Okno narzędzia Pokazuje, jak utworzyć okno narzędzia i wypełnić je zawartością.
Komunikat użytkownika Pokazuje, jak wyświetlić monit dla użytkownika.
okno dialogowe Pokazuje, jak wyświetlić okno dialogowe z niestandardowym interfejsem użytkownika dla użytkownika.
Margines liczby słów Pokazuje, jak utworzyć rozszerzenie marginesu edytora, które wyświetla liczbę wyrazów w dokumencie.
linter Markdown Pokazuje, jak wiele składników może współdziałać w ramach rozszerzenia i jak można rozszerzyć różne obszary programu Visual Studio.
Zapytanie dotyczące projektu Przedstawia kilka różnych rodzajów zapytań systemowych projektu, które można wykonać.
usuwanie komentarzy Pokazuje, jak korzystać z usług zestawu SDK programu Visual Studio za pomocą wstrzykiwania zależności platformy .NET i używania interfejsów API programu VisualStudio.Extensibility dla poleceń, wierszy i raportu postępu.
RegexMatchDebugVisualizer Pokazuje, jak za pomocą zdalnego interfejsu użytkownika utworzyć Debugger Visualizer w celu wizualizacji dopasowań wyrażeń regularnych, które zostaną uruchomione w modalnym oknie dialogowym.
MemoryStreamDebugVisualizer Pokazuje, jak utworzyć Debugger Visualizer wizualizować obiekty MemoryStream uruchamiane w niemodalnym oknie narzędzi.
RustLanguageServiceProvider Pokazuje, jak utworzyć rozszerzenie dostawcy serwera języka Rust, które dodaje funkcję IntelliSense i etykietki narzędzi po otwarciu pliku w języku Rust.
CompositeExtension Pokazuje, jak utworzyć rozszerzenie zawierające składniki wewnętrzne (in-proc) i zewnętrzne (out-of-proc), które komunikują się przy użyciu usług brokerskich.

Eksperymentalne interfejsy API i zmiany powodujące niezgodność

Począwszy od wersji 17.9, możemy oznaczyć większość naszych interfejsów API jako stabilnych. Oznacza to, że nie planujemy wprowadzać żadnych zmian powodujących niezgodność w tych interfejsach API. Wszelkie zmiany powodujące niezgodność, takie jak te wywołane opiniami użytkowników na temat użyteczności, zostaną formalnie przekazane na naszej stronie zmian powodujących niezgodność z dużym wyprzedzeniem.

Istnieje kilka naszych interfejsów API, które jeszcze nie spełniają wymagań dotyczących stabilności z jednego z kilku powodów:

  • Obszar funkcji jest nowy, a dodatkowe funkcje i zmiany są oczekiwane w przyszłych wersjach.
  • Interfejs API jest nowy i chcemy dołączyć opinie użytkowników do projektu przed oznaczeniem go stabilnym.
  • Otrzymaliśmy opinię, że konkretny interfejs API jest trudny do użycia, dlatego planujemy zaktualizowanie go w przyszłych wersjach.

Te interfejsy API są jawnie oznaczone za pomocą atrybutu [Experimental], aby ułatwić autorom rozszerzeń tworzenie rozszerzeń z zaufaniem do zestawu SDK.

Aby uzyskać więcej informacji, w tym na temat sposobu używania eksperymentalnych interfejsów API, odwiedź naszą stronę eksperymentalnych interfejsów API.

Znane problemy

Doceniamy Wasze opinie oraz raporty o błędach w naszym narzędziu do śledzenia problemów , i pracujemy nad rozwiązaniem wszelkich problemów wykrytych w SDK.

Odwiedź naszą stronę Znane problemy, aby uzyskać informacje o wszelkich znanych problemach.

Tematy zaawansowane

Artykuł Opis
inne pojęcia dotyczące zdalnego interfejsu użytkownika Dodatkowe tematy związane z pracą z zdalnym modelem interfejsu użytkownika
Zaawansowany Zdalny Interfejs Użytkownika Szczegółowe informacje na temat zdalnego modelu interfejsu użytkownika
rozszerzenia w proc Krótki przewodnik po różnych opcjach korzystania z zestawu VisualStudio.Extensibility SDK wewnętrznie.

Dokumentacja interfejsu API

Wyślij opinię

Aktywnie szukamy opinii i zaangażowania. Faza wersji zapoznawczej to doskonały czas, aby uzyskać wkład społeczności, aby pomóc nam zidentyfikować problemy i możliwości. Możesz przekazać opinie i zgłosić usterki w naszym narzędziu do śledzenia problemów.