Windows Tips & News

VS Code 1.51 rilasciato con miglioramenti delle schede bloccate e altro

Visual Studio Code è un'app popolare per gli sviluppatori. È un editor di codice ridefinito e ottimizzato per la creazione e il debug di moderne applicazioni web e cloud. VS Code viene fornito con una varietà di estensioni e helper che fanno davvero risparmiare tempo. È disponibile per tutte le principali piattaforme, inclusi Windows, MacOS e Linux. Microsoft ha rilasciato oggi una nuova versione dell'app che apporta miglioramenti a varie funzionalità dell'app, tra cui schede bloccate, integrazione con GitHub e molto altro.

Il codice VS 1.51 è degno di nota per le seguenti modifiche.

Nota: puoi scaricare l'app dal suo sito web ufficiale.

banco di lavoro

Schede appuntate più evidenti

Le schede bloccate ora mostreranno sempre la loro icona a forma di puntina, anche se inattive, per facilitarne l'identificazione. Se un editor è bloccato e contiene modifiche non salvate, l'icona riflette entrambi gli stati.

Gli alberi di estensione usano il passaggio del mouse personalizzato

Invece di utilizzare il tooltip nativo nelle visualizzazioni dell'albero delle estensioni, ora utilizziamo un hover personalizzato che è coerente su più piattaforme e si adatta meglio all'esperienza utente generale.

Installa un'estensione senza sincronizzare

Ora puoi installare un'estensione senza sincronizzarla mentre la sincronizzazione delle impostazioni è abilitata.

Tema: Luce GitHub

Installa un'estensione da Explorer

VS Code ora supporta l'installazione di un file VSIX di estensione da Explorer facendo clic con il pulsante destro del mouse su un file VSIX e scegliendo il Installa estensione VSIX voce del menu contestuale.

Comando di sfocatura in ingresso

Un nuovo interno banco da lavoro.azione.sfocatura è ora disponibile il comando, che rimuove lo stato attivo da qualsiasi input attivabile. Puoi assegnare una scorciatoia da tastiera per questo comando nel Preferenze scorciatoie da tastiera.

Terminale integrato

Eco locale

Apportare modifiche nel terminale richiede tradizionalmente che le informazioni vengano inviate al processo del terminale, elaborate e restituite a VS Code per essere interessate. Questo può essere lento quando si lavora su una connessione scarsa o distante con un server SSH o Codespace.

Questa versione aggiunge una modalità "eco locale" al terminale, che tenta di prevedere le modifiche e i movimenti del cursore effettuati localmente e mostrarli nell'interfaccia utente senza richiedere un round trip al server. Per impostazione predefinita, i caratteri previsti vengono visualizzati come "oscurati":

Ci sono due impostazioni che puoi usare per configurarlo:

  • terminal.integrated.localEchoLatencyThreshold configura la soglia di ritardo rilevata, in millisecondi, alla quale si attiverà l'eco locale. Questo può essere impostato su 0 per attivare sempre la funzione, oppure -1 per disabilitarlo. Il valore predefinito è 30.
  • terminal.integrated.localEchoStyle configura lo stile o il colore del carattere locale, il valore predefinito è debole.

IntelliSense

Suggerimenti ridimensionabili

Questa pietra miliare, abbiamo apportato diversi miglioramenti all'interfaccia utente dei suggerimenti. Innanzitutto, ora può essere ridimensionato. Trascina i lati o gli angoli per ridimensionare il controllo.

Tema: Luce GitHub, Carattere: FiraCode

La dimensione dell'elenco dei suggerimenti verrà salvata e ripristinata tra le sessioni. La dimensione del riquadro dei dettagli viene salvata solo per sessione, poiché tale dimensione tende ad essere più variabile. Anche il editor.suggest.maxVisibleSuggestions l'impostazione è diventata obsoleta.

Barra di stato per suggerimenti

Il controllo dei suggerimenti ora può anche mostrare la propria barra di stato nella parte inferiore della finestra. Abilitalo usando il editor.suggest.showStatusBar collocamento. Semplifica la commutazione dei dettagli e mostra se un completamento supporta l'inserimento, la sostituzione o entrambi.

Tema: Luce GitHub, Carattere: FiraCode

Nell'esempio sopra, selezionando "Inserisci" si ottiene Math.floorceil e selezionando "Sostituisci" risultati in Math.floor.

Il nuovo editor.suggest.insertMode L'impostazione consente di configurare se si preferisce inserire o sostituire. Quando un suggerimento supporta entrambi, la tua preferenza sarà l'impostazione predefinita.

Sposta il cursore per selezionare i suggerimenti

Ultimo ma non meno importante, ora puoi spostare il cursore mentre vengono visualizzati i suggerimenti. Ad esempio, puoi attivare i suggerimenti alla fine di una parola, spostarti a sinistra per visualizzare altri suggerimenti e quindi utilizzare sostituisci per sovrascrivere la parola.

Tema: Luce GitHub

Emmet

Gli snippet personalizzati in Emmet sono tornati. Inoltre, gli snippet ora si aggiornano automaticamente al salvataggio del file degli snippet o all'aggiornamento del emmet.extensionsPath collocamento.

Controllo della fonte

La casella di input del controllo del codice sorgente salva la cronologia dei messaggi di commit

Questo si rivolge a richiesta di funzionalità per navigare nella cronologia dei commit di SCM. premere  (Windows, Linux Su) e  (Windows, Linux Fuori uso) per visualizzare rispettivamente i commit precedenti e successivi. Per passare direttamente alla prima e all'ultima posizione della casella di immissione, premere Alt insieme al tasto freccia corrispondente.

Git: tagga i comandi nel sottomenu

I comandi Git relativi ai tag sono stati aggiunti a ... Menù git.

Git: comando Rebase

Una nuova Git: Rebase ramo... è stato aggiunto il comando che consente di eseguire il rebase di un ramo utilizzando l'interfaccia utente.

Git: comando clone ricorsivo

Con il Git: clone (ricorsivo) comando, ora puoi clonare ricorsivamente i repository Git, inclusi i relativi sottomoduli Git nidificati.

Timeline: rendering dello shortcode Emoji

Ora eseguiamo il rendering di shortcode emoji, come :Sorridi:, nella vista Timeline.

Le lingue

Markdown selezione intelligente

Espandi e riduci la selezione nei documenti Markdown utilizzando i seguenti nuovi comandi:

  • Espandere: ⌃⇧⌘→ (Windows, Linux Maiusc+Alt+Destra)
  • Restringersi: ⌃⇧⌘← (Windows, Linux Maiusc+Alt+Sinistra)

La selezione si applica a quanto segue e segue un modello gerarchico tradizionale:

  • intestazioni
  • Elenchi
  • Blocca virgolette
  • Blocchi di codice recintati
  • Blocchi di codice HTML
  • paragrafi

Opzione di formattazione parentesi graffa vuota per JavaScript e TypeScript

Il nuovo javascript.format.insertSpaceAfterOpeningAndBeforeClosingVuotoBretelle e typescript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces l'opzione di configurazione della formattazione controlla se gli spazi vengono inseriti tra parentesi graffe vuote. Il valore predefinito per queste impostazioni è true. Ad esempio, per JavaScript:

class Foo { doFoo() { } }

Collocamento "javascript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces": false e formattando il codice si ottiene:

class Foo { doFoo() {} // Nota che lo spazio è stato rimosso. }

Supporto browser

Scarica le cartelle (Edge, Chrome)

Sfruttando il nuovo Accesso al file system API, VS Code in esecuzione in un browser può ora offrire un'azione di download per le cartelle da Esplora file per scaricare tutti i file e le cartelle su disco.

Nota: Ciò richiede una versione recente di Microsoft Edge o Google Chrome.

Notifica dell'area di lavoro aperta

Se apri una cartella che contiene .code-workspace file al livello superiore, ora vedrai una notifica che ti chiede di aprirlo. Questo è sempre stato il caso in VS Code per desktop e ora funzionerà anche nel browser.

Prevenire la chiusura accidentale

Una nuova impostazione window.confirmBeforeClose è stato aggiunto per mostrare una finestra di dialogo di conferma prima di chiudere o lasciare il workbench.

I valori possibili sono:

  • solo tastiera La conferma verrà mostrata solo quando si utilizza una combinazione di tasti per chiudere (ad esempio, W (Windows, Linux Ctrl+W)). (predefinito)
  • sempre: La finestra di dialogo di conferma verrà sempre mostrata, anche se chiudi con un gesto del mouse.
  • mai: La conferma non verrà mai mostrata.

Nota: Questa impostazione potrebbe non coprire tutti i casi. I browser possono ancora decidere di chiudere una scheda o una finestra senza conferma.

Contributi alle estensioni

Richieste e problemi di pull di GitHub

Proseguono i lavori sul Richieste e problemi di pull di GitHub estensione, che consente di lavorare, creare e gestire richieste pull e problemi.

Per conoscere tutte le nuove funzionalità e gli aggiornamenti, puoi vedere la versione completa registro delle modifiche per la 0.22.0 rilascio della proroga.

Sviluppo a distanza

Proseguono i lavori sul Estensioni di sviluppo remoto, che consentono di utilizzare un contenitore, una macchina remota o il Sottosistema Windows per Linux (WSL) come ambiente di sviluppo completo.

I punti salienti delle funzionalità in 1.51 includono:

  • Possibilità di persistere/riconnettersi alle sessioni del terminale.
  • Esperienza di port forwarding migliorata.

Puoi conoscere le nuove funzionalità delle estensioni e le correzioni di bug nel Note sulla versione per lo sviluppo remoto.

Funzionalità di anteprima

Le funzionalità di anteprima non sono pronte per il rilascio, ma sono sufficientemente funzionali da essere utilizzate. Accogliamo con favore i tuoi primi feedback mentre sono in fase di sviluppo.

Sincronizzazione impostazioni

La sincronizzazione delle impostazioni ora sincronizza lo stato globale delle estensioni. Le estensioni dovranno fornire lo stato per la sincronizzazione utilizzando la nuova introduzione setKeysForSync API.

Ricorda le credenziali del proxy

Stiamo revisionando la finestra di dialogo di accesso che mostra quando una connessione di rete richiede l'autenticazione con un proxy. Una nuova impostazione, window.enableExperimentalProxyLoginDialog: true, abiliterà questa nuova esperienza che prevediamo di rendere predefinita in una versione futura.

Tema: Luce GitHub

La finestra di dialogo apparirà all'interno della finestra di VS Code e offrirà un modo per ricordare le credenziali in modo da non doverle fornire ogni volta che si avvia VS Code. Le credenziali verranno archiviate nell'archivio credenziali standard del sistema operativo (portachiavi su macOS, Windows Credential Manager su Windows e portachiavi gnome su Linux).

Mostriamo ancora questa finestra di dialogo solo una volta per sessione, ma potremmo rivedere questa decisione in futuro. Vedrai apparire di nuovo la finestra di dialogo nel caso in cui le credenziali che hai selezionato per essere ricordate non siano valide. Fornirli di nuovo ti consente di cambiarli.

Abilita questa opzione e facci sapere se qualcosa non funziona come previsto tramite il nostro tracciatore di problemi.

Supporto per TypeScript 4.1 beta

VS Code supporta il TypeScript 4.1 beta e costruzioni notturne. L'aggiornamento 4.1 introduce alcune nuove funzionalità del linguaggio TypeScript, come il supporto per tipi condizionali ricorsivi, così come miglioramenti degli strumenti. Un'area di interesse è stata aggiungendo supporto iniziale per @vedere tag nei commenti JSDoc.

Per iniziare a utilizzare le build notturne di TypeScript 4.1, installa semplicemente il Estensione TypeScript Nightly. Per favore condividi feedback e facci sapere se riscontri bug con TypeScript 4.1.

Creazione di estensioni

Campioni di estensione aggiornati

Abbiamo aggiornato alcuni dei nostri campioni di estensione per includere gli stili predefiniti di VS Code che sono collegati ai nostri token del tema colore. Ciò significa che gli elementi comuni (testo, pulsanti, input) saranno temibili e corrisponderanno agli stili predefiniti nel prodotto. Di seguito sono elencate le estensioni che includono questo:

  • custom-editor-campione
  • webview-campione
  • webview-view-sample

Codicon colori negli alberi

Con la finalizzazione del Icona del tema API del colore, gli autori di estensioni possono utilizzare i colori del tema sui codicon nelle visualizzazioni ad albero personalizzate.

Sincronizza stato globale

Le estensioni possono ora sincronizzare il loro stato globale fornendo le chiavi, i cui valori dovrebbero essere sincronizzati quando Settings Sync è abilitato, utilizzando la nuova introduzione setKeysForSync API in stato globale ricordo.

/** * Imposta le chiavi i cui valori devono essere sincronizzati tra i dispositivi durante la sincronizzazione dei dati utente * come configurazione, estensioni e ricordi. * * Nota che questa funzione definisce l'intero set di chiavi i cui valori sono sincronizzati: * - chiamandolo con un array vuoto interrompe la sincronizzazione per questo ricordo * - chiamandolo con un l'array non vuoto sostituisce tutte le chiavi i cui valori sono sincronizzati * * Per ogni dato insieme di chiavi questa funzione deve essere chiamata solo una volta ma non c'è alcun danno nel * chiamarla ripetutamente. * * @param keys L'insieme di chiavi i cui valori sono sincronizzati. */ setKeysForSync (chiavi: string[]): void;

Commento le estensioni possono ora controllare la visibilità del pulsante di risposta in un thread di commenti con una nuova proprietà, CommentThread#canReply. Quando è impostato su falso, gli utenti non vedranno il pulsante di risposta o la casella dei commenti nel thread dei commenti.

API di estensione proposte

Ogni pietra miliare viene fornita con nuove API proposte e gli autori di estensioni possono provarle. Come sempre, vogliamo il tuo feedback. Questo è ciò che devi fare per provare un'API proposta:

  • È necessario utilizzare Insider perché le API proposte cambiano frequentemente.
  • Devi avere questa riga nel pacchetto.json file della tua estensione: "enableProposedApi": true.
  • Copia l'ultima versione di vscode.proposed.d.ts file nella posizione di origine del progetto.

Non puoi pubblicare un'estensione che utilizza un'API proposta. Potrebbero esserci modifiche sostanziali nella prossima versione e non vorremmo mai interrompere le estensioni esistenti.

I fornitori di gamma pieghevole cambiano evento

I fornitori di intervalli di piegatura possono segnalare all'editore che gli intervalli di piegatura devono essere aggiornati utilizzando il onDidChangeFoldingRanges evento.

Per maggiori dettagli e per fornire feedback, utilizzare problema #108929.

API delle password

Come parte del continuo lavoro su Fornitori di autenticazione, abbiamo introdotto l'API per l'archiviazione e il recupero di informazioni sensibili. Internamente, questo funge da involucro del chiave di volta libreria che VS Code utilizza per memorizzare i segreti.

/** * Recupera una password che è stata memorizzata con key. Restituisce undefined se * non esiste alcuna password che corrisponda a quella chiave. * @param key La chiave con cui è stata memorizzata la password. */ funzione di esportazione getPassword (chiave: stringa): attivabile; /** * Memorizza una password sotto una data chiave. * @param key La chiave per memorizzare la password in * @param value La password */ funzione di esportazione setPassword (chiave: stringa, valore: stringa): attivabile; /** * Rimuove una password dalla memoria. * @param key La chiave con cui è stata memorizzata la password. */ funzione di esportazione deletePassword (chiave: stringa): attivabile; /** * Si attiva quando viene impostata o eliminata una password. */ export const onDidChangePassword: Event;

Ingegneria

Rendere compatibile VS Code Trusted Types

Abbiamo continuato a impegnarci per rendere conformi i "Tipi attendibili" di VS Code. L'obiettivo è prevenire le vulnerabilità di cross-site scripting basate su DOM. Puoi saperne di più sui tipi attendibili su web.dev Sito di tipi attendibili e segui i nostri progressi in problema #103699.

Come disabilitare i pannelli perimetrali (Chars Bar e Switcher) in Windows 8

Come disabilitare i pannelli perimetrali (Chars Bar e Switcher) in Windows 8

CONSIGLIATO: Fare clic qui per risolvere i problemi di Windows e ottimizzare le prestazioni del s...

Leggi di più

Apri il prompt dei comandi con privilegi elevati da un'istanza non elevata

Apri il prompt dei comandi con privilegi elevati da un'istanza non elevata

CONSIGLIATO: Fare clic qui per risolvere i problemi di Windows e ottimizzare le prestazioni del s...

Leggi di più

Come disabilitare i pannelli perimetrali (Chars Bar e Switcher) in Windows 8

Come disabilitare i pannelli perimetrali (Chars Bar e Switcher) in Windows 8

Windows 8 ha introdotto la nuova "interfaccia utente moderna", precedentemente nota come Metro. I...

Leggi di più