Éditeur de fusions à 3 voies
Dans cette version, Microsoft a continué à travailler sur l'éditeur de fusions à trois voies. Cette fonctionnalité peut être activée en définissant git.mergeEditor à true et sera activée par défaut dans les prochaines versions. L'éditeur de fusion permet de résoudre rapidement les conflits de fusion Git. Lorsqu'il est activé, l'éditeur de fusion peut être ouvert en cliquant sur un fichier en conflit dans la vue du contrôle de la source. Des cases à cocher sont disponibles pour accepter et combiner les modifications dans Theirs ou Yours :
Toutes les fonctionnalités de la langue sont disponibles dans l'éditeur de fusion (y compris les diagnostics, les points d'arrêt et les tests), de sorte que vous obtenez un retour d'information immédiat sur tout problème dans le résultat de la fusion. Le résultat peut également être édité directement.
Lors de la fermeture de l'éditeur de fusion ou de l'acceptation de la fusion, un avertissement est affiché si tous les conflits n'ont pas été traités. L'éditeur de fusion prend en charge la fusion au niveau des mots ; tant que les modifications ne se croisent pas, les deux côtés peuvent être appliqués. Si l'ordre d'insertion est important, il peut être interverti. À tout moment, le conflit peut également être résolu manuellement.
VS Code pour le Web
Le vérificateur de thème prend en charge les thèmes intégrés. Il s'agit d'une voie dans vscode.dev qui peut être utilisée pour présenter et essayer un thème de couleur sans l'installer. Ceci a été disponible pour les extensions de thème sur le Marketplace en spécifiant l'ID de l'extension et le nom du thème. Par exemple, pour voir l'extension GitHub Theme (extension ID github.github-vscode-theme) thème "GitHub Dark Default", vous lanceriez vscode.dev avec l'URL suivante : "https://vscode.dev/theme/github.github-vscode-theme/GitHub%20Dark%20Default".
VS Code Server (Preview privé)
Dans VS Code, Microsoft desire que les utilisateurs exploitent de manière transparente les environnements qui les rendent les plus productifs. Les extensions de développement à distance de VS Code permettent de travailler dans le sous-système Windows pour Linux (WSL), les machines distantes via SSH, et les conteneurs de développement directement à partir de VS Code. Ces extensions installent un serveur sur l'environnement distant, permettant au VS Code local d'interagir en toute fluidité avec le code source et les runtimes distants.
Avec VS Code 1.69, Microsoft fourni maintenant une Preview privée d'un "VS Code Server" autonome, qui est un service construit à partir du même serveur sous-jacent utilisé par les extensions à distance, plus quelques fonctionnalités supplémentaires, comme un CLI interactif et la facilitation des connexions sécurisées à vscode.dev, sans nécessiter une connexion SSH. L’objectif est d'améliorer le CLI du code utilisé aujourd'hui pour ouvrir les instances de VS Code sur le bureau et sur le web, quel que soit l'endroit où les projets sont stockés.
Centre de commande
Le centre de commande a été peaufiné et est maintenant prêt à être essayé. Activez-le via le paramètre window.commandCenter. Le Centre de commande remplace la barre de titre normale et vous permet de rechercher rapidement des fichiers dans votre projet. Cliquez sur la section principale pour afficher la liste déroulante Ouverture rapide avec vos fichiers récents et un champ de recherche.
Le centre de commande comporte également un bouton sur la droite qui permet d'afficher les options d'accès rapide via " ?". Sur la gauche, se trouvent les boutons Retour et Avance pour naviguer dans l'historique de l'éditeur.
Indicateur de modification de l'éditeur de paramètres
L'éditeur de paramètres indique maintenant quand un paramètre a une dérogation linguistique. Si la valeur d'un paramètre ne semble pas affecter le comportement du paramètre pour un certain type de fichier, il se peut que le paramètre ait une priorité linguistique.
Le texte de l'indicateur a été modifié pour être plus clair et plus concis. La courte vidéo ci-dessous montre le nouvel indicateur Modifié ailleurs. Le survol de l'indicateur fait apparaître un survol qui indique les dérogations de langue, le cas échéant. La vidéo suivante montre le nouvel indicateur de dérogation par défaut avec le texte Valeur par défaut modifiée.
Mode « Ne pas déranger »
Le nouveau mode « Ne pas déranger » masque toutes les fenêtres contextuelles de notification non liées à des erreurs lorsqu'il est activé. Les notifications de progression seront automatiquement affichées dans la barre d'état. Les notifications masquées sont toujours disponibles dans le centre de notification.
Pour activer le mode « Ne pas déranger », ouvrez le centre de notification (sélectionnez l'icône de cloche à droite de la barre d'état) et cliquez sur l'icône de cloche en forme de barre oblique. Le mode Ne pas déranger est indiqué dans la barre d'état par l'icône de la cloche en forme de barre oblique.
Basculer entre les thèmes clair et foncé
Une nouvelle commande permet de basculer entre les thèmes clairs et foncés préférés, Préférences : Basculer entre les thèmes clairs et sombres. Lorsque l'utilisateur est dans un thème clair, la commande passe à un thème sombre et vice versa. Lorsqu'elle est dans un thème à contraste élevé, la commande reste en contraste élevé et passe au thème préféré à contraste élevé du thème de couleur opposé.
Les thèmes préférés sont définis par les paramètres :
- workbench.preferredDarkColorTheme
- workbench.preferredLightColorTheme
- workbench.preferredHighContrastColorTheme
- workbench.preferredHighContrastLightColorTheme
Menu contextuel Minimap
La mini-carte de VS Code affiche un aperçu de haut niveau du fichier de code source sur le côté de l'éditeur. Il a été possible de basculer la visibilité de la mini-carte via la commande View : Toggle Minimap ou désactiver complètement le minimap avec la commande Editor > Minimap : Enabled (editor.minimap.enabled). Avec cette version, il y a maintenant un menu contextuel pour facilement afficher ou cacher la mini-carte.
Il est également possible de régler l'apparence avec les paramètres Size (editor.minimap.size), Scale (editor.minimap.scale) et Slider (editor.minimap.showSlider). Si la minimap est masquée, il est toujours possible d'afficher le menu contextuel en cliquant avec le bouton droit de la souris sur la gouttière latérale.
Menu Partager
La commande Copy vscode.dev Link peut être utilisée à partir du sous-menu File > Share pour obtenir rapidement un lien vscode.dev pour le dépôt GitHub ouvert. Le sous-menu Partager est également disponible dans le menu contextuel de l'éditeur.
Terminal
Intégration Shell
L'intégration de l'interpréteur de commandes pour PowerShell, bash et zsh, qui était en avant-première depuis la version de janvier, est maintenant terminée ! Nous prévoyons de l'activer par défaut dans la version 1.70.
Pour activer la fonctionnalité d'intégration du shell, cochez Terminal > Integrated > Shell Integration : Enabled dans l'éditeur de paramètres ou définissez la valeur dans le settings.json :
"terminal.integrated.shellIntegration.enabled" : true
L'intégration du shell permet au terminal de VS Code de comprendre davantage ce qui se passe à l'intérieur du shell afin d'activer plus de fonctionnalités. L'un des objectifs de l'intégration du shell était qu'il fonctionne sans aucune configuration requise. Ceci a été réalisé en "injectant" automatiquement le script d'intégration du shell dans la session du shell via les arguments du shell et/ou les variables d'environnement lorsque le paramètre est activé. Dans certains cas, cela ne fonctionne pas, par exemple dans les sous-coquilles ou dans certaines configurations complexes de l'interpréteur de commandes, mais nous disposons également d'une voie d'installation manuelle pour ces cas plus avancés.
Voici, ci-dessous, un résumé des fonctionnalités que l'intégration du shell offre actuellement :
décorations de commandes et règle d'aperçu
L'intégration du shell permet d'obtenir les codes de sortie des commandes exécutées dans le terminal. Grâce à ces informations, des décorations sont ajoutées à gauche de la ligne pour indiquer si la commande a réussi ou échoué. Ces décorations apparaissent également dans la règle de vue d'ensemble dans la barre de défilement, tout comme dans l'éditeur.
Les décorations peuvent prendre en charge des actions contextuelles telles que la réexécution de la commande :
Les décorations des commandes peuvent être configurées à l'aide des paramètres suivants :
- terminal.integrated.shellIntegration.decorationIcon
- terminal.integrated.shellIntegration.decorationIconSuccess (succès)
- terminal.integrated.shellIntegration.decorationIconError
Navigation par commande
Les commandes détectées par l'intégration de l'interpréteur de commandes alimentent la fonction de navigation des commandes (Ctrl/Cmd+Up, Ctrl/Cmd+Down) pour lui donner des positions de commande plus fiables. Cette fonctionnalité permet une navigation rapide entre les commandes et la sélection de leur sortie.
Exécuter une commande récente
La commande Terminal: Run Recent Command fait apparaître l'historique provenant de diverses sources, offrant une fonctionnalité similaire à la recherche inverse d'un shell (Ctrl+R). Les commandes récentes proviennent de l'historique de la session actuelle, de l'historique des sessions précédentes pour ce type de shell et du fichier d'historique commun du shell.
Une autre fonctionnalité de la commande :
- dans la section de la session en cours, il y a une icône de presse-papiers à droite du choix rapide qui ouvrira la sortie de la commande dans un éditeur ;
- la touche Alt peut être maintenue enfoncée pour écrire le texte dans le terminal sans l'exécuter ;
- la quantité d'historique stockée dans la section de la session précédente est déterminée par le paramètre terminal.integrated.shellIntegration.history.
Aucune combinaison de touches n'est actuellement assignée par défaut à la fonction Run Recent Command mais, à titre d'exemple, elle pourrait être reliée à Ctrl+Espace avec la combinaison de touches suivante :
Code : | Sélectionner tout |
1 2 3 4 5 | { "key": "ctrl+space", "command": "workbench.action.terminal.runRecentCommand", "when": "terminalFocus" }, |
Aller au répertoire récent
Tout comme la commande run recent, la commande Terminal : Go to Recent Directory conserve la trace des répertoires qui ont été visités et permet de les filtrer rapidement et d'y naviguer (cd) :
La touche Alt peut être maintenue pour écrire le texte dans le terminal sans l'exécuter
Détection du répertoire de travail actuel
L'intégration du shell nous indique quel est le répertoire de travail actuel. Cette information était auparavant impossible à déterminer sous Windows sans un tas de bidouillages, et nécessitait une interrogation sur macOS et Linux, ce qui n'était pas bon pour les performances.
Le répertoire de travail actuel est utilisé pour résoudre les liens relatifs, afficher le répertoire dans lequel une commande récente a été exécutée, ainsi que pour prendre en charge le répertoire de travail actuel divisé "terminal.integrated.splitCwd" : "inherited" .
Prise en charge accrue des configurations de l'interpréteur de commandes
Cette version a amélioré l'intégration avec bash-preexec, ajouté un support de base pour powerlevel10k, et détecté plus de cas où l'intégration de l'interpréteur de commandes ne fonctionnera pas et désactivera gracieusement la fonctionnalité. Nous prévoyons une longue série d'améliorations dans ce domaine au fil du temps.
Support de la séquence SetMark
Le terminal supporte désormais la séquence 'OSC 1337 ; SetMark ST' créée à l'origine par iTerm2, ce qui permet d'ajouter une marque à gauche de la ligne ainsi que dans la barre de défilement. Le vérificateur de thème peut maintenant être utilisé avec les thèmes intégrés dans VS Code. Utilisez vscode.theme-defaults pour l'identifiant de l'extension, puis le nom du thème que vous souhaitez vérifier.
Par exemple, pour vérifier le thème "High Contract Light", il faut utiliser l'URL suivante :
"https://vscode.dev/theme/vscode.theme-defaults/Default%20High%20Contrast%20Light"
Support partiel de la localisation pour les extensions
La dernière itération dans vscode.dev, Microsoft a introduit la localisation pour les chaînes fournies par le produit de base. Dans cette itération, Microsoft inclu plus de chaînes : spécifiquement les chaînes statiques fournies par les extensions dans leur manifeste d'extension. Il y a encore d'autres segments de chaînes fournies par les extensions qui doivent être localisées (chaînes déclarées dans leur code source), nous continuerons donc ce travail lors de la prochaine itération.
Configurer la commande de la langue d'affichage
Pour certains utilisateurs, la configuration de la langue utilisée par leur navigateur n'est pas possible. Pour contourner ce problème, VS Code for the Web dispose désormais de la commande Configure Display Language qui permet de remplacer la langue par défaut du navigateur. En outre, il est possible d'utiliser la commande Clear Display Language Preference pour supprimer ce changement.
Source : Microsoft
Et vous ?
Que pensez-vous des changements introduits dans VS Code 1.69 ?
Voir aussi
Visual Studio Code 1.60 est disponible et apporte la détection automatique du langage
Visual Studio Code 1.59 est disponible. Cette version s'accompagne d'une amélioration de la vue Extensions, ainsi que du suivi des processus enfants et des avertissements de fermeture
Visual Studio Code 1.58 est disponible et apporte des modifications aux commentaires des clients et la prise en charge des mathématiques dans l'aperçu de Markdown
Visual Studio Code 1.57 s'accompagne de Workspace Trust, une fonctionnalité de sécurité pour autoriser ou restreindre l'exécution automatique de code