Console Toolkit
Console Toolkit est une extension de NVDA, qui fournit des améliorations d'accessibilité pour la console Windows, également connue sous le nom d'invite de commande. Cela fonctionne également bien dans Windows PowerShell. Certaines fonctionnalités peuvent fonctionner dans des terminaux alternatifs, tels que Cygwin, PuTTY et Windows Terminal, cependant, l'extension n'a été soigneusement testée qu'avec la console Windows par défaut. Les utilisateurs de SSH pourraient trouver cette extension particulièrement pratique.
Certaines des fonctionnalités faisaient auparavant partie de [l'extension d'améliorations de Tony] (https://github.com/mltony/nvda-tonys'enhancements/).
Téléchargements
Installez à partir de l'add-on store.
Aller à la première ligne visible
Console Toolkit remplace la commande maj+pavnum7
dans les consoles UIA :
au lieu de lire la première ligne de l'intégralité du tampon, elle lit
désormais la première ligne visible en haut de la fenêtre. Appuyez deux fois
sur maj+pavnum7
pour revenir à l'ancien comportement et lire la première
ligne du tampon.
Parole de console en temps réel
Cette option permet à NVDA de prononcer les nouvelles lignes immédiatement lorsqu'elles apparaissent dans la sortie de la console, au lieu de mettre en file d'attente les nouvelles paroles. Par exemple, si NVDA est occupé à prononcer une ligne qui est apparue à l'écran il y a 1 minute et qu'une nouvelle ligne apparaît maintenant, cette option annulera la prononciation de l'ancienne ligne et commencera à prononcer la nouvelle ligne immédiatement, offrant ainsi une appréhension en temps réel sur ce qui se passe dans la fenêtre de la console.
Bip pour les mises à jour de la console
Émet un faible bip chaque fois que le texte de la console est mis à jour.
Appliquer Control+V dans les consoles
Cette option permet au raccourci Ctrl+V de fonctionner dans les sessions
ssh
.
Expérimental : édition de l'invite de commande
Remarque : cette fonctionnalité est expérimentale. Veuillez lire attentivement cette section et assurez-vous de comprendre son fonctionnement avant de signaler des problèmes.
Appuyez sur « NVDA+E » pour identifier l'invite actuelle dans la fenêtre de
la console et modifiez-la dans une fenêtre « Modifier l'invite »
accessible. Après l'édition, vous pouvez soit appuyer sur "Échap" pour
mettre à jour la ligne de commande actuelle, soit sur "Entrée" pour mettre à
jour et exécuter immédiatement la commande. Vous pouvez également appuyer
sur Alt+F4
pour fermer la fenêtre d'invite d'édition sans mettre à jour la
ligne de commande.
Cette fonctionnalité a été testée dans l'invite de commande Windows
cmd.exe
ainsi que dans le shell bash sur les connexions ssh, ainsi que
dans WSL et cygwin. Elle pourrait également fonctionner dans des shells Unix
alternatifs, mais elle n'a pas été testée.
Voici comment l'extension extrait la commande courante.
- Elle appuie sur la touche « Fin », puis envoie un caractère de contrôle, un caractère Unicode rare qui n'est susceptible d'être utilisé nulle part.
- Ensuite, elle appuie sur la touche
début
et envoie un autre caractère de contrôle. - Ensuite, elle attend que les caractères de contrôle apparaissent à l'écran, ce qui peut prendre un certain temps sur les connexions SSH lentes.
- La commande est ce qui apparaît entre deux caractères de contrôle.
- Lorsque l'option "Utiliser UI Automation pour accéder à la console Windows lorsqu'elle est disponible" est activée dans les paramètres NVDA, elle envoie un caractère de contrôle supplémentaire au début de la chaîne. Ceci est nécessaire pour analyser correctement les commandes multilignes : l'implémentation UIA supprime les espaces à la fin de chaque ligne, donc afin de déduire s'il y a un espace entre deux lignes, nous devons les décaler d'un caractère. Veuillez noter cependant que de cette façon, nous ne préservons pas le nombre d'espaces entre les mots, nous garantissons uniquement la présence d'espaces.
- Avant d'éditer l'extension, assurez-vous de supprimer les caractères de contrôle en plaçant le curseur au début et à la fin et en simulant les pressions sur les touches « Supprimer » et « Retour arrière ».
- Elle présente la commande dans la fenêtre "Modifier l'invite" que l'utilisateur peut afficher ou modifier.
Une fois que l'utilisateur a appuyé sur « Enter » ou « Échap », elle efface d'abord la ligne actuelle dans la console. Ceci est réalisé via l'une des quatre méthodes, le choix de la méthode est paramétrable. Actuellement, quatre méthodes sont prises en charge :
Contrôle+C
: fonctionne à la fois danscmd.exe
etbash
, mais laisse l'invite précédente visible à l'écran ; ne fonctionne pas dans emacs ; parfois peu fiable sur les connexions SSH lentesÉchap
: ne fonctionne que danscmd.exe
"),Contrôle+A Contrôle+K
: fonctionne sousbash
etemacs
; ne fonctionne pas souscmd.exe
- « Retour arrière » (recommandé) : fonctionne dans tous les environnements ; cependant plus lent et peut provoquer une corruption si la longueur de la ligne a changé
Ensuite, l'extension simule les frappes pour taper la commande mise à jour et simule éventuellement ll'appui sur la touche « Entrée ».
Dépannage:
- Vérifiez que les touches « Début », « Fin », « Supprimer » et « Retour arrière » fonctionnent comme prévu dans votre console.
- Vérifiez que votre console prend en charge les caractères Unicode. Certaines connexions ssh ne prennent pas en charge Unicode.
- Vérifiez que la méthode de suppression sélectionnée fonctionne dans votre console.
Expérimental : capture de la sortie de la commande
Remarque : cette fonctionnalité est expérimentale. Veuillez lire attentivement cette section et assurez-vous de comprendre son fonctionnement avant de signaler des problèmes.
En ligne de commande ou dans la fenêtre « Modifier l'invite », appuyez sur
« Ctrl+Entrée » pour capturer la sortie de la commande. Cette extension est
capable de capturer une grande sortie qui s'étend sur plusieurs écrans, bien
que lorsque la sortie est supérieure à 10 écrans, le processus de capture
prend beaucoup de temps. L'extension jouera un long carillon, et il durera
aussi longtemps que l'extension capture la sortie de la commande en cours
d'exécution, ou jusqu'à ce que le délai d'attente soit atteint. Vous pouvez
également appuyer sur NVDA+E
pour interrompre la capture.
Lorsque la fonctionnalité « Utiliser UI Automation pour accéder à la console Windows lorsqu'elle est disponible » est activée dans les paramètres NVDA, vous pouvez basculer vers d'autres fenêtres pendant la capture. Cependant, si cette option est désactivée, alors NVDA utilise un code de console hérité, qui ne fonctionne que lorsque la console est focalisée, et donc passer à une autre fenêtre interrompra la capture.
La capture de commande fonctionne en redirigeant la sortie de la commande
vers la commande « less ». Le suffixe par défaut ajouté aux commandes est :
|less -c 2>&1
Veuillez le modifier uniquement si vous savez ce que vous faites. Cette
extension sait comment interagir avec la sortie de la commande less
pour
récupérer la sortie page par page.
Sous Windows, l'outil less.exe
doit être installé séparément. Vous pouvez
l'installer via cygwin ou télécharger un binaire Windows ailleurs.
Si vous utilisez tmux
ou screen
sous Linux, assurez-vous qu'aucune ligne
d'état ne s'affiche en bas. Dans tmux
exécuter
tmux set status off
pour vous débarrasser de la ligne d'état, ou modifiez votre fichier
tmux.conf
.
Dépannage:
- Après une tentative de capture de sortie infructueuse, appuyez sur
FlècheHaut
dans la console pour vérifier quelle commande a réellement été exécutée. - Revenez au suffixe de capture par défaut, mentionné ci-dessus.
- Essayez les étapes de dépannage de la section "Modification de l'invite de commande".