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 !

Microsoft publie la troisième préversion de Windows Terminal
Les raccourcis clavier sont améliorés et d'autres fonctionnalités sont apportées

Le , par Bill Fassinou

9PARTAGES

6  0 
Windows Terminal est une nouvelle interface de ligne de commande pour Windows. Elle est conçue pour être l’emplacement central pour l’accès à des environnements tels que PowerShell, Cmd et Windows Subsystem for Linux (WSL). Microsoft a ajouté la prise en charge de plusieurs onglets aux côtés de la personnalisation pour les développeurs qui souhaitent peaufiner l'application Terminal. Les développeurs pourront donc personnaliser Windows Terminal de différentes manières et lui ajouter des thèmes ainsi que des extensions.

La première préversion de Windows Terminal a fait son apparition sur Windows Store à la fin du mois de juin. Dans cette version, Microsoft y a ajouté de nombreuses fonctionnalités, surtout de personnalisation. La première préversion de Windows Terminal a apporté les fonctionnalités telles que les réglages, la personnalisation des combinaisons de touches, les raccourcis clavier et un support pour les images de fond. Avec cette dernière fonctionnalité, Windows Terminal vous permet de créer un arrière-plan acrylique avec un effet de flou ou vous pouvez aussi définir n'importe quelle image ou GIF en tant qu'image d'arrière-plan, profil par profil.

Cela signifie que chacun de vos profils peut être personnalisé de manière unique avec différentes images d'arrière-plan. Cependant, il faut savoir que lorsque Microsoft a annoncé son arrivée à la conférence Build de mai 2019, l’entreprise avait promis plus de fonctionnalités pour Windows Terminal. L'outil prendra également en charge le rendu de texte emoji et le rendu basé sur un processeur graphique. Windows Terminal va donc offrir un rendu plus rapide du texte accéléré par le GPU et des polices « riches en emoji », car tout aujourd’hui tend à prendre en charge les emojis, et ceux-ci contribueront à alléger l'expérience utilisateur en ligne de commande. Plus important encore, Windows Terminal prend aussi en charge les raccourcis, les onglets, les fenêtres détachables et les thèmes, ainsi que les extensions. Il prendra également en charge de manière native les polices Unicode et East Asian.

Cette fois, Microsoft publie la troisième préversion de Windows Terminal qui apporte également de nouvelles fonctionnalités. Dans cette troisième préversion, la barre de titre est déplaçable et possède un nouveau look. Il y a également d'innombrables améliorations de ce qui existait déjà dans l’outil. Voyons plus en détail les nouveautés qu’apporte cette nouvelle préversion de Windows Terminal :

Barre de titre déplaçable et amélioration de la disposition des boutons de la liste déroulante

Pour cette version, Microsoft a fait en sorte que le terminal soit maintenant déplaçable de partout sur la barre de titre. De plus, la barre de titre a maintenant un nouveau look. Le bouton de la liste déroulante a été redimensionné et recoloré. Il reste maintenant à droite du dernier onglet ouvert. Les boutons Réduire, Agrandir et Fermer ont également été recolorés pour offrir une expérience uniforme.


Support de l’accessibilité

Microsoft a annoncé qu’il a commencé par réintégrer à Windows Terminal certaines des technologies d'assistance qu'il a ajoutées à la console Windows dans Windows 10 1703. Les contrôles et le contenu du terminal se présentent désormais sous forme d'arborescence UIA (User Interface Automation), permettant à des outils tels que Narrator d'interroger, de naviguer et de lire le contenu des contrôles de l'interface utilisateur et du texte du terminal.
Connecteur Azure Cloud

Vous pouvez maintenant vous connecter à Azure Cloud Shell au sein de Windows Terminal. Azure Cloud Shell est une expérience de ligne de commande basée sur un navigateur et hébergée dans le cloud qui vous donne accès à vos fichiers et projets stockés dans Azure. Avec ce connecteur, vous pouvez ajouter Azure Cloud Shell en tant que profil et vous connecter directement aux fichiers Azure via le terminal Windows de votre bureau. Plus d'informations sur l'utilisation de cette nouvelle fonctionnalité sont dans la note de version de l’outil.

Sélection

Lorsque vous utilisez votre souris pour cliquer et faire glisser pour sélectionner du texte dans Windows Terminal, vous pouvez maintenant faire glisser votre souris en dehors de la fenêtre du terminal pour continuer à sélectionner le texte au-dessus ou en dessous. De plus, vous pouvez maintenant sélectionner des sections de texte en double ou triple clic. Les délimiteurs pour double-clic sont définis dans votre fichier « profiles.json » à l'aide de la propriété « wordDelimiters ». Un triple clic sélectionnera toute la ligne.

Mise à jour de la section « À propos »

La section « À propos » inclut maintenant des liens vers des documents qui pourraient vous être utiles. Ces liens vous dirigent vers des pages sur GitHub qui fournissent des informations sur la procédure de personnalisation du terminal, sur l’utilisation du terminal et sur les fonctionnalités mises à jour à chaque version.


Titre de l’onglet personnalisé

Vous pouvez maintenant définir le titre de l'onglet de chaque profil dans vos paramètres en définissant la propriété « tabTitle » dans un profil. L'application de ce paramètre remplacera le titre de l'onglet fourni par le Shell du profil. Cela peut aider à distinguer les profils et à fournir une expérience plus personnalisée.

Options de fond supplémentaires

Vous êtes maintenant en mesure d'ajouter une image de fond sur le dessus d'un fond acrylique avec une teinte de couleur en utilisant les propriétés « backgroundImage », « useAcrylic » et « background ».

Raccourcis clavier

Les clés OEM ({} _ + - = | /? <>: ”; ') sont maintenant disponibles pour le mappage dans les raccourcis clavier. De plus, vous pouvez maintenant avoir des raccourcis clavier pour copier, copier du texte sans caractères de nouvelle ligne, coller et dupliquer un onglet. Ceux-ci sont définies dans le fichier de paramètres profiles.json dans la propriété « keybindings » et deviennent les valeurs par défaut à partir de cette version. Néanmoins, il y a une remarque à noter. Si vous avez déjà installé le terminal avant cette version, ces raccourcis clavier n'apparaîtront par défaut que lorsque vous supprimez votre fichier profiles.json et le laissez se régénérer.


Vous pouvez enregistrer votre fichier profiles.json d'origine ailleurs et le copier sur vos personnalisations ou simplement ajouter ces liaisons de clé manuellement. « Nous sommes conscients que ce n’est pas une expérience idéale et nous travaillons à l’améliorer », a confié Microsoft. Cela dit, concernant cette dernière fonctionnalité, certains jugent que JSON est un très mauvais format pour représenter les associations de touches pour un outil de ligne de commande.

Ils estiment que l'inconvénient le plus important de JSON, c'est que le format est très difficile à lire pour les humains, et que, bien sûr, chaque virgule et le support doivent être exactement au bon endroit. Ces derniers ont également ajouté que Microsoft utilise « JSON-with-comments » qui n’est explicitement pas du JSON. Selon eux, cela rend JSON encore plus difficile à comprendre lorsqu’il est utilisé comme format pour les fichiers de configuration.

Par contre, d’autres n’y voient pas d’inconvénient. Pour eux, JSON est très lisible et facile à analyser dans les langages les plus populaires. Le choix de Microsoft de l’utiliser ne cause aucun problème et n’est donc pas à discuter.

Ceux qui ne sont pas d’accord avec l’utilisation de JSON pour ce cas d’utilisation précis proposent que Microsoft utilise le format TOML ou YAML. ou encore XML. Mais une fois encore, tout le monde n’est pas d’accord sur ces propositions. Pour eux, YAML est ennuyeux, car il ne peut pas être minimisé et c'est vraiment difficile sur les espaces/tabulations. XML est juste terrible pour la lecture. Ils précise que JSON convient bien à la lecture et à l'édition, mais également au transfert de données.

Source : Microsoft

Et vous ?

Qu'en pensez-vous ?
Êtes-vous pour ou contre l'utilisation du format JSON pour représenter les associations de touches pour un outil de ligne de commande ? Pourquoi ?
Quels autres formats proposeriez-vous ? Et pourquoi ?

Voir aussi

La première préversion de Windows Terminal fait son apparition sur Windows Store et embarque de nombreuses fonctionnalités de personnalisation

Build 2019 : Windows Terminal est une nouvelle interface de ligne de commande pour Windows qui prend en charge les emoji et les onglets

La MàJ WSL dans Windows 10 build 1903 vous donne accès aux fichiers Linux depuis Windows. Les outils en ligne de commande sont également améliorés

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

Avatar de stardeath
Membre expert https://www.developpez.com
Le 06/08/2019 à 1:02
si il y a bien un domaine où personne ne sera jamais d'accord c'est bien les formats de stockage.
en plus pourquoi, ici, se compliquer la tâche avec des formats de fichier pénibles à parser, à la première lecture un bête fichier ini est amplement suffisant, et le parser plutôt trivial à écrire :

[commands]
copy=ctrl+shift+c
paste=ctrl+shift+v
etc...

mais bon, ça doit pas faire suffisamment moderne, donc on se complique la vie.
(et même si on peut vouloir plusieurs combinaisons de touches par commande, on peut très bien définir une syntaxe pour en mettre plusieurs à la suite)

ps: pas que json, xml, yaml, autres n'ont pas d'utilité, mais ils ont comme principal avantage de pouvoir stocker des données structurées. dès lors que la structuration des données est pratiquement inexistante, pas la peine de se compliquer la vie.
de plus pour stocker des structures, il faut souvent une syntaxe bien particulière, pas forcément adaptée à être écrite facilement par un humain ; d'où le fait d'avoir un truc le plus simple possible à mon avis.
1  0 
Avatar de stardeath
Membre expert https://www.developpez.com
Le 06/08/2019 à 22:31
mapper un objet depuis un fichier json, c'est pas magique, il a fallu que quelqu'un l'écrive ce code, rien n'empêche donc d'avoir strictement la même chose pour un fichier ini en fait.
1  0 
Avatar de foetus
Expert éminent https://www.developpez.com
Le 07/08/2019 à 9:07
Citation Envoyé par stardeath Voir le message
en plus pourquoi, ici, se compliquer la tâche avec des formats de fichier pénibles à parser, à la première lecture un bête fichier ini est amplement suffisant, et le parser plutôt trivial à écrire
Parce que le format ini n'a pas été normalisé et chacun fait ce qu'il veut ou suit Microsoft.

Par exemple, la gestion des espaces. Est-ce que tu les autorises entre le début de ligne et la clef ? Est-ce que tu les autorises entre la clef et le = ? Est-ce que tu les autorises entre le = et la valeur ? Est-ce que tu les autorises entre la valeur et la fin de ligne ?

Le seul gros point noir du json c'est le non support de l'Unicode
Et l'autre point gênant, c'est le manque de commentaires (soit on rajoute des clefs bidons, soit on empile les même clefs - la majorité des parsers prennent la dernière valeur et ignorent les autres)
1  0 
Avatar de redcurve
Membre confirmé https://www.developpez.com
Le 06/08/2019 à 14:55
Citation Envoyé par stardeath Voir le message
si il y a bien un domaine où personne ne sera jamais d'accord c'est bien les formats de stockage.
en plus pourquoi, ici, se compliquer la tâche avec des formats de fichier pénibles à parser, à la première lecture un bête fichier ini est amplement suffisant, et le parser plutôt trivial à écrire :

[commands]
copy=ctrl+shift+c
paste=ctrl+shift+v
etc...

mais bon, ça doit pas faire suffisamment moderne, donc on se complique la vie.
(et même si on peut vouloir plusieurs combinaisons de touches par commande, on peut très bien définir une syntaxe pour en mettre plusieurs à la suite)

ps: pas que json, xml, yaml, autres n'ont pas d'utilité, mais ils ont comme principal avantage de pouvoir stocker des données structurées. dès lors que la structuration des données est pratiquement inexistante, pas la peine de se compliquer la vie.
de plus pour stocker des structures, il faut souvent une syntaxe bien particulière, pas forcément adaptée à être écrite facilement par un humain ; d'où le fait d'avoir un truc le plus simple possible à mon avis.
La différence est que tu peux directement mapper un objet avec son pendant json, alors qu'un ini c'est relou en fait.

Je n'ai pas regardé le code mais ils font surement un truc aussi simple que Json.Deserialize<ConfigurationObject>(chemin de fichier) pis basta.
0  0 
Avatar de fr_rodo
Nouveau Candidat au Club https://www.developpez.com
Le 09/08/2019 à 18:17
Pour les adeptes du format INI évolué cf. le format TOML.
0  0 
Avatar de CoderInTheDark
Membre chevronné https://www.developpez.com
Le 16/08/2019 à 16:09
Un gros plus 1 pour l'accessibilité.
Ca nous change de l'époque où ils ne faisaient rien.
0  0 
Avatar de Sodium
Membre extrêmement actif https://www.developpez.com
Le 30/08/2019 à 14:51
C'est intéressant ce nouveau terminal mais la configuration par JSON, pfff, c'est trop compliqué de pouvoir faire un clic droit sur un onglet et de choisir une couleur de fond ?
Si je veux donner un background différente à mes différents terminaux Linux pour voir facilement sur quel serveur je suis, je dois créer x profils et créer un nouveau terminal avec le-dit profil ? Quelle lourdeur...
Et toujours pas de possibilité de les réorganiser par drag and drop ?
0  0