VS Code 1.51 je izdana z izboljšavami pripetih zavihkov in še več
Visual Studio Code je priljubljena aplikacija za razvijalce. Je urejevalnik kode, ki je na novo definiran in optimiziran za gradnjo in odpravljanje napak sodobnih spletnih in oblačnih aplikacij. VS Code je opremljen z različnimi razširitvami in pomočniki, ki resnično prihranijo čas. Na voljo je za vse glavne platforme, vključno z Windows, MacOS in Linux. Microsoft je danes izdal novo različico aplikacije, ki prinaša izboljšave za različne funkcije aplikacije, vključno s pripetimi zavihki, integracijo GitHub in še veliko več.
Koda VS 1.51 je znana po naslednjih spremembah.
Opomba: Aplikacijo lahko prenesete z njene uradne spletne strani.
Delovna miza
Bolj izraziti pripeti zavihki
Pripeti zavihki bodo zdaj vedno prikazovali ikono žebljička, tudi ko so neaktivni, da jih je lažje prepoznati. Če je urejevalnik pripet in vsebuje neshranjene spremembe, ikona odraža obe stanji.
Drevesa razširitev uporabljajo lebdenje po meri
Namesto uporabe izvirnega opisa orodja v pogledih drevesa razširitev, zdaj uporabljamo lebdenje po meri, ki je skladno med platformo in se bolje ujema s splošnim uporabniškim vmesnikom.
Namestite razširitev brez sinhronizacije
Zdaj lahko namestite razširitev, ne da bi jo sinhronizirali, medtem ko je sinhronizacija nastavitev omogočena.
tema: GitHub Light
Namestite razširitev iz Explorerja
VS Code zdaj podpira namestitev razširitve datoteke VSIX iz Raziskovalca tako, da z desno miškino tipko kliknete datoteko VSIX in izberete Namestite razširitev VSIX element kontekstnega menija.
Vnesite ukaz zamegljenosti
Nova notranja delovna miza.akcija.zamegljenost
zdaj je na voljo ukaz, ki odstrani fokus iz katerega koli vhoda, ki ga je mogoče osredotočiti. Temu ukazu lahko dodelite bližnjico na tipkovnici v Nastavitve bližnjic na tipkovnici.
Integriran terminal
Lokalni odmev
Izvajanje sprememb v terminalu tradicionalno zahteva, da se informacije pošljejo terminalskemu procesu, obdelajo in vrnejo v kodo VS, da se nanje vpliva. To je lahko počasno, če delate na slabi ali oddaljeni povezavi z omrežjem SSH strežnik oz Kodni prostor.
Ta izdaja terminalu doda način "lokalni odmev", ki poskuša predvideti spremembe in premike kazalca, narejene lokalno, in jih prikazati v uporabniškem vmesniku, ne da bi zahteval povratno potovanje do strežnika. Privzeto so predvideni znaki prikazani kot "zatemnjeni":
Za to konfiguracijo lahko uporabite dve nastavitvi:
-
terminal.integrated.localEchoLatencyThreshold
konfigurira zaznan prag zakasnitve v milisekundah, pri katerem se bo aktiviral lokalni odmev. To je mogoče nastaviti na0
če želite funkcijo ves čas vklopiti, oz-1
da ga onemogočite. Privzeto na30
. -
terminal.integrated.localEchoStyle
konfigurira slog ali barvo lokalnega znaka, privzeto nastavljeno nadim
.
IntelliSense
Predlogi za spreminjanje velikosti
Ta mejnik smo naredili več izboljšav uporabniškega vmesnika predlogov. Najprej in predvsem, zdaj je mogoče spremeniti velikost. Povlecite strani ali vogale, da spremenite velikost kontrolnika.
tema: GitHub Light, Pisava: FiraCode
Velikost seznama predlogov bo shranjena in obnovljena med sejami. Velikost podokna s podrobnostmi se shrani samo na sejo, saj je ta velikost običajno bolj spremenljiva. Prav tako, editor.suggest.maxVisibleSuggestions
nastavitev je zastarela.
Vrstica stanja za predloge
Kontrolnik predlogov lahko zdaj prikaže tudi svojo vrstico stanja na dnu okna. Omogočite ga z uporabo editor.suggest.showStatusBar
nastavitev. Poenostavi preklapljanje podrobnosti in pokaže, ali dokončanje podpira vstavljanje, zamenjavo ali oboje.
tema: GitHub Light, Pisava: FiraCode
V zgornjem vzorcu izbira »Vstavi« povzroči Math.talna obloga
in izbira "Zamenjaj" povzroči Math.tla
.
Novi editor.suggest.insertMode
nastavitev vam omogoča, da nastavite, ali želite vstaviti ali zamenjati. Če predlog podpira oboje, bo vaša nastavitev privzeta.
Premaknite kazalec, da izberete predloge
Nenazadnje lahko zdaj premikate kurzor, medtem ko so prikazani predlogi. Na primer, lahko sprožite predloge na koncu besede, se premaknete levo, da vidite več predlogov, in nato uporabite zamenjavo, da prepišete besedo.
tema: GitHub Light
Emmet
Odrezki po meri v Emmetu so nazaj. Poleg tega se odrezki zdaj samodejno osvežijo, ko shranite datoteko izrezkov ali posodobite datoteko emmet.extensionsPath
nastavitev.
Nadzor vira
Vnosno polje Source Control shrani zgodovino sporočil o potrditvi
To naslavlja a zahteva po funkciji za krmarjenje po zgodovini potrditve SCM. Pritisnite ↑ (Windows, Linux gor) in ↓ (Windows, Linux dol) za prikaz predhodne in naslednje potrditve. Če se želite premakniti neposredno na prvi in zadnji položaj vnosnega polja, pritisnite Alt v povezavi z ustrezno puščično tipko.
Git: Označite ukaze v podmeniju
Ukazi Git, povezani z oznako, so bili dodani v ... Git meni.
Git: Ukaz za ponovno bazo
Nov Git: Rebase vejo ... je bil dodan ukaz, ki vam omogoča ponovno baziranje veje z uporabniškim vmesnikom.
Git: ukaz za rekurzivno kloniranje
Z Git: klon (rekurzivno) ukaza, lahko zdaj rekurzivno klonirate Git repozitorije, vključno z njegovimi ugnezdenimi podmoduli Git.
Časovna os: upodabljanje kratke kode emojijev
Zdaj upodabljamo kratke kode emojijev, kot je npr :nasmeh:
, v pogledu časovne osi.
jeziki
Pametna izbira Markdown
Razširite in skrčite izbor v dokumentih Markdown z naslednjimi novimi ukazi:
- Razširi: ⌃⇧⌘→ (Windows, Linux Shift+Alt+desno)
- Skrči: ⌃⇧⌘← (Windows, Linux Shift+Alt+levo)
Izbira velja za naslednje in sledi tradicionalnemu hierarhičnemu vzorcu:
- Glave
- Seznami
- Blok narekovajev
- Ograjeni kodni bloki
- Bloki kode HTML
- Odstavki
Možnost oblikovanja praznega oklepaja za JavaScript in TypeScript
Novi javascript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBracces
in typescript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBracces
možnost konfiguracije oblikovanja nadzira, ali so med prazne oklepaje vstavljeni presledki. Privzeta vrednost za te nastavitve je resnična. Na primer za JavaScript:
razred Foo { doFoo() { } }
Nastavitev "javascript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces": false
in formatiranje kode povzroči:
class Foo { doFoo() {} // Upoštevajte, da je bil presledek odstranjen. }
Podpora za brskalnik
Prenos map (Edge, Chrome)
Izkoriščanje novega Dostop do datotečnega sistema API, VS Code, ki se izvaja v brskalniku, lahko zdaj ponudi dejanje prenosa za mape iz File Explorerja za prenos vseh datotek in map na disk.
Opomba: Za to je potrebna najnovejša različica Microsoft Edge ali Google Chrome.
Odprite obvestilo Workspace
Če odprete mapo, ki vsebuje .code-workspace
datotek na najvišji ravni, boste zdaj videli obvestilo, ki vas prosi, da ga odprete. To je bilo vedno tako v VS Code za namizje, zdaj pa bo delovalo tudi v brskalniku.
Preprečite nenamerno zapiranje
Nova nastavitev window.confirmBeforeClose
je bil dodan za prikaz potrditvenega pogovornega okna, preden zaprete ali zapustite delovno mizo.
Možne vrednosti so:
-
samo tipkovnica
Potrditev bo prikazana samo, če za zapiranje uporabite vezavo tipk (npr. ⌘W (Windows, Linux Ctrl+W)). (privzeto) -
nenehno
: Pogovorno okno za potrditev bo vedno prikazano, tudi če zaprete z miško. -
nikoli
: Potrditev ne bo nikoli prikazana.
Opomba: Ta nastavitev morda ne zajema vseh primerov. Brskalniki se lahko še vedno odločijo zapreti zavihek ali okno brez potrditve.
Prispevki k razširitvam
Zahteve in težave GitHub Pull
Delo se nadaljuje na Zahteve in težave GitHub Pull razširitev, ki vam omogoča, da delate, ustvarjate in upravljate vlečne zahteve in težave.
Če želite izvedeti več o vseh novih funkcijah in posodobitvah, si lahko ogledate celotno vsebino dnevnik sprememb za 0.22.0 sprostitev razširitve.
Oddaljeni razvoj
Delo se nadaljuje na Razširitve za oddaljeni razvoj, ki vam omogočajo uporabo vsebnika, oddaljenega stroja ali Podsistem Windows za Linux (WSL) kot popolno razvojno okolje.
Poudarki funkcij v 1.51 vključujejo:
- Sposobnost vztrajanja/ponovnega povezovanja s terminalskimi sejami.
- Izboljšana izkušnja s posredovanjem vrat.
O novih funkcijah razširitev in popravkih napak lahko izveste v Opombe o izdaji za oddaljeni razvoj.
Funkcije predogleda
Funkcije za predogled niso pripravljene za izdajo, vendar so dovolj funkcionalne za uporabo. Pozdravljamo vaše zgodnje povratne informacije, medtem ko so v razvoju.
Sinhronizacija nastavitev
Sinhronizacija nastavitev zdaj sinhronizira globalno stanje razširitev. Razširitve bodo morale zagotoviti stanje za sinhronizacijo z na novo uvedenim setKeysForSync API.
Zapomni si poverilnice proxyja
Prenavljamo pogovorno okno za prijavo, ki prikazuje, kdaj omrežna povezava zahteva preverjanje pristnosti s proxyjem. Nova nastavitev, window.enableExperimentalProxyLoginDialog: true
, bo omogočila to novo izkušnjo, ki jo nameravamo narediti privzeto v prihodnji izdaji.
tema: GitHub Light
Pogovorno okno se bo pojavilo v oknu VS Code in ponuja način, kako si zapomniti poverilnice, tako da vam jih ni treba posredovati vsakič, ko zaženete VS Code. Poverilnice bodo shranjene v standardnem skladišču poverilnic OS (keychain v macOS, Windows Credential Manager v sistemu Windows in obroček za ključe gnome v Linuxu).
To pogovorno okno še vedno prikažemo samo enkrat na sejo, vendar bomo morda to odločitev ponovno pregledali v prihodnosti. Pogovorno okno se bo znova prikazalo, če poverilnice, ki ste jih izbrali za zapomnitev, niso veljavne. Če jih znova zagotovite, jih lahko spremenite.
Omogočite to možnost in nas obvestite, če kaj ne deluje po pričakovanjih prek naše sledilnik težav.
Podpora za TypeScript 4.1 beta
VS Code podpira TypeScript 4.1 beta in nočne gradnje. Posodobitev 4.1 prinaša nekaj novih jezikovnih funkcij TypeScript, kot je podpora za rekurzivne pogojne vrste, kot tudi izboljšave orodja. Eno fokusno področje je bilo dodajanje začetne podpore za @glej
oznake v komentarjih JSDoc.
Če želite začeti uporabljati nočne gradnje TypeScript 4.1, preprosto namestite datoteko Nočna razširitev TypeScript. Prosimo, delite povratne informacije in nam sporočite, če naletite na kakšne napake s TypeScript 4.1.
Avtorstvo razširitev
Posodobljeni vzorci razširitev
Posodobili smo nekaj naših vzorci razširitev vključiti privzete sloge VS Code, ki so povezani z našimi žetoni barvnih tem. To pomeni, da bodo skupni elementi (besedilo, gumbi, vnosi) tematski in se bodo ujemali s privzetimi slogi v izdelku. Spodaj so razširitve, ki vključujejo to:
- vzorec urejevalnika po meri
- spletni ogled-vzorec
- webview-view-sample
Barve kodikona na drevesih
Z dokončno izvedbo Ikona teme
barvni API, lahko avtorji razširitev uporabljajo barve teme na kodikonih v drevesnih pogledih po meri.
Sinhroniziraj globalno stanje
Razširitve lahko zdaj sinhronizirajo svoje globalno stanje tako, da zagotovijo ključe, katerih vrednosti morajo biti sinhronizirane, ko je omogočena sinhronizacija nastavitev, z uporabo na novo predstavljenega setKeysForSync
API v globalState
spominek.
/** * Nastavite ključe, katerih vrednosti naj bodo sinhronizirane med napravami pri sinhronizaciji uporabniških podatkov *, kot so konfiguracija, razširitve in spominki. * * Upoštevajte, da ta funkcija definira celoten nabor ključev, katerih vrednosti so sinhronizirane: * - če ga pokličete s praznim nizom, ustavite sinhronizacijo za ta spominek * - ga pokličete s neprazna matrika nadomesti vse ključe, katerih vrednosti so sinhronizirane * * Za vsak dani niz ključev je treba to funkcijo poklicati samo enkrat, vendar ni škode, če jo * večkrat kličete. * * @param ključi Nabor ključev, katerih vrednosti so sinhronizirane. */ setKeysForSync (ključi: string[]): void;
Komentar razširitve lahko zdaj nadzorujejo vidnost gumba za odgovor v niti komentarjev z novo lastnostjo, CommentThread#canReply
. Ko je nastavljeno na napačno
, uporabniki ne bodo videli gumba za odgovor ali polja za komentar v temi komentarjev.
Predlagani API-ji razširitev
Vsak mejnik je opremljen z novimi predlaganimi API-ji in avtorji razširitev jih lahko preizkusijo. Kot vedno želimo vaše povratne informacije. To morate storiti, da preizkusite predlagani API:
- Uporabiti morate Insiders, ker se predlagani API-ji pogosto spreminjajo.
- To vrstico morate imeti v
package.json
datoteka vaše razširitve:"enableProposedApi": res
. - Kopirajte najnovejšo različico
vscode.proposed.d.ts
datoteko na izvorno lokacijo vašega projekta.
Ne morete objaviti razširitve, ki uporablja predlagani API. V naslednji izdaji lahko pride do prelomnih sprememb in nikoli ne želimo prekiniti obstoječih razširitev.
Ponudniki zložljivega obsega spremenijo dogodek
Ponudniki zložljivih obsegov lahko urejevalniku sporočijo, da je treba zgibne razpone posodobiti s pomočjo onDidChangeFoldingRanges
dogodek.
Za več podrobnosti in povratne informacije uporabite številka 108929.
API-ji za gesla
V okviru nadaljnjega dela na Ponudniki avtentikacije, smo uvedli API za shranjevanje in pridobivanje občutljivih informacij. V notranjosti deluje kot ovoj keytar knjižnica, ki jo VS Code uporablja za shranjevanje skrivnosti.
/** * Pridobite geslo, ki je bilo shranjeno s ključem. Vrne nedefinirano, če * ni gesla, ki bi ustrezalo temu ključu. * @param ključ Ključ, pod katerim je bilo shranjeno geslo. */ izvozna funkcija getPassword (ključ: niz): potem je mogoče; /** * Shrani geslo pod danim ključem. * @param ključ Ključ za shranjevanje gesla pod * @param vrednost Geslo */ izvozna funkcija setPassword (ključ: niz, vrednost: niz): potem je mogoče; /** * Odstrani geslo iz pomnilnika. * @param ključ Ključ, pod katerim je bilo shranjeno geslo. */ izvozna funkcija deletePassword (ključ: niz): nato mogoče; /** * Sproži se, ko je geslo nastavljeno ali izbrisano. */ izvoz const onDidChangePassword: dogodek;
inženiring
Poskrbite, da bodo VS Code Trusted Types skladne
Nadaljevali smo s prizadevanji, da bi VS Code "Trusted Types" dosegli skladnost. Cilj je preprečiti ranljivosti skriptov med spletnimi stranmi, ki temeljijo na DOM. Več o zaupanja vrednih vrstah lahko izveste na web.dev Spletno mesto Trusted Types in spremljajte naš napredek številka 103699.