Microsoft vydává VS Code 1.51 s vylepšenými připnutými kartami a dalšími

Ikona času čtení 11 min. číst


Čtenáři pomáhají podporovat MSpoweruser. Pokud nakoupíte prostřednictvím našich odkazů, můžeme získat provizi. Ikona popisku

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 VS kód

Microsoft VS kód

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.

Neaktivní připnuté karty zobrazující ikony špendlíků

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í.

Vlastní vznášení stromu

Nainstalujte rozšíření bez synchronizace#

Nyní můžete nainstalovat rozšíření bez synchronizace, když je povolena synchronizace nastavení.

Nainstalujte rozšíření bez synchronizace

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é“:

Gif zobrazující psaní s latencí 250 ms, kde jsou okamžitě zadané znaky š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 na 0 funkci zapnout neustále, popř -1 jej zakázat. Výchozí na 30.
  • terminal.integrated.localEchoStyle konfiguruje styl nebo barvu místního znaku, výchozí hodnota je dim.

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.

Změna velikosti ovládání návrhů

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í.

Stavový řádek návrhů

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.

Pohyb kurzoru při zobrazení návrhů

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í.

Vlastní úryvky Emmet opět fungují

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.

Po napsání zprávy do vstupního pole SCM a následném vytvoření a potvrzení změn stisknutím šipky nahoru odhalíte zprávu, která byla právě potvrzena.

Git: Označení příkazů v podnabídce#

Příkazy Git související s tagy byly přidány do ... Nabídka Git.

Podnabídka značek 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í#

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.

Zobrazení časové osy s emotikony

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

Inteligentní výběr v dokumentu Markdown se rozšíří z prvku bloku na prvek bloku, který jej obsahuje, na zbytek obsahu pod záhlavím až po samotné záhlaví

Možnost formátování prázdné složené závorky pro JavaScript a TypeScript#

Nový javascript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces  a  typescript.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.

Stažení složky

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.

Oznámení otevřít pracovní prostor

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í.

Zavřete potvrzovací dialog

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.

Přihlášení k serveru proxy

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:

Ukázky stylu Webview

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.

Stromový pohled s barvami ikon

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 v globalState 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 nastaveno false, 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

Více o tématech: microsoft, Visual Studio Kód 1.51, VS kód

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *