Workbench
Dossiers compacts dans l'Explorateur
Dans l'explorateur de fichiers, Microsoft rend maintenant les dossiers enfants uniques sous une forme compacte. Dans un tel formulaire, les dossiers enfants uniques seront compressés dans un élément d'arborescence combiné. Utile pour les structures de packages Java, par exemple.
La définition de explorer.compactFolders contrôle ce comportement. Par défaut, ce paramètre est activé.
Enregistrer à partir des éditeurs Peek
Si vous affichez une vue Peek et effectuez une saisie, vous pouvez maintenant enregistrer les modifications via Ctrl + S, si le focus se trouve dans cet éditeur intégré.
Panneau d'affichage de Problèmes
Plus de filtres
Des filtres prédéfinis ont été ajoutés au panneau Problèmes. Vous pouvez désormais filtrer les problèmes par type (erreurs, avertissements et informations) et également voir les problèmes limités au fichier actif en cours.
Afficher le problème actuel dans la barre d'état
Vous pouvez maintenant configurer VS Code pour afficher le message de problème actuel dans la barre d'état. Cela vous permet de voir le résumé du problème sélectionné dans le fichier actif sans mouvements de clavier ou de souris supplémentaires.
Remarque: L'activation de cette fonctionnalité nécessite l'activation du paramètre problems.showCurrentInStatus.
Disposition flexible du boîtier de filtre
La zone de filtre du panneau Problèmes ajuste désormais sa position en fonction de la position et de la taille du panneau.
Amélioration du rendu des polices (Windows, Linux)
Lorsque Microsoft a mis à jour vers Electron 6 la version précédente, de nombreux utilisateurs ont signalé que le rendu des polices avait régressé pour eux. Plus précisément, les polices n'étaient pas aussi fluides qu'auparavant. Microsoft a immédiatement résolu le problème dans l'éditeur et le correctif a été mis à disposition dans une version de récupération 1.40. Cependant, d'autres zones dans le Workbench souffraient toujours d'un rendu de police moins qu'idéal.
Dans cette version, Microsoft a amélioré le rendu des polices dans davantage de parties du plan de travail (pour Windows et Linux). Les captures d'écran ci-dessous montrent une comparaison avant et après (zoom avant pour montrer la différence). En particulier, de nombreux éléments d'arborescence et de liste du plan de travail ont été rendus en utilisant l'anticrénelage en niveaux de gris et ils sont désormais rendus avec l'anticrénelage en sous-pixels.
Avant (gauche) et après (droite):
Performances de fichier en lecture/écriture plus rapides pour les scénarios distants
La lecture et l'écriture de fichiers (à partir de l'éditeur de texte) devraient désormais être plus rapides pour les scénarios où le système de fichiers est distant et la latence est élevée (par exemple lorsque vous utilisez VS Code dans un navigateur avec une connexion lente ou lorsque vous êtes connecté à un hôte distant qui n’est pas dans la même région). Microsoft est passé à une implémentation basée sur les flux pour les lectures et les écritures qui réduit considérablement les frais de communication.
Recherche
Mettre à jour les résultats de la recherche en cours de frappe
Dans la recherche en texte intégral, les résultats seront désormais mis à jour à mesure que vous tapez. Cela est particulièrement utile dans des scénarios comme la construction de requêtes d'expression régulière complexes, où des commentaires rapides sur une requête peuvent vous aider à écrire le RegEx.
Ici, la rétroaction instantanée aide à construire une requête RegEx Find and Replace pour adopter la syntaxe de chaînage facultative de TypeScript:
Remarque: Cette fonctionnalité peut être désactivée en définissant search.searchOnType sur false, et le délai entre la saisie et la recherche peut être ajusté avec search.searchOnTypeDebouncePeriod, qui prend par défaut 300 ms.
Ajouter des curseurs aux résultats de recherche
Cette version embarque une commande pour ajouter des curseurs à toutes les correspondances d'une recherche de texte. En vous concentrant sur les résultats de recherche d'un fichier dans la vue Recherche, vous pouvez appuyer sur Ctrl + Maj + L pour modifier simultanément toutes les correspondances de ce fichier. Il s'agit du même raccourci clavier utilisé lors de la recherche dans un seul éditeur avec le widget Rechercher.
Développez tous les résultats de la recherche par défaut
Auparavant, si une recherche en texte intégral renvoyait plus de 10 résultats dans un seul fichier, elle apparaissait réduite dans l'arborescence Résultats. Cependant, cela a parfois rendu difficile la recherche d'un résultat particulier, donc avec cette version, tous les résultats sembleront développés.
Vous pouvez définir search.collapseResults sur auto pour revenir à l'ancien comportement.
Éditeur
Décorations de mini-carte pour les erreurs, les avertissements et les modifications de contenu
Les erreurs et les avertissements sont désormais mis en évidence en ligne dans la minicarte (aperçu du code). Vous pouvez changer la couleur de ces décorations avec les nouvelles couleurs de thème minimap.errorHighlight et minimap.warningHighlight.
Ci-dessous, vous pouvez voir la minicarte mettant en évidence une subtile faute de virgule manquante:
Les décorations des modifications de contenu sont également affichées dans le caniveau de la minicarte.Vous pouvez modifier les couleurs de changement de contenu avec:
- minimapGutter.addedBackground
- minimapGutter.modifiedBackground
- minimapGutter.deletedBackground
Vous pouvez modifier la visibilité des décorations de contrôle de source avec le paramètre scm.diffDecorations, qui a les valeurs:
- [B]all[/C] - Affiche les décorations des différences de contrôle de source dans tous les emplacements.
- gutter - Affiche uniquement dans la gouttière de l'éditeur de gauche.
- minimap - Affiche uniquement dans la gouttière de la mini-carte.
- overview - Affiche uniquement dans la règle d'aperçu.
- none - n'affiche pas les décorations.
Commandes alternatives de navigation dans le code
VS Code ne faisait rien lorsque vous sélectionniez Aller à la définition alors qu'il était déjà à la définition. Avec cette version, d'autres commandes peuvent être exécutées à la place. Par exemple, Aller à la définition peut être mappé pour exécuter Aller aux références.
Ceci est personnalisé via le paramètre editor.gotoLocation.alternativeDefinitionCommand. Par exemple, vous pouvez faire que l'alternative à Aller à la définition soit Aller à la déclaration et vice versa. Vous pouvez laisser le paramètre vide si vous préférez l'ancien comportement.
Raccourcis clavier IntelliSense sur macOS
IntelliSense est généralement déclenché via Ctrl + Espace. Sur macOS cependant, ce raccourci clavier est utilisé par le système d'exploitation lorsque plusieurs sources d'entrée sont configurées. Cela conduit souvent à la confusion et aux utilisateurs qui pensent qu'IntelliSense est défectueux.
Il y a maintenant deux façons de gérer cela:
- Utilisez le nouveau raccourci clavier Alt + Échap que Microsoft a ajouté pour macOS.
- Désactivez la commutation de source d'entrée via Ctrl + Espace dans vos préférences macOS via Préférences> Clavier> Raccourcis> Sources d'entrée.
Screen reader output
Il existe un nouveau paramètre editor.accessibilityPageSize qui contrôle le nombre de lignes de l'éditeur pouvant être lues simultanément par un lecteur d'écran. Notez que cela a des implications sur les performances pour les nombres supérieurs à la valeur par défaut de 10.
Si vous utilisez la commande Say All du lecteur d'écran, Microsoft recommande de définir editor.accessibilityPageSize sur 100 ou 1000. La prochaine fois, l'éditeur prévoit d'examiner la possibilité de modifier la valeur par défaut de ce paramètre.
Nouvelle option de correspondance des crochets
Il est désormais possible de configurer "editor.matchBrackets": "near" pour obtenir l'ancien comportement de mise en surbrillance des crochets correspondants uniquement lorsque le curseur se trouve de chaque côté d'un crochet. La valeur par défaut est always, ce qui met en évidence les crochets correspondants entourant la position actuelle du curseur.
Langage
Curseur miroir HTML
VS Code ajoute désormais un curseur miroir lorsque vous modifiez des balises HTML. Ce comportement est contrôlé par le paramètre html.mirrorCursorOnMatchingTag, qui est activé par défaut.
Cette fonctionnalité marche en ajoutant un multi-curseur à la balise correspondante lorsque votre curseur se déplace dans une plage de noms de balises HTML. Tout comme en mode multi-curseur, vous pouvez utiliser la suppression mot par mot ou la sélection par mot. Le curseur en miroir est supprimé lorsque vous déplacez votre curseur en dehors de la plage de noms de balises.
Un cas particulier consiste à entrer dans l'espace lorsque le curseur se trouve à la fin de la balise d'ouverture, par exemple à la fin d'un div comme <div |> </ div |>. Dans ce cas, VS Code supprime l'espace inséré après le nom de la balise de fermeture et quitte le mode de curseur miroir, afin que vous puissiez continuer à modifier les attributs HTML.
Balises de renommage HTML
Vous pouvez maintenant utiliser F2 pour renommer les paires de balises d'ouverture / fermeture en HTML.
JSON
Pour éviter les problèmes de performances avec les fichiers JSON volumineux, la prise en charge du langage JSON a désormais une limite supérieure sur le nombre de régions de pliage et de symboles de document qu'il calcule (pour la vue Structure et le fil d'Ariane). Par défaut, la limite est de 5000 éléments, mais vous pouvez modifier la limite avec le paramètre json.maxItemsComputed.
TypeScript 3.7
VS Code est désormais fourni avec TypeScript 3.7.3. Cette mise à jour majeure apporte quelques améliorations du langage TypeScript - y compris des fonctions de chaînage facultatives, de coalescence nulle et d'assertion - ainsi que de nouvelles fonctionnalités d'outils pour JavaScript et TypeScript. Comme toujours, cette version inclut également un certain nombre de corrections de bogues importantes.
Prise en charge du chaînage en option pour JavaScript et TypeScript
Grâce à TypeScript 3.7, VS Code prend désormais en charge le chaînage d'options prêt à l'emploi pour JavaScript et TypeScript. Cela inclut la coloration syntaxique et IntelliSense.
Source : Microsoft