Microsoft vydává VS Code 1.51 s vylepšenými připnutými kartami a dalšími
11 min. číst
Aktualizováno dne
Přečtěte si naši informační stránku a zjistěte, jak můžete pomoci MSPoweruser udržet redakční tým Dozvědět se více
Microsoft dnes oznámil vydání Visual Studio Code v1.51 (aktualizace z října 2020) s několika vylepšeními a opravami chyb. Tato nová aktualizace nyní přichází s polem návrhů IntelliSense s měnitelnou velikostí, trvalými relacemi vzdáleného terminálu, vylepšenými připnutými kartami a dalšími. Níže naleznete úplný protokol změn poskytnutý společností Microsoft.
Workbench#
Výraznější připnuté záložky#
Připnuté karty nyní budou vždy zobrazovat svou ikonu špendlíku, i když jsou neaktivní, aby bylo snazší je identifikovat. Pokud je editor připojený a obsahuje neuložené změny, ikona odráží oba stavy.
Stromy rozšíření používají vlastní umístění kurzoru#
Namísto použití nativního popisku ve stromových zobrazeních rozšíření nyní používáme vlastní umístění kurzoru, které je konzistentní pro různé platformy a lépe zapadá do celkového uživatelského rozhraní.
Nainstalujte rozšíření bez synchronizace#
Nyní můžete nainstalovat rozšíření bez synchronizace, když je povolena synchronizace nastavení.
téma: GitHub Light
Nainstalujte rozšíření z Průzkumníka#
VS Code nyní podporuje instalaci rozšíření VSIX souboru z Průzkumníka kliknutím pravým tlačítkem myši na soubor VSIX a výběrem Nainstalujte rozšíření VSIX položka kontextového menu.
Zadejte příkaz rozostření#
Nový vnitřní
workbench.action.blur
Nyní je k dispozici příkaz, který odebere fokus z jakéhokoli zaměřitelného vstupu. Tomuto příkazu můžete přiřadit klávesovou zkratku v Předvolby klávesových zkratek.Integrovaný terminál#
Místní Echo#
Provádění úprav v terminálu tradičně vyžaduje, aby byly informace odeslány do procesu terminálu, zpracovány a vráceny do VS Code, aby mohly být ovlivněny. To může být pomalé při práci na špatném nebo vzdáleném připojení k Server SSH or Kódový prostor.
Toto vydání přidává do terminálu režim „místní odezvy“, který se pokouší předvídat úpravy a pohyby kurzoru provedené lokálně a zobrazovat je v uživatelském rozhraní, aniž by vyžadoval zpáteční cestu na server. Ve výchozím nastavení se předpokládané znaky zobrazují jako „šedé“:
Ke konfiguraci můžete použít dvě nastavení:
terminal.integrated.localEchoLatencyThreshold
konfiguruje zjištěný práh zpoždění v milisekundách, při kterém se aktivuje místní echo. Toto lze nastavit na0
funkci zapnout neustále, popř-1
jej zakázat. Výchozí na30
.terminal.integrated.localEchoStyle
konfiguruje styl nebo barvu místního znaku, výchozí hodnota jedim
.IntelliSense#
Návrhy s možností změny velikosti#
V tomto milníku jsme provedli několik vylepšení uživatelského rozhraní návrhů. V první řadě je nyní možné změnit jeho velikost. Přetažením stran nebo rohů změňte velikost ovládacího prvku.
téma: GitHub Light, Písmo: FiraCode
Velikost seznamu návrhů bude uložena a obnovena napříč relacemi. Velikost podokna podrobností se ukládá pouze na relaci, protože tato velikost bývá variabilnější. Také
editor.suggest.maxVisibleSuggestions
nastavení zastaralo.Stavový řádek pro návrhy#
Ovládací prvek návrhů může nyní také zobrazovat svůj vlastní stavový řádek ve spodní části okna. Povolte jej pomocí
editor.suggest.showStatusBar
nastavení. Usnadňuje přepínání podrobností a ukazuje, zda dokončení podporuje vkládání, nahrazování nebo obojí.téma: GitHub Light, Písmo: FiraCode
Ve výše uvedeném příkladu bude výsledkem výběru „Vložit“.
Math.floorceil
a výběrem „Nahradit“ se zobrazíMath.floor
.Nový
editor.suggest.insertMode
umožňuje nakonfigurovat, zda preferujete vkládání nebo výměnu. Pokud návrh podporuje obojí, vaše preference bude výchozí.Přesunutím kurzoru vyberte návrhy#
V neposlední řadě můžete nyní pohybovat kurzorem, když se zobrazují návrhy. Můžete například spustit návrhy na konci slova, posunutím doleva zobrazíte další návrhy a poté slovo přepsat pomocí nahradit.
téma: GitHub Light
Emmet#
Vlastní úryvky v Emmet jsou zpět. Kromě toho se úryvky nyní automaticky obnovují při uložení souboru úryvků nebo aktualizaci souboru
emmet.extensionsPath
nastavení.Ovládání zdroje#
Vstupní pole Source Control ukládá historii zpráv odevzdání#
Toto je adresováno a budoucí žádost pro navigaci v historii odevzdání SCM. lis Up a Dolů pro zobrazení předchozího a následujícího potvrzení. Chcete-li se přesunout přímo na první a poslední pozici vstupního pole, stiskněte Další ve spojení s odpovídající šipkou.
Git: Označení příkazů v podnabídce#
Příkazy Git související s tagy byly přidány do ... Nabídka Git.
Git: Příkaz Rebase#
Nový Git: Rebase větev… byl přidán příkaz, který vám umožní znovu založit větev pomocí uživatelského rozhraní.
Git: Příkaz rekurzivního klonování#
S Git: Clone (rekurzivní) můžete nyní rekurzivně klonovat úložiště Git, včetně jeho vnořených submodulů Git.
Časová osa: Vykreslování krátkého kódu Emoji#
Nyní vykreslujeme krátké kódy emotikonů, jako např
:smile:
, v zobrazení časové osy.Jazyky#
Chytrý výběr Markdown#
Rozšiřte a zmenšete výběr v dokumentech Markdown pomocí následujících nových příkazů:
- Rozšířit: Shift+Alt+Vpravo
- Smrštění: Shift+Alt+Left
Výběr se vztahuje na následující položky a řídí se tradičním hierarchickým vzorem:
- Záhlaví
- seznamy
- Blokovat nabídky
- Oplocené kódové bloky
- Bloky html kódu
- Odstavce
Možnost formátování prázdné složené závorky pro JavaScript a TypeScript#
Nový
javascript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces
atypescript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces
možnost konfigurace formátování řídí, zda se mezi prázdné závorky vkládají mezery. Výchozí hodnota pro tato nastavení je true. Například pro JavaScript:class Foo { doFoo() {} }
nastavení
"javascript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces": false
a formátování kódu má za následek:class Foo { doFoo() {} // Notice that the space has been removed }
Podpora prohlížeče#
Složky ke stažení (Edge, Chrome)#
Využití nového Přístup k systému souborů API, Microsoft VS Code běžící v prohlížeči nyní může nabídnout akci stahování pro složky z Průzkumníka souborů ke stažení všech souborů a složek na disk.
Poznámka: To vyžaduje nejnovější verzi Microsoft Edge nebo Google Chrome.
Otevřete oznámení pracovního prostoru#
Pokud otevřete složku, která obsahuje
.code-workspace
souborů na nejvyšší úrovni, nyní uvidíte upozornění s výzvou k otevření. To byl vždy případ Microsoft VS Code pro stolní počítače a nyní to bude fungovat i v prohlížeči.Zabraňte náhodnému zavření#
Nové nastavení
window.confirmBeforeClose
byl přidán k zobrazení potvrzovacího dialogu před zavřením nebo opuštěním pracovní plochy.Možné hodnoty jsou:
keyboardOnly
Potvrzení se zobrazí pouze tehdy, když k zavření použijete klávesovou zkratku (např. Ctrl + W). (výchozí)always
: Potvrzovací dialog se zobrazí vždy, i když zavřete gestem myši.never
: Potvrzení se nikdy nezobrazí.Poznámka: Toto nastavení nemusí pokrývat všechny případy. Prohlížeče se stále mohou rozhodnout zavřít kartu nebo okno bez potvrzení.
Příspěvky na rozšíření#
Požadavky a problémy GitHub Pull#
Práce pokračují na Požadavky a problémy GitHub Pull rozšíření, které vám umožňuje pracovat na, vytvářet a spravovat požadavky a problémy stahování.
Chcete-li se dozvědět o všech nových funkcích a aktualizacích, můžete si prohlédnout úplné znění changelog pro 0.22.0 vydání rozšíření.
Vzdálený vývoj#
Práce pokračují na Rozšíření pro vzdálený vývoj, které vám umožňují používat kontejner, vzdálený stroj nebo Windows Subsystem pro Linux (WSL) jako plnohodnotné vývojové prostředí.
Mezi hlavní funkce v 1.51 patří:
- Schopnost přetrvávat / znovu se připojit k terminálovým relacím.
- Vylepšená zkušenost s přesměrováním portů.
O nových funkcích rozšíření a opravách chyb se můžete dozvědět v Poznámky k vydání vzdáleného vývoje.
Funkce náhledu#
Funkce náhledu nejsou připraveny k vydání, ale jsou dostatečně funkční k použití. Uvítáme vaši včasnou zpětnou vazbu, zatímco jsou ve vývoji.
Synchronizace nastavení#
Synchronizace nastavení nyní synchronizuje globální stav rozšíření. Rozšíření budou muset poskytnout stav k synchronizaci pomocí nově zavedeného setKeysForSync API.
Zapamatujte si přihlašovací údaje proxy#
Přepracováváme přihlašovací dialog, který ukazuje, kdy síťové připojení vyžaduje ověření pomocí proxy. nové nastavení,
window.enableExperimentalProxyLoginDialog: true
, umožní toto nové prostředí, které plánujeme nastavit jako výchozí v budoucí verzi.téma: GitHub Light
Dialogové okno se objeví uvnitř okna Microsoft VS Code a nabídne způsob, jak si zapamatovat přihlašovací údaje, abyste je nemuseli zadávat při každém spuštění VS Code. Přihlašovací údaje budou uloženy ve standardním úložišti pověření OS (klíčenka na macOS, Windows Credential Manager na Windows a gnome klíčenka na Linuxu).
Tento dialog stále zobrazujeme pouze jednou za relaci, ale v budoucnu se k tomuto rozhodnutí můžeme vrátit. Dialogové okno se zobrazí znovu v případě, že pověření, která jste vybrali k zapamatování, nejsou platná. Jejich opětovné poskytnutí vám umožní je změnit.
Povolte prosím tuto možnost a dejte nám vědět, pokud něco nefunguje podle očekávání prostřednictvím našeho tracker problémů.
Podpora TypeScript 4.1 beta#
Microsoft VS Code podporuje TypeScript 4.1 beta a noční stavby. Aktualizace 4.1 přináší některé nové funkce jazyka TypeScript, jako je podpora pro rekurzivní podmíněné typya také vylepšení nástrojů. Jedna oblast zájmu byla přidání počáteční podpory for
@see
tagy v komentářích JSDoc.Chcete-li začít používat noční sestavení TypeScript 4.1, stačí nainstalovat Rozšíření TypeScript Nightly. Sdělte nám prosím zpětnou vazbu a dejte nám vědět, pokud narazíte na nějaké chyby v TypeScript 4.1.
Tvorba rozšíření#
Aktualizované ukázky rozšíření#
Aktualizovali jsme některé z našich ukázky rozšíření zahrnout výchozí styly Microsoft VS Code, které jsou připojeny k našim tokenům barevných motivů. To znamená, že běžné prvky (text, tlačítka, vstupy) budou tématické a budou odpovídat výchozím stylům v produktu. Níže jsou uvedena rozšíření, která zahrnují toto:
Kodikonové barvy ve stromech#
S finalizací
ThemeIcon
barevné API, mohou autoři rozšíření používat barvy motivu na kodikonech ve vlastních stromových zobrazeních.Globální stav synchronizace#
Rozšíření nyní mohou synchronizovat svůj globální stav poskytnutím klíčů, jejichž hodnoty by měly být synchronizovány, když je povolena synchronizace nastavení, pomocí nově zavedených
setKeysForSync
API vglobalState
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;
Viditelnost tlačítka odpovědi vlákna komentáře#
Komentář rozšíření nyní mohou pomocí nové vlastnosti ovládat viditelnost tlačítka odpovědět ve vláknu komentářů,
CommentThread#canReply
. Když je nastavenofalse
, uživatelé neuvidí tlačítko pro odpověď ani pole komentáře ve vláknu komentáře.Navrhovaná rozšíření API#
Každý milník přichází s novými navrhovanými rozhraními API a autoři rozšíření je mohou vyzkoušet. Jako vždy nás zajímá váš názor. Toto je to, co musíte udělat, abyste vyzkoušeli navrhované API:
- Musíte používat Insiders, protože navrhovaná rozhraní API se často mění.
- Musíte mít tento řádek v
package.json
soubor vaší přípony:"enableProposedApi": true
.- Zkopírujte nejnovější verzi souboru
vscode.proposed.d.ts
soubor do zdrojového umístění vašeho projektu.Nemůžete publikovat rozšíření, které používá navrhované rozhraní API. V příštím vydání mohou nastat zásadní změny a my nikdy nechceme narušit stávající rozšíření.
Událost změny poskytovatelů skládacích rozsahů#
Poskytovatelé skládacích rozsahů mohou signalizovat editoru, že je třeba aktualizovat rozsahy skládání pomocí
onDidChangeFoldingRanges
událost.Chcete-li získat další podrobnosti a poskytnout zpětnou vazbu, použijte Číslo #108929.
Rozhraní API pro hesla#
V rámci pokračující práce na Poskytovatelé autentizace, zavedli jsme API pro ukládání a získávání citlivých informací. Interně to funguje jako obal keytar knihovna, kterou VS Code používá pro ukládání tajemství.
/** * 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ženýrství#
Zajištění shody s důvěryhodnými typy Microsoft VS Code#
Pokračovali jsme ve snaze zajistit, aby VS Code odpovídaly „důvěryhodným typům“. Cílem je zabránit zranitelnosti skriptování mezi weby založené na DOM. Více o důvěryhodných typech se můžete dozvědět na webu web.dev Stránky důvěryhodných typů a sledovat náš pokrok Číslo #103699.
Zdroj: Microsoft