IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Visual Studio Code 1.53 est disponible avec de nouvelles boîtes de dialogue de confirmation
Et des améliorations pour les performances et les fonctionnalités d'Emmet

Le , par Bill Fassinou

142PARTAGES

4  0 
Microsoft vient de publier la version de janvier 2021 de son éditeur de texte open source Visual Studio Code (VS Code). Comme à l'accoutumée, cette version introduit également de nouvelles fonctionnalités pour l'éditeur, des améliorations de performances et quelques autres modifications. Voici ci-dessous les changements les plus notables de cette nouvelle version de l'éditeur de texte.

Workbench

Onglets enveloppants

Un nouveau paramètre "workbench.editor.wrapTabs" a été ajouté à Visual Studio Code et permet aux onglets de l'éditeur de s'habiller (s'envelopper) au lieu d'afficher une barre de défilement. Si l'espace disponible pour les onglets est trop petit, la fonction d'habillage sera temporairement désactivée, et vous verrez l'ancienne expérience avec une barre de défilement. Vous pouvez empêcher les onglets enveloppés de devenir trop grands en configurant "workbench.editor.tabSizing: shrink".



Onglets décoratifs

Deux nouveaux paramètres vous permettent de configurer si les onglets de l'éditeur affichent des décorations, telles que l'état de git ou les diagnostics. Utilisez le paramètre "workbench.editor.decorations.colors" pour décorer les onglets avec des couleurs, comme rouge/vert pour les fichiers comportant des erreurs et des avertissements, et utilisez "workbench.editor.decorations.badges" pour décorer les onglets avec des badges, comme M pour "git modified".



Open Editors caché par défaut

La vue "Open Editors" est maintenant cachée par défaut. Cela ne concerne que les nouveaux utilisateurs de VS Code, et les utilisateurs existants continueront à voir la vue "Open Editors". L'équipe de développement de l'éditeur a indiqué qu'elle a voulu présenter un aspect plus clair dans la vue "Explorateur" et pense que les fonctionnalités de la vue "Open Editors" sont couvertes dans d'autres zones du workbench, comme les onglets. La visibilité de la vue "Open Editors" peut être contrôlée par le menu contextuel dans la zone de titre de la vue "Explorer".



Nouveaux boîte de dialogue de confirmation

Si un utilisateur tente de quitter VS Code alors qu'une opération sur un fichier est en cours, l'éditeur affiche maintenant un dialogue de confirmation. Il affiche aussi un dialogue de confirmation pour les opérations d'annulation destructives depuis l'explorateur. L'équipe a déclaré que son objectif est de toujours éviter la perte de données, c'est pourquoi elle a introduit ces boîtes de dialogues pour s'assurer que cela ne se produise pas par accident.

Nouveau paramètre workbench.editor.enablePreviewFromCodeNavigation

Un nouveau paramètre workbench.editor.enablePreviewFromCodeNavigation vous permet d'activer explicitement les éditeurs de prévisualisation à partir des navigations de code, comme "Go to Definition". Dans la version précédente, l'équipe a changé la valeur par défaut pour ouvrir les éditeurs normalement à partir des navigations de code. Ce paramètre vous permet de choisir l'option que vous préférez.

Améliorations des performances et des fonctionnalités d'Emmet

Emmet travaille désormais beaucoup plus rapidement dans les fichiers HTML et CSS. L'extension utilise également la dernière version d'Emmet, ce qui signifie que des fonctionnalités telles que les comptes à rebours sont désormais prises en charge.



Mode de recherche par défaut

Le paramètre "search.mode" est maintenant disponible pour permettre de configurer les commandes de recherche de l'interface utilisateur comme "Search: Find in Files", et les entrées du menu contextuel de l'explorateur "Find in Folder..." et "Find in Workspace" utilisent, avec les options de :

  • view : comportement existant par défaut, recherche en utilisant la vue de recherche dans la barre latérale ou le panneau ;
  • newEditor : rechercher dans un nouvel éditeur de recherche ;
  • existingEditor : réutilisation d'un éditeur de recherche ouvert existant, s'il existe, sinon création d'un nouvel éditeur ;

Dans le passé, il était conseillé de configurer l'interface utilisateur de recherche par défaut en modifiant les raccourcis clavier. Cela n'est plus nécessaire et ces raccourcis clavier peuvent être supprimés en faveur de ce paramètre.

Éditeur

  • il y a de nouvelles variables d'extrait de code pour l'insertion des UUID, et pour l'insertion du chemin relatif du fichier courant ;
  • il existe une nouvelle commande "Transform to Snake Case" qui convertira le texte sélectionné en casse serpent (par exemple, myVariable -> my_variable).

Débogage

Démarrer la même configuration de débogage plusieurs fois

L'équipe a annoncé qu'elle a supprimé la restriction selon laquelle une seule session de débogage peut être lancée à partir d'une configuration de lancement. Vous pouvez maintenant démarrer plusieurs sessions simultanées en appuyant sur le bouton vert d'exécution dans le menu déroulant de la configuration de débogage un nombre illimité de fois. Chaque session de débogage aura un numéro ajouté à la fin du nom afin de pouvoir les distinguer facilement.

Terminal intégré

Contrôle des flux

La connexion entre les processus du terminal et le frontend est maintenant protégée par un mécanisme de contrôle de flux qui mettra le processus en pause lorsque le frontend aura besoin de rattraper son retard. Auparavant, cela entraînait des problèmes de stabilité/performance lors de l'utilisation d'un terminal dans une connexion à distance. Ce changement ne s'applique qu'à l'utilisation de la fonctionnalité de remoting de VS Code pour l'instant, mais l'équipe a annoncé qu'il sera bientôt utilisé pour les fenêtres locales, après qu'elle aura ajusté l'endroit où les processus du terminal seront lancés.

Meilleure prise en charge de PowerShell 7

VS Code prend en charge désormais PowerShell 7, qui est la dernière version de PowerShell, qui peut être installée sur Windows, macOS et Linux. Si vous installez PowerShell 7 sur Windows, VS Code l'utilisera comme Shell par défaut. Si vous n'avez pas PowerShell 7 installé, VS Code continuera à utiliser Windows PowerShell comme Shell par défaut. De plus, si vous ouvrez le Quick Pick du Shell par défaut, l'énumération de toutes les versions de PowerShell installées s'affichera (installation MSI, installation Microsoft Store, etc.).



L'équipe note que la découverte et l'énumération des Shells par défaut de macOS et Linux ne sont pas affectées par cela, car elles utilisent le jeu par défaut du système d'exploitation et de /etc/shells respectivement. De plus, le paramètre "terminal.integrated.shell.windows" est toujours respecté.

Langues

Prévisualisation des mises à jour automatiques

Avec la sortie de VS Code 1.53, l'aperçu de Markdown se met désormais automatiquement à jour lorsque des images intégrées sont modifiées sur le disque. Cela peut se produire lorsque vous modifiez le fichier image en utilisant un programme externe ou à partir d'une opération de contrôle de la source, comme le changement de branche.



Bloc-notes

Plan et fil d'Ariane

Les cellules du bloc-notes s'affichent désormais dans le volet du plan et dans le fil d'Ariane. Cela permet une meilleure vue d'ensemble et une navigation rapide dans les blocs-notes.



Deux paramètres vous permettent de définir si les cellules de code font partie du schéma ou non :

  • notebook.outline.showCodeCells : si le contour contient des cellules de code ;
  • notebook.breadcrumbs.showCodeCells : si le fil d'Ariane contient des cellules de code ;

Éditeur de différences pour Bloc-notes

L'éditeur de différences pour les documents du Bloc-Notes permet maintenant de rendre des résultats riches comme des tableaux, des images ou des sorties HTML. Cette fonction est actuellement disponible dans "Insiders" et vous pouvez installer l'extension Jupyter ou ".NET Interactive" pour avoir un aperçu. L'équipe a aussi amélioré les performances de défilement afin d'assurer une expérience fluide lors de la navigation des changements dans l'éditeur de différences.

Contrôle des sources

Git

  • l'équipe a ajouté une nouvelle commande à la palette de commandes de Git. "Git: Open All Changes" ouvre tous les fichiers modifiés et non suivis ;
  • VS Code vous avertira désormais chaque fois que vous tenterez d'extraire (ou de synchroniser) et que la branche actuelle semble avoir été rebasée (par exemple, lorsque l'historique publié a été réécrit).

Git : Nouveaux paramètres

De nouveaux paramètres Git ont été ajoutés :

  • git.requireGitUserConfig : dans VS Code 1.51, l'équipe a apporté un changement de confidentialité pour exiger un nom d'utilisateur ou une adresse e-mail avant de valider. Vous pouvez maintenant désactiver cette exigence si vous le souhaitez ;
  • git.ignoreRebaseWarning : désactive le nouvel avertissement lorsque vous extrayez (ou synchronisez) et que la branche actuelle a été rebasée ;
  • git.autofetch : l'option "Auto fetch" peut maintenant être réglée sur "all" pour récupérer toutes les remotes.

Fonctionnalités expérimentales

Recherche dans les éditeurs ouverts

Cette version s'accompagne d'un support expérimental pour la recherche dans les éditeurs ouverts, qui est une fonctionnalité très demandée depuis un certain temps. Cette fonctionnalité est activée par défaut dans Insiders, et peut être activée avec le paramètre "search.experimental.searchInOpenEditors" dans Stable.



Support de TypeScript 4.2

Cette version continue à améliorer le support pour la prochaine version du surensemble de Microsoft TypeScript 4.2. Voici quelques-unes des améliorations de l'éditeur qu'il permet :

  • les modèles JS Doc génèrent désormais un @return ;
  • les API DOM obsolètes sont désormais marquées comme telles ;
  • une solution rapide pour déclarer les fonctions manquantes ;
  • support natif de la mise en évidence sémantique, au lieu d'utiliser un plug-in de service TypeScript ;
  • pour commencer à utiliser les nightly builds de TypeScript 4.2, il suffit d'installer l'extension TypeScript Nightly.

Nouvelle commande Find References to File

Si vous utilisez TypeScript 4.2, vous pouvez également essayer la nouvelle commande "Find References to File" pour JavaScript et TypeScript afin de trouver tous les endroits où un fichier est référencé.



Vous pouvez déclencher cette commande de plusieurs façons différentes :

  • pour le fichier actif à l'aide de TypeScript: Find References to File ;
  • cliquez avec le bouton droit sur un onglet de l'éditeur et sélectionnez "Find References to File" ;
  • cliquez avec le bouton droit sur un fichier dans l'explorateur de fichiers et sélectionnez "Find References to File".

Création d'extension

Thèmes des icônes des produits

Les API des thèmes d'icônes de produits sont désormais stables. Les auteurs de thèmes peuvent publier des thèmes qui remplacent les icônes intégrées utilisées dans les vues et les éditeurs. Les utilisateurs peuvent passer à de nouveaux thèmes avec la commande "Preferences: Product Icon Theme".

Couleur de fond de l'entrée de la barre d'état API

La couleur de fond proposée précédemment pour l'API StatusBarItem est désormais stable. Actuellement, seul le fichier "statusBarItem.errorBackground" est pris en charge pour éviter que la barre d'état ne soit trop colorée. L'équipe a annoncé qu'elle va étendre cette prise en charge à d'autres couleurs à l'avenir. Le cas d'utilisation de cette nouvelle API est de permettre aux extensions d'indiquer les conditions d'erreur dans la barre d'état. Par exemple, l'extension ESLint peut décider d'utiliser cette couleur pour alerter l'utilisateur qu'ESLint n'a pas encore été activé pour un espace de travail.



API de l'extension Git

  • un nouvel événement API.onDidPublish a été ajouté, qui se déclenche lorsqu'un dépôt ou une branche est publié à partir de l'extension de Git pour VS Code ;
  • une nouvelle méthode API.openRepository a été ajoutée, pour permettre aux extensions d'indiquer à l'extension Git les autres dépôts Git, par exemple, en dehors de l'espace de travail, ou plus profondément imbriqués à l'intérieur de celui-ci ;
  • la méthode API.push dispose maintenant d'un paramètre de force optionnel supplémentaire ;
  • CommitOptions de la méthode API.commit a maintenant un requireUserConfig optionnel supplémentaire pour éviter de demander un utilisateur ou une adresse e-mail.

Ingénierie

Améliorations des performances

L'équipe a déclaré qu'il y a eu un travail considérable autour des infrastructures GitHub Actions et Azure DevOps Pipelines. Grâce à ces améliorations, les constructions sont désormais plus rapides et plus fréquentes. La construction de VS Code prend désormais deux fois moins de temps qu'auparavant.



Support d'Electron 11

Dans cette étape, l'équipe a terminé l'exploration pour une prise en charge complète d'Electron 11 VS Code. Pour l'équipe, il s'agit d'une étape importante dans la prise en charge d'Electron 11, qui s'accompagne de Chrome 87.0.4280.141 et de Node.js 12.18.3. Toutefois, il faut noter qu'il y a certains changements de rupture. L'équipe a annoncé qu'elle a dû modifier son image de construction pour utiliser Ubuntu-18.04 pour les machines Linux x64 pour prendre en charge Electron. Cette mise à jour a augmenté le minimum requis par GLIBCXX à 3.4.22 pour les modules natifs, ce qui rompt le support des anciennes distributions sur le bureau.

Après quelques modifications du système de compilation, l'équipe a pu revenir en arrière et utiliser la chaîne d'outils gcc-5, ce qui porte la configuration minimale requise pour GLIBCXX à 3.4.21. Avec ces changements, voici les distros connues pour fonctionner avec l'application x64 :

  • Ubuntu 16.04 et plus récent ;
  • Fedora 24 et plus récent ;
  • Debian 9 et plus récent ;
  • CentOS 8 et plus récent.

Les composants de développement à distance continuent d'utiliser la version 3.4.19 de GLIBCXX, il n'y a donc pas de changement dans les plateformes prises en charge. Une solution pour les autres distributions consisterait à installer la chaîne d'outils gcc-5 ou supérieure pour éviter l'erreur GLIBCXX avec les modules natifs, mais il n'y a aucune garantie que tous les composants du runtime fonctionneront correctement. Il est également possible d'utiliser la suite de développement à distance pour travailler avec les anciennes distributions.

Apple Silicon Insiders

Grâce à Electron 11, l'équipe continue à faire des progrès pour prendre en charge pleinement Apple Silicon. Pour le build Insiders, elle propose trois variantes de téléchargement sous macOS :

  • une version x64 pour les appareils Mac avec puce Intel ;
  • une version arm64 pour les appareils Mac avec puce en silicium d'Apple ;
  • une version universelle pouvant fonctionner en natif sur l'un ou l'autre des appareils ci-dessus.

La version universelle est l'option de téléchargement par défaut sur le site Web. L'équipe a déclaré qu'elle s'efforce de supprimer les téléchargements spécifiques à l'architecture dans le courant de l'année. D'autres mises à jour suivront dans les prochaines itérations. Les applications universelles sont créées en regroupant les versions x64 et arm64 des applications, d'où une augmentation significative de la taille des téléchargements pour la première installation, mais simplifie la transition pour un utilisateur vers les nouveaux Apple Silicon Macs.

En outre, l'équipe annonce avoir initialement prévu de rendre stable cette itération pour les Apple Silicon builds. Cependant, à la fin de l'itération, des utilisateurs ont signalé que sur macOS Big Sur 11.2, le chargement d'un module WASM faisait planter l'hôte de l'extension.

Corrections notables

  • changer debug.console.wordWrap ne devrait pas nécessiter de redémarrage ;
  • terminal rempli de ^[[D^[[D^[[D^[[D lors d'un clic alt-clic sur un lien ;
  • ne pas inclure les paramètres modifiés avec des valeurs par défaut dans les paramètres utilisateur ;
  • la sortie du débogueur est décalée et instable lors du défilement ;
  • le bord de la fenêtre entraîne un léger décalage des vues sur le Web ;
  • "Toggle Editor Type" crée une nouvelle vue corrompue qui ne peut pas être ouverte ;
  • l'action dans l'explorateur est interrompue peu après la création d'un dossier ;
  • accessibilité des liens dans le widget d'exception ;
  • taille maximale de la pile d'appel dépassée pour les longs chemins d'accès aux fichiers avec des éditeurs personnalisés ;
  • informer les utilisateurs des éditeurs qui n'ont pas pu être sauvegardés pour hotexit ;
  • Watch: copy value doit respecter la multisélection.

Source : Visual Studio Code January 2021 (v1.53)

Et vous ?

Que pensez-vous des nouvelles fonctionnalités de Visual Studio Code 1.53 ?

Voir aussi

La version 1.51 de Visual Studio Code est disponible, rend les onglets épinglés plus visibles et permet d'installer une extension à partir de l'explorateur de fichier

Visual Studio Code 1.50 s'accompagne de l'amélioration de l'expérience avec les onglets épinglés, ainsi que de l'amélioration de l'expérience de débogage

Adobe XD, une extension pour Visual Studio Code, est disponible pour créer et consommer des systèmes de design, il permet aux développeurs de mapper visuellement les sources de conception

Debug Visualizer, une extension VS Code pour visualiser les structures de données lors du débogage qui fonctionnerait avec tous les langages qui peuvent être débogués dans VS Code

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de smarties
Expert confirmé https://www.developpez.com
Le 08/07/2022 à 10:39
Cool mais je continue d'utiliser VSCodium afin de me passer des télémétrie de M$
5  1 
Avatar de pierre.E
Membre confirmé https://www.developpez.com
Le 12/03/2021 à 18:18
moi j'aimerais surtout un bouton pour chaque langage avec les extensions utiles pour éviter de me coltiner la recherche d'extension
2  0 
Avatar de LittleWhite
Responsable 2D/3D/Jeux https://www.developpez.com
Le 13/06/2021 à 20:08
Bonjour,

Je pense que le Workspace Trust fait suite à un proof of concept d'utilisation de l'analyseur de code de Visual Studio Code sur une macro Rust qui permet d'effectuer des actions malveillantes sur le PC. Je n'arrive plus à retrouver le POC .
1  0 
Avatar de pierre.E
Membre confirmé https://www.developpez.com
Le 13/02/2021 à 14:00
moi j aimerais bien des boutons pour changer installer extensions
si je travail en c# en python en javascript sans avoir à me coltiner la recherche des principales extensions et l activation désactivation de celle dont je ne me sert pas
0  0 
Avatar de ManPaq
Membre averti https://www.developpez.com
Le 13/03/2021 à 15:29
codium est bien et offre toutes les fonctionnalités de vs code sans le traçage, comme il a été fait mention dans un article précédent. A l'instar de son avatar il tourne sur x86, 64, arm, linux, Apple, chrome OS... Pourtant, particulièrement sur ce dernier dans le container linux, je le trouve excessivement lourd et les suggestions tellement envahissantes en particulier sur un écran réduit en plus du temps de chargement des extensions et les messages d'erreurs sans intérêts!
Je ne sais si c'est dû à électron et une interface héritée plutôt que native mais dans mon Linux bêta vim est bien plus convivial.
Attention à rester KISS!
0  0 
Avatar de air-dex
Membre expert https://www.developpez.com
Le 20/03/2021 à 4:17
Citation Envoyé par pierre.E Voir le message
moi j'aimerais surtout un bouton pour chaque langage avec les extensions utiles pour éviter de me coltiner la recherche d'extension
+1 dans le sens où VS Code évolue mais reste rustre au possible dans son interface. En effet la recherche d'extensions est clairement perfectible.

Sur ce point là si quelqu'un a une piste pour déplacer le débogage en bas au lieu de la colonne de gauche je suis preneur.
0  0 
Avatar de arnofly
Membre confirmé https://www.developpez.com
Le 12/06/2021 à 20:20
Ouais... Un peu lourdingue "Workspace Trust, je trouve. Heureusement qu'il est possible de désactiver cette fonctionnalité.
0  0 
Avatar de Beginner.
Membre expert https://www.developpez.com
Le 02/07/2021 à 22:00
Salut,

Citation Envoyé par arnofly Voir le message
Ouais... Un peu lourdingue "Workspace Trust, je trouve. Heureusement qu'il est possible de désactiver cette fonctionnalité.
Oui je suis d'accord...
Je crois que c'est à cause de ce truc que je ne peux plus utiliser VS CODE...
J'ai un message du genre "cette application ne peut pas s’exécuter sur cet ordinateur"...

Comment on désactive cette fonctionnalité qui se comporte comme un virus ?
0  0 
Avatar de Stéphane le calme
Chroniqueur Actualités https://www.developpez.com
Le 06/09/2021 à 11:01
Visual Studio Code 1.60 est disponible et apporte la détection automatique du langage,
ainsi que la possibilité de garder les éditeurs de terminal ouverts au lieu de les fermer lorsqu'ils ne parviennent pas à être restaurés

Planche de travail

Détection automatique du langage

Dans l'avant dernière version, Microsoft a introduit une fonctionnalité expérimentale pour les fichiers sans titre qui définirait automatiquement le mode de langage du fichier en fonction du contenu. La fonction de détection automatique du langage utilise l'apprentissage automatique pour deviner le langage et le modèle d'apprentissage automatique s'exécute entièrement en local sur votre machine. Le modèle est alimenté par la bibliothèque ML open source, Tensorflow.js.

Dans cette version, Microsoft active la détection automatique du langage par défaut et étend également la détection pour inclure les fichiers qui n'ont pas d'extension de fichier. Dans Notebooks, Microsoft propose un moyen simple de demander la détection du langage à l'aide du sélecteur de langage.

Et Microsoft d'expliquer :

« Nous avons ajouté cette fonctionnalité car nous avons constaté que certains nouveaux utilisateurs de VS Code ne savaient pas comment définir le mode de langage et ne savaient pas que cela était nécessaire pour obtenir le riche ensemble de fonctionnalités de VS Code (colorisation du langage et recommandations d'extension). Permettre aux nouveaux utilisateurs de voir rapidement les fonctionnalités de langage et les extensions disponibles pour VS Code les aide à se lancer dans l'éditeur.

« De plus, les utilisateurs expérimentés qui utilisent des éditeurs de texte sans titre comme bloc-notes n'ont plus besoin de définir explicitement le mode de langage, ce qui, nous l'espérons, rationalisera leur flux de travail ».

Vous trouverez ci-dessous plusieurs scénarios amusants activés par la détection automatique du langage.

Prenez un exemple en ligne et collez-le dans un éditeur sans titre*:


Option de détection automatique dans le sélecteur de langage Notebooks*:


Boîte de dialogue de confirmation de l'éditeur de terminal

La boîte de dialogue présentée lors de la fermeture d'un éditeur de terminal avec des processus enfants en cours d'exécution est désormais spécifique à l'éditeur de terminal et n'offrira plus de moyen d'effectuer l'action « Enregistrer » le terminal.


Gardez les éditeurs ouverts au lieu de les fermer lorsqu'ils ne parviennent pas à être restaurés

Auparavant, lorsqu'un éditeur ne parvenait pas à être restauré après le rechargement de la fenêtre ou le redémarrage de l'application, l'éditeur se fermait automatiquement jusqu'à ce qu'un éditeur se chargeant avec succès soit trouvé. Ce comportement a conduit à des résultats frustrants, où une mise en page d'éditeur soigneusement créée disparaîtrait en raison de la fermeture des éditeurs.

Avec cette version, un éditeur qui a déjà été ouvert avec succès ne se fermera pas, même s'il ne parvient pas à se restaurer. L'éditeur signale le problème et propose de retenter l'opération.

Ouvrir l'éditeur de paramètres sur le côté

Il est désormais possible d'ouvrir l'éditeur de paramètres dans un groupe latéral en configurant un raccourci clavier à l'aide de l'argument openToSide.

Code : Sélectionner tout
1
2
3
4
5
6
7
{
  "key": "cmd+,",
  "command": "workbench.action.openSettings",
  "args": {
    "openToSide": true
  }
}
Cela fonctionne également avec la commande workbench.action.openSettingsJson.

Éditeur

Colorisation des paires de crochets haute performance

L'éditeur prend désormais en charge la colorisation native des paires de crochets.


La colorisation des paires de crochets peut être activée en définissant editor.bracketPairColorization.enabled sur true. Toutes les couleurs sont thématiques et jusqu'à six couleurs peuvent être configurées.

Suggestions en ligne dans la saisie semi-automatique

Les suggestions intégrées peuvent désormais étendre l'aperçu des suggestions lorsque le widget de saisie semi-automatique est affiché. Si une suggestion sélectionnée dans le widget de saisie semi-automatique peut être étendue par un fournisseur de saisie semi-automatique, l'extension est affichée en italique. Appuyer une fois sur Tab n'acceptera toujours que la suggestion de saisie semi-automatique. Appuyez une deuxième fois sur Tab pour accepter la suggestion en ligne.

Cette fonctionnalité nécessite l'activation de l'aperçu de suggestion ("editor.suggest.preview": true).

Terminal

Rendu personnalisé de box drawing et block element characters

Box drawing et block element characters utilisent désormais des glyphes personnalisés au pixel près au lieu d'utiliser la police lorsque l'accélération GPU est activée (terminal.integrated.gpuAcceleration). Cela signifie, par exemple, que les cases sont dessinées sans espaces, même si vous définissez la hauteur des lignes ou l'espacement des lettres dans le terminal.


Reconnexion plus rapide après rechargement de la fenêtre

Auparavant, lors du rechargement d'une fenêtre, l'analyse de l'état du tampon d'un terminal pouvait prendre jusqu'à 300 ms et il y avait également une possibilité de corruption. Pour plusieurs terminaux occupés, cela peut vite s'additionner ! Pour résoudre ce problème, la méthode de restauration du tampon est passée de l'enregistrement d'un grand nombre d'événements de terminal bruts récents sur l'hôte pty au maintien d'une interface de terminal sans tête sur l'hôte pty et à l'écriture de toutes les données dessus.

Cette approche apporte plusieurs avantages :
  • La quantité de défilement à restaurer peut être affinée. La valeur par défaut est maintenant 100, ce qui est un bon équilibre entre la vitesse et la quantité de données. La quantité de défilement peut être modifiée avec le paramètre terminal.integrated.persistentSessionScrollback.
  • Grâce à l'analyseur rapide de xterm.js, cela devrait avoir un impact minimal sur l'utilisation du processeur et réduire l'utilisation globale de la mémoire sur l'hôte pty.
  • Les modes de terminal sont maintenant restaurés explicitement, ce qui pourrait potentiellement être manqué auparavant et provoquer une corruption de la mémoire tampon.
  • Il n'est plus nécessaire de rejouer des événements de redimensionnement coûteux car le tampon du terminal est toujours synchronisé avec sa taille.
  • Comme la restauration est relativement rapide, tout est géré dans une seule image. Cela signifie que le temps CPU précieux n'est pas gaspillé pour rendre le terminal partiellement restauré et ralentir davantage les choses.

L'accélération de cette nouvelle implémentation dépend de nombreux facteurs, tels que le nombre de terminaux, le matériel, la taille de la mémoire tampon du terminal et ce qui se passait dans le terminal. Une estimation approximative de la restauration d'un tampon de terminal complet devrait donner une accélération approximative de 5 à 10x.

Source : Visual Studio Code
0  0