Microsoft wypuszcza VS Code 1.51 z ulepszonymi przypiętymi zakładkami i nie tylko
11 minuta. czytać
Zaktualizowano na
Przeczytaj naszą stronę z informacjami, aby dowiedzieć się, jak możesz pomóc MSPoweruser w utrzymaniu zespołu redakcyjnego Czytaj więcej
Firma Microsoft ogłosiła dzisiaj wydanie Visual Studio Code v1.51 (aktualizacja z października 2020 r.) z kilkoma ulepszeniami i poprawkami błędów. Ta nowa aktualizacja zawiera teraz okno sugestii IntelliSense o zmiennym rozmiarze, trwałe sesje terminala zdalnego, ulepszone przypięte karty i nie tylko. Poniżej znajdziesz pełny dziennik zmian dostarczony przez firmę Microsoft.
Workbench#
Bardziej widoczne przypięte zakładki#
Przypięte karty będą teraz zawsze wyświetlać ikonę pinezki, nawet gdy są nieaktywne, aby ułatwić ich identyfikację. Jeśli edytor jest zarówno przypięty, jak i zawiera niezapisane zmiany, ikona odzwierciedla oba stany.
Drzewa rozszerzeń używają niestandardowego najechania#
Zamiast używać natywnej podpowiedzi w widokach drzewa rozszerzeń, używamy teraz niestandardowego najechania, które jest spójne dla wielu platform i lepiej pasuje do ogólnego UX.
Zainstaluj rozszerzenie bez synchronizacji#
Możesz teraz zainstalować rozszerzenie bez synchronizowania go, gdy synchronizacja ustawień jest włączona.
Skórka: Światło na GitHubie
Zainstaluj rozszerzenie z Eksploratora#
VS Code obsługuje teraz instalowanie rozszerzenia pliku VSIX z Eksploratora przez kliknięcie prawym przyciskiem myszy pliku VSIX i wybranie Zainstaluj rozszerzenie VSIX element menu kontekstowego.
Wprowadź polecenie rozmycia#
Nowy wewnętrzny
workbench.action.blur
jest teraz dostępne polecenie, które usuwa fokus z dowolnego wejścia, na które można się skupić. Możesz przypisać skrót klawiaturowy do tego polecenia w Preferencje skrótów klawiaturowych.Zintegrowany terminal#
Lokalne echo#
Dokonywanie modyfikacji w terminalu tradycyjnie wymaga wysłania informacji do procesu terminala, przetworzenia i zwrócenia do VS Code, aby zostały naruszone. Może to być powolne w przypadku pracy ze słabym lub odległym połączeniem z Serwer SSH or Przestrzeń kodowa.
Ta wersja dodaje do terminala tryb „lokalnego echa”, który próbuje przewidzieć modyfikacje i ruchy kursora dokonywane lokalnie i pokazywać je w interfejsie użytkownika bez konieczności podróży w obie strony do serwera. Domyślnie przewidywane znaki są wyświetlane jako „przyciemnione”:
Istnieją dwa ustawienia, których możesz użyć do skonfigurowania tego:
terminal.integrated.localEchoLatencyThreshold
konfiguruje wykryty próg opóźnienia w milisekundach, przy którym aktywuje się lokalne echo. Można to ustawić na0
włączyć tę funkcję przez cały czas, lub-1
aby go wyłączyć. Domyślnie do30
.terminal.integrated.localEchoStyle
konfiguruje styl lub kolor znaku lokalnego, domyślniedim
.IntelliSense#
Sugestie o zmiennym rozmiarze#
W tym kamieniu milowym wprowadziliśmy kilka ulepszeń w interfejsie sugestii. Przede wszystkim można teraz zmienić jego rozmiar. Przeciągnij boki lub rogi, aby zmienić rozmiar kontrolki.
Skórka: Światło na GitHubie, Czcionka: FiraCode
Rozmiar listy sugestii będzie zapisywany i przywracany w kolejnych sesjach. Rozmiar okienka szczegółów jest zapisywany tylko na sesję, ponieważ ten rozmiar jest zwykle bardziej zmienny. Również
editor.suggest.maxVisibleSuggestions
ustawienie stało się przestarzałe.Pasek stanu z sugestiami#
Kontrolka sugestii może teraz również wyświetlać własny pasek stanu u dołu okna. Włącz to za pomocą
editor.suggest.showStatusBar
ustawienie. Ułatwia przełączanie szczegółów i pokazuje, czy uzupełnianie obsługuje wstawianie, zastępowanie lub jedno i drugie.Skórka: Światło na GitHubie, Czcionka: FiraCode
W powyższym przykładzie wybranie „Wstaw” spowoduje wyświetlenie
Math.floorceil
i wybranie opcji „Zamień” spowoduje wyświetlenieMath.floor
.Nowa
editor.suggest.insertMode
ustawienie umożliwia skonfigurowanie, czy wolisz wstawianie, czy zastępowanie. Gdy sugestia obsługuje obie te opcje, domyślną preferencją będzie Twoja preferencja.Przesuń kursor, aby wybrać sugestie#
Wreszcie, co nie mniej ważne, możesz teraz przesuwać kursor, gdy wyświetlane są sugestie. Na przykład możesz uruchomić sugestie na końcu słowa, przesunąć się w lewo, aby zobaczyć więcej sugestii, a następnie użyć polecenia Zamień, aby nadpisać słowo.
Skórka: Światło na GitHubie
Mrówka#
Wróciły niestandardowe fragmenty w Emmecie. Ponadto fragmenty są teraz automatycznie odświeżane po zapisaniu pliku fragmentów lub aktualizacji
emmet.extensionsPath
ustawienie.Kontrola źródła#
Pole wprowadzania kontroli źródła zapisuje historię wiadomości zatwierdzeń#
To odnosi się do żądanie funkcji aby poruszać się po historii zatwierdzeń SCM. naciskać Up i Pobierz aby wyświetlić odpowiednio poprzednie i następne zatwierdzenia. Aby przejść bezpośrednio do pierwszej i ostatniej pozycji pola wprowadzania, naciśnij inny w połączeniu z odpowiednim klawiszem strzałki.
Git: Oznacz polecenia w podmenu#
Polecenia Git związane z tagami zostały dodane do ... Menu Gita.
Git: polecenie Rebase#
nowa Git: Rebase gałąź… dodano polecenie, które pozwala na zmianę bazy gałęzi za pomocą interfejsu użytkownika.
Git: Rekurencyjne polecenie klonowania#
Z Git: Klon (Rekursywny) polecenie, możesz teraz rekursywnie klonować repozytoria Git, w tym ich zagnieżdżone podmoduły Git.
Oś czasu: renderowanie skróconych emotikonów#
Teraz renderujemy skróty emoji, takie jak
:smile:
, w widoku osi czasu.Języki#
Inteligentny wybór przecen#
Rozszerz i zmniejsz zaznaczenie w dokumentach Markdown za pomocą następujących nowych poleceń:
- Rozszerzać: Shift+Alt+Prawo
- Kurczyć: Shift+Alt+w lewo
Wybór dotyczy następujących elementów i jest zgodny z tradycyjnym wzorcem hierarchicznym:
- Nagłówki
- wykazy
- Cytaty blokowe
- Ogrodzone bloki kodu
- Bloki kodu HTML
- Paragrafy
Opcja formatowania pustych nawiasów dla JavaScript i TypeScript#
Nowa
javascript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces
itypescript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces
opcja konfiguracji formatowania kontroluje, czy spacje są wstawiane między pustymi nawiasami klamrowymi. Domyślna wartość tych ustawień to prawda. Na przykład dla JavaScript:class Foo { doFoo() {} }
Oprawa
"javascript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces": false
a formatowanie kodu skutkuje:class Foo { doFoo() {} // Notice that the space has been removed }
Obsługiwane przeglądarki#
Pobierz foldery (Edge, Chrome)#
Wykorzystanie nowego Dostęp do systemu plików Interfejs API, Microsoft VS Code działający w przeglądarce może teraz oferować akcję pobierania folderów z Eksploratora plików w celu pobrania wszystkich plików i folderów na dysk.
Uwaga: Wymaga to najnowszej wersji przeglądarki Microsoft Edge lub Google Chrome.
Powiadomienie o otwartym obszarze roboczym#
Jeśli otworzysz folder, który zawiera
.code-workspace
plików na najwyższym poziomie, zobaczysz teraz powiadomienie z prośbą o ich otwarcie. Tak było zawsze w Microsoft VS Code na komputery i teraz będzie działać również w przeglądarce.Zapobiegaj przypadkowemu zamknięciu#
Nowe ustawienie
window.confirmBeforeClose
został dodany, aby wyświetlić okno dialogowe potwierdzenia przed zamknięciem lub opuszczeniem środowiska roboczego.Możliwe wartości to:
keyboardOnly
Potwierdzenie zostanie wyświetlone tylko wtedy, gdy użyjesz skrótu klawiszowego do zamknięcia (na przykład Ctrl + W). (domyślna)always
: Okno dialogowe potwierdzenia będzie zawsze wyświetlane, nawet jeśli zamkniesz je gestem myszy.never
: Potwierdzenie nigdy nie zostanie wyświetlone.Note: To ustawienie może nie obejmować wszystkich przypadków. Przeglądarki mogą nadal decydować o zamknięciu karty lub okna bez potwierdzenia.
Składki na rozszerzenia#
Żądania pull i problemy z GitHub#
Trwają prace nad Żądania pull i problemy z GitHub rozszerzenie, które umożliwia pracę nad, tworzeniem i zarządzaniem pull requestami i problemami.
Aby dowiedzieć się o wszystkich nowych funkcjach i aktualizacjach, możesz zobaczyć pełną dziennik zmian dla 0.22.0 zwolnienie rozszerzenia.
Rozwój zdalny#
Trwają prace nad Rozszerzenia zdalnego rozwoju, które umożliwiają korzystanie z kontenera, zdalnej maszyny lub Podsystem Windows dla systemu Linux (WSL) jako w pełni funkcjonalne środowisko programistyczne.
Najważniejsze funkcje w wersji 1.51 obejmują:
- Możliwość utrwalania/ponownego łączenia się z sesjami terminalowymi.
- Ulepszone przekierowanie portów.
Możesz dowiedzieć się o nowych funkcjach rozszerzeń i poprawkach błędów w Informacje o wersji do zdalnego programowania.
Podgląd funkcji#
Funkcje wersji zapoznawczej nie są gotowe do wydania, ale są wystarczająco funkcjonalne, aby można było z nich korzystać. Czekamy na Wasze wczesne opinie, gdy są one opracowywane.
Synchronizacja ustawień#
Synchronizacja ustawień synchronizuje teraz globalny stan rozszerzeń. Rozszerzenia będą musiały zapewnić stan do synchronizacji za pomocą nowo wprowadzonego ustawKeysForSync API.
Zapamiętaj dane uwierzytelniające proxy#
Dokonujemy przeglądu okna dialogowego logowania, które pokazuje, kiedy połączenie sieciowe wymaga uwierzytelnienia za pomocą serwera proxy. Nowa oprawa,
window.enableExperimentalProxyLoginDialog: true
, umożliwi to nowe środowisko, które planujemy ustawić jako domyślne w przyszłej wersji.Skórka: Światło na GitHubie
Okno dialogowe pojawi się w oknie Microsoft VS Code i umożliwi zapamiętanie poświadczeń, dzięki czemu nie trzeba ich podawać przy każdym uruchomieniu programu VS Code. Poświadczenia będą przechowywane w standardowym magazynie poświadczeń systemu operacyjnego (pęk kluczy w systemie macOS, Menedżer poświadczeń systemu Windows w systemie Windows i pęk kluczy gnome w systemie Linux).
Nadal wyświetlamy to okno dialogowe tylko raz na sesję, ale możemy wrócić do tej decyzji w przyszłości. Zobaczysz, że okno dialogowe pojawi się ponownie, jeśli poświadczenia, które wybrałeś do zapamiętania, nie są ważne. Podanie ich ponownie umożliwia ich zmianę.
Włącz tę opcję i daj nam znać, jeśli coś nie działa zgodnie z oczekiwaniami za pośrednictwem naszego Lista problemow.
Obsługa wersji beta TypeScript 4.1#
Kod Microsoft VS obsługuje Wersja beta TypeScriptu 4.1 i nocne kompilacje. Aktualizacja 4.1 wprowadza kilka nowych funkcji języka TypeScript, takich jak obsługa rekurencyjne typy warunkowe, a także ulepszenia narzędzi. Jednym z obszarów zainteresowania był dodanie początkowego wsparcia dla
@see
znaczniki w komentarzach JSDoc.Aby zacząć korzystać z nocnych kompilacji TypeScript 4.1, po prostu zainstaluj Rozszerzenie TypeScript Nightly. Podziel się swoją opinią i daj nam znać, jeśli napotkasz jakiekolwiek błędy w TypeScript 4.1.
Tworzenie rozszerzeń#
Zaktualizowane próbki rozszerzeń#
Zaktualizowaliśmy niektóre z naszych próbki rozszerzające aby uwzględnić domyślne style Microsoft VS Code, które są połączone z naszymi tokenami motywów kolorystycznych. Oznacza to, że wspólne elementy (tekst, przyciski, dane wejściowe) będą tematyczne i będą pasować do domyślnych stylów produktu. Poniżej znajdują się rozszerzenia, które obejmują to:
Kolory Codiconu na drzewach#
Wraz z finalizacją
ThemeIcon
kolor API, autorzy rozszerzeń mogą używać kolorów motywów w kodikonach w niestandardowych widokach drzewa.Synchronizuj stan globalny#
Rozszerzenia mogą teraz synchronizować swój stan globalny, dostarczając klucze, których wartości powinny być synchronizowane po włączeniu synchronizacji ustawień, przy użyciu nowo wprowadzonego
setKeysForSync
API wglobalState
memento./** * Set the keys whose values should be synchronized across devices when synchronizing user-data * like configuration, extensions, and mementos. * * Note that this function defines the whole set of keys whose values are synchronized: * - calling it with an empty array stops synchronization for this memento * - calling it with a non-empty array replaces all keys whose values are synchronized * * For any given set of keys this function needs to be called only once but there is no harm in * repeatedly calling it. * * @param keys The set of keys whose values are synced. */ setKeysForSync(keys: string[]): void;
Widoczność przycisku odpowiedzi w wątku komentarza#
Komentarz rozszerzenia mogą teraz kontrolować widoczność przycisku odpowiedzi w wątku komentarzy z nową właściwością,
CommentThread#canReply
. Kiedy jest ustawiony nafalse
, użytkownicy nie będą widzieć przycisku odpowiedzi ani pola komentarza w wątku komentarzy.Proponowane rozszerzenia API#
Każdy kamień milowy zawiera nowe proponowane interfejsy API, a autorzy rozszerzeń mogą je wypróbować. Jak zawsze oczekujemy Twojej opinii. Oto, co musisz zrobić, aby wypróbować proponowany interfejs API:
- Musisz używać Insiderów, ponieważ proponowane interfejsy API często się zmieniają.
- Musisz mieć tę linię w
package.json
plik twojego rozszerzenia:"enableProposedApi": true
.- Skopiuj najnowszą wersję
vscode.proposed.d.ts
plik do lokalizacji źródłowej projektu.Nie możesz opublikować rozszerzenia korzystającego z proponowanego interfejsu API. W następnej wersji mogą pojawić się przełomowe zmiany i nigdy nie chcemy przerywać istniejących rozszerzeń.
Dostawcy asortymentu do składania zmieniają wydarzenie#
Dostawcy zakresów zwijania mogą zasygnalizować redaktorowi, że należy zaktualizować zakresy zwijania za pomocą
onDidChangeFoldingRanges
zdarzenie.Aby uzyskać więcej informacji i przekazać opinię, skorzystaj z wydać #108929.
Interfejsy API haseł#
W ramach kontynuacji prac nad Dostawcy uwierzytelniania, wprowadziliśmy API do przechowywania i pobierania poufnych informacji. Wewnętrznie działa to jako opakowanie Keytar biblioteka, której VS Code używa do przechowywania wpisów tajnych.
/** * Retrieve a password that was stored with key. Returns undefined if there * is no password matching that key. * @param key The key the password was stored under. */ export function getPassword(key: string): Thenable<string | undefined>; /** * Store a password under a given key. * @param key The key to store the password under * @param value The password */ export function setPassword(key: string, value: string): Thenable<void>; /** * Remove a password from storage. * @param key The key the password was stored under. */ export function deletePassword(key: string): Thenable<void>; /** * Fires when a password is set or deleted. */ export const onDidChangePassword: Event<void>;
Inżynieria#
Zapewnienie zgodności z zaufanymi typami kodu Microsoft VS Code#
Kontynuowaliśmy starania, aby zapewnić zgodność z VS Code „Trusted Types”. Celem jest zapobieganie podatnościom na ataki cross-site scripting w oparciu o DOM. Możesz dowiedzieć się więcej o zaufanych typach na web.dev Witryna zaufanych typów i śledź nasze postępy w wydać #103699.
Źródło: Microsoft