Console Toolkit es un complemento de NVDA que proporciona mejoras de accesibilidad en la consola de Windows, también conocida como Símbolo del sistema. También funciona bien en Windows PowerShell. Algunas de sus características pueden funcionar en terminales alternativas, como Cygwin, PuTTY y Windows Terminal. Sin embargo, el complemento sólo se ha probado cuidadosamente en la consola predeterminada de Windows. Los usuarios de SSH podrían encontrar especialmente útil este complemento.
Algunas de las características antes formaban parte del complemento Mejoras de Tony.

Verbalización de la consola en tiempo real

Esta opción hace que NVDA verbalice las nuevas líneas inmediatamente en cuanto aparecen en la salida de la consola, en vez de poner en cola los mensajes de voz. Por ejemplo, si NVDA está ocupado verbalizando una línea que apareció en pantalla hace un minuto y aparece una nueva línea, esta opción cancelará la verbalización de la línea anterior y comenzará a verbalizar la nueva, proporcionando más retroalimentación en tiempo real de lo que está sucediendo en la ventana de la consola.

Pitar cuando la consola se actualice

Emite un pitido grave cada vez que se actualiza el texto de la consola.

Reforzar control+v en las consolas

Esta opción permite que el atajo control+v funcione en sesiones SSH.

Experimental: edición del símbolo del sistema

Nota: esta función es experimental. Por favor, lee atentamente esta sección y asegúrate de entender cómo funciona antes de informar de problemas.
Pulsa NVDA+e para identificar la orden actual de la ventana de la consola y editarla en una ventana «Editar orden» accesible. Después de editar puedes pulsar escape para actualizar la línea de órdenes actual, o intro para actualizarla y ejecutarla de inmediato. Alternativamente, puedes pulsar alt+f4 para cerrar la ventana de editar orden sin actualizar la línea de órdenes.
Esta función se ha probado en el símbolo del sistema de Windows, cmd.exe, así como en la shell Bash sobre conexiones SSH, WSL y Cygwin. También podría funcionar en shells de Unix alternativas, aunque no se ha probado.
A continuación se explica cómo extrae el complemento la orden actual.

  1. Pulsa la tecla Fin y envía un carácter de control, un extraño carácter Unicode que probablemente no se use en ningún sitio.
  2. Después pulsa la tecla Inicio y envía otro carácter de control.
  3. Después espera a que los caracteres de control aparezcan en pantalla, algo que puede tardar un poco en conexiones SSH lentas.
  4. La orden es lo que se encuentra entre los dos caracteres.
  5. Cuando se habilita la opción «Utilizar UI Automation para acceder a la Consola de Windows cuando esté disponible» en las preferencias de NVDA, se envía un carácter de control adicional al principio de la cadena. Esto es necesario para interpretar correctamente órdenes de varias líneas: la implementación de UIA suprime los espacios en blanco al final de cada línea, por lo que para deducir si hay un espacio entre dos líneas, hay que rotarlas un carácter. Ten en cuenta, sin embargo, que puede que no se preserven todos los espacios entre palabras, este mecanismo sólo preserva la presencia de espacios.
  6. Antes de editar, el complemento se asegura de eliminar los caracteres de control situando el cursor al principio y al final y simulando pulsaciones de las teclas suprimir y retroceso.
  7. Presenta la orden en la ventana «Editar orden» para que el usuario la visualice o la edite.
  8. Después de que el usuario pulse intro, se borra la línea actual de la consola. Esto se logra mediante uno de estos cuatro métodos, la elección del método es configurable. Los métodos soportados son:
    • Control+c: funciona en cmd y Bash, pero deja la orden anterior visible; no funciona en Emacs y a veces es poco fiable en conexiones SSH lentas
    • Escape: sólo funciona en cmd.exe
    • Control+a y control+k: funciona en Bash y Emacs, pero no funciona en cmd.exe
    • Retroceso (recomendado): funciona en todos los entornos, pero es lento y puede causar corrupción si la longitud de la línea ha cambiado.
  9. Finalmente, el complemento simula pulsaciones de teclas para teclear la orden actualizada y, opcionalmente, simula una pulsación de la tecla intro.

Resolución de problemas:

  • Comprueba que las teclas ‘Inicio’, ‘Fin’, ‘Retroceso’ y ‘Suprimir’ funcionan como se espera en tu consola.
  • Comprueba que tu consola soporta caracteres Unicode. Algunas conexiones SSH no soportan Unicode.
  • Comprueba que el método de eliminación seleccionado funciona en tu consola.

Experimental: captura de la salida de la orden

Nota: esta función es experimental. Por favor, lee atentamente esta sección y asegúrate de entender cómo funciona antes de informar de problemas.
Mientras estés en la línea de órdenes o en la ventana «Editar orden», pulsa control+intro para capturar la salida de la orden.
Este complemento es capaz de capturar una enorme salida que ocupe varias pantallas, aunque si dicha salida se extiende a lo largo de más de 10 pantallas, el proceso de captura durará un tiempo considerable. El complemento reproducirá un sonido de campanada, que durará mientras se capture la salida de la orden en ejecución o hasta que el tiempo de espera se agote. Alternativamente, pulsa NVDA+e para interrumpir la captura.
Si la función «Utilizar UI Automation para acceder a la Consola de Windows cuando esté disponible» está habilitada en las opciones de NVDA, puedes cambiar a otras ventanas mientras la captura está en curso. Sin embargo, si esta opción está desactivada, significa que NVDA está usando un código de consola anticuado que sólo funciona cuando la consola tiene el foco, por lo que cambiar a otra ventana hará que se pause la captura.
La captura de órdenes funciona redirigiendo la salida de la orden al programa less. El sufijo por defecto que se anexa a las órdenes es:
|less -c 2>&1
Cámbialo sólo si sabes lo que estás haciendo. Este complemento sabe cómo interactuar con la salida de la orden less para recuperar el resultado página a página.
En Windows, es necesario instalar la herramienta less.exe por separado. Puedes instalarla mediante Cygwin, o descargar un binario para Windows en cualquier otro sitio.
Si usas tmux o screen en Linux, asegúrate de que no se muestra la línea de estado en la parte inferior. En tmux, ejecuta
tmux set status off
para deshacerte de la línea de estado, o modifica tu archivo tmux.conf.
Resolución de problemas:

  • Después de un intento de captura fallido, pulsa flecha arriba en la consola para comprobar qué orden se ha ejecutado en realidad.
  • Vuelve a usar el sufijo de captura predeterminado, mencionado anteriormente.
  • Prueba los pasos de resolución de problemas de la sección «Edición del símbolo del sistema».

Autor: José Manuel Delicado Alcolea

Ingeniero de software y máster en Ingeniería Informática por la Universidad Rey Juan Carlos. Me encanta todo lo relacionado con la informática, la accesibilidad y las nuevas tecnologías. Consultor de accesibilidad por cuenta propia desde el año 2015.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.