Console Timer

consoleTimer

consoleTimer a été écrit par derek riemer, et est GPL V2, comme requis pour être une extension NVDA.

Arrière-plan

Lors de l'utilisation de lignes de commande sur ssh, généralement, il ya un retard réseau. Ce décalage est attendu, cependant, la façon dont NVDA manipule le mouvement du curseur n'est pas conviviale avec le décalage dans les terminaux, parce que cette opération est une synchrino opperation. Cela entraîne NVDA à signaler à tort la mauvaise lettre lorsque vous vous déplacez à une autre lettre avec les touches fléchées. Par exemple, si l'utilisateur est sur la p de grep, et ils appuient sur la flèche droite, ils peuvent entendre "t" au lieu de l'espace. Cela est dû à que NVDA ne attend pas assez longtemps pour réellement gérer correctement ce déplacement du curseur. Ce module complémentaire a été écrit parce que je fais beaucoup d'administration de serveur, et je voulais la navigation par curseur pour travailler.

Instructions d'utilisation TLDR

Lorsque vous êtes dans une console, si NVDA est manquants ou une lettres répétées pendant que vous vous déplacez, appuyez simplement sur nvda+maj+page précédente pour lui apprendre à être plus patient, ou si il est trop laggy, appuyez sur nvda+maj+page suivante pour l'enseigner à Être moins patient. Ce module complémentaire n'affectera pas les terminaux externes, et la patience change de .01 pour chaque pression de touche.

Comment faire fonctionner cela avec des terminaux personnalisés

Si vous êtes un développeur qui veut que NVDA reconnaisse une section ou une partie de votre app en tant que terminal, et si ce n'est pas déjà le cas, vous devez implémenter une extension applicative à cette fin, pour obtenir le comportement approprié, C'EST À DIRE. Annonce d'un nouveau texte écrit sur stdout, etc. Veuillez remonter un ticket contre NVDA, et nous pouvons vous aider à mettre votre extension applicative de terminal dans le lecteur d'écran. Le support pour Putty, Cygwin (Mintty), et secureCRT est déjà implémenté. Des Apps telles que R peuvent être mises en œuvre à l'avenir. Si votre app est correctement reconnue comme un terminal par NVDA, (le comportement terminal est correctement injecté au moment de l'exécution), cette extension devrait juste fonctionner. Si ce n'est pas le cas, n'hésitez pas à me le faire savoir via un issue. La rédaction d'une extension applicative est hors de portée pour ce document, mais elle est bien documentée dans le Guide du Développeur de NVDA. Cet exemple illustre [une extension applicative pour enseigner à NVDA que la fenêtre de terminal sur PuTTY est un terminal] (https://github.com/nvaccess/nvda/blob/master/source/appModules/putty.py). En outre, [Voici un exemple d'implémentation pour MinTTY] (https://github.com/nvaccess/nvda/blob/master/source/appModules/mintty.py). La chose la plus importante à s'assurer est que NVDAObjects.behaviors.Terminal est injecté à la class list.