El complemento Mi calculadora para NVDA es una calculadora diseñada para mejorar la experiencia de usuarios de lector de pantalla.

Características

  • Historial de cálculos
  • Acceso rápido: pulsa NVDA+shift+m para abrir la calculadora.
  • Retroalimentación por audio: se reproduce un pitido cada vez que se introduce un valor.
  • Navegación:
    • Pulsa intro, tabulador e igual para mover el foco al resultado.
    • Pulsa escape para cerrar el programa.
  • Soporte del portapapeles: copia fácilmente el resultado del cálculo al portapapeles.
  • Flexibilidad en la entrada:
    • Se puede usar también la x para multiplicación.
    • Se puede usar también el signo : para la división.

Notas

Las entradas no válidas se eliminarán automáticamente del campo de entrada.

Registro de cambios

V1.0.0

  • Primer lanzamiento del complemento Mi calculadora para NVDA.

Licencia

Este proyecto se libera bajo la licencia GPL-2.0.

Colaboraciones

¡Las colaboraciones son bienvenidas! Siéntete libre de abrir una incidencia o una solicitud de cambios.

Opciones del navegador es un complemento para NVDA que permite realizar búsquedas usando diferentes navegadores instalados en el dispositivo, como Chrome, Firefox y Edge. Este complemento proporciona la flexibilidad para elegir tu navegador preferido para buscar, directamente desde NVDA.

Características

  • Soporte de varios navegadores: elige entre Chrome, Firefox o Edge para navegar.
  • Fácil de usar: realiza búsquedas con unos pocos atajos de teclado.
  • Personalizable: puedes elegir qué navegadores usar.

Modo de uso

  • Tras la instalación, puedes abrir el diálogo de opciones del navegador con NVDA+o.
  • Elige tu navegador preferido (Chrome, Firefox o Edge) e introduce tu consulta de búsqueda.
  • El navegador elegido se abrirá con los resultados.

Colaboraciones

¡Se agradecen las colaboraciones! Si quieres colaborar con este proyecto, bifurca el repositorio, haz modificaciones y envía una solicitud de cambios.

Licencia

Este proyecto se libera bajo la licencia GPL-2.0.

Este complemento para NVDA mejora la accesibilidad de la aplicación V2rayN.

Características

  • Añade etiquetas adecuadas a elementos de menú, botones, cuadros combinados y cuadros de edición.

Utilidades JSON para NVDA.

Modo de uso

  • NVDA+j: si hay texto seleccionado, toma el texto JSON seleccionado y lo muestra formateado en un diálogo explorable de NVDA. Si no hay texto seleccionado, muestra el diálogo con texto JSON formateado que toma del portapapeles.
  • NVDA+shift+j: formatea varios JSON de un mismo texto

Cómo funciona la característica multi JSON

Hay situaciones en las que tenemos varios JSON, uno por línea (líneas de registro, por ejemplo):

{"datetime": "2022-03-10 21:04:05", "level": "info", "message": "user logged in"}
{"datetime": "2022-03-10 21:04:08", "level": "error", "message": "Database is down"}


Al pulsar «NVDA+shift+j», este complemento toma cada línea, formatea y muestra todos los elementos como una lista.
El texto formateado se mostrará de la siguiente manera:

[
    {
        "datetime": "2022-03-10 21:04:05",
        "level": "info",
        "message": "user logged in"
    },
    {
        "datetime": "2022-03-10 21:04:08",
        "level": "error",
        "message": "Database is down"
    }
]

Filtrado/transformación de JSON

Este complemento te permite filtrar o transformar JSON usando JQ o JSONPath. De forma predeterminada, se usa JQ, pero puedes cambiarlo en el panel de opciones de NVDA.
Al abrir el cuadro de diálogo JSON con «NVDA+j» o «NVDA+shift+j», se pueden ver tres cuadros de texto: texto original, expresión de consulta y salida. Se debe usar el segundo campo de texto para filtrar/transformar JSON. Escribe la consulta, pulsa intro y comprueba el resultado en el campo de texto de «salida».
Para probar esta función se puede utilizar este archivo de registro falso:

{"timestamp": "2024-11-07T14:12:45Z", "level": "INFO", "trace_id": "abc123", "span_id": "span789", "message": "User login successful"}
{"timestamp": "2024-11-07T14:13:12Z", "level": "ERROR", "trace_id": "def456", "span_id": "span101", "message": "Failed to connect to database"}
{"timestamp": "2024-11-07T14:15:30Z", "level": "DEBUG", "trace_id": "ghi789", "span_id": "span202", "message": "Fetching data from cache"}
{"timestamp": "2024-11-07T14:17:02Z", "level": "WARN", "trace_id": "jkl012", "span_id": "span303", "message": "High memory usage detected"}
{"timestamp": "2024-11-07T14:19:25Z", "level": "INFO", "trace_id": "mno345", "span_id": "span404", "message": "Background job started"}
{"timestamp": "2024-11-07T14:21:58Z", "level": "ERROR", "trace_id": "pqr678", "span_id": "span505", "message": "Timeout while waiting for external API response"}
{"timestamp": "2024-11-07T14:23:47Z", "level": "DEBUG", "trace_id": "stu901", "span_id": "span606", "message": "User profile data parsed successfully"}
{"timestamp": "2024-11-07T14:25:15Z", "level": "WARN", "trace_id": "vwx234", "span_id": "span707", "message": "Deprecated API version called"}
{"timestamp": "2024-11-07T14:27:33Z", "level": "INFO", "trace_id": "yzb567", "span_id": "span808", "message": "File uploaded successfully"}
{"timestamp": "2024-11-07T14:29:09Z", "level": "ERROR", "trace_id": "cde890", "span_id": "span909", "message": "Null pointer exception encountered"}

JQ

JQ es como un lenguaje de programación para filtrar y transformar datos JSON. Debido a esta flexibilidad, este es el motor de consulta predeterminado que se utiliza en este complemento.
Ejemplos de programas JQ:

Consultas JQ acompañadas de sus descripciones
Consulta Descripción
Obtener JSON original .
Extraer todos los mensajes de registro .[].message
Obtener todos los registros INFO .[] | select(.level == «INFO»)
Obtener un objeto sólo con marcas de tiempo y mensajes de tipo WARN .[] | select(.level == «WARN») | {timestamp, message}
Obtener la marca de tiempo de los registros que contienen «cache» en el mensaje .[] | select(.message | test(«cache»)) | .timestamp
Obtener solo los campos «mensaje» y «marca de tiempo», agrupados por nivel group_by(.level) | map({(.[0].level): map({message: .message, timestamp: .timestamp})})
Obtener los tres primeros registros con nivel debug .[] | select(.level == «DEBUG») | . | limit(3;.)
Agregar un campo «is_critical=true» a los niveles de ERROR y falso a los demás .[] | .is_critical = (.level == «ERROR») | .
Eliminar registros DEBUG map(select(.level != «DEBUG»))
Ordenar registros por marca de tiempo, ascendente sort_by(.timestamp)
JSONPath

JSONPath es una sintaxis que permite filtrar elementos JSON. Puedes conocerla mejor consultando su documentación.
Consultas de ejemplo:

Consultas de ejemplo de JSONPath
Descripción Consulta
Obtener JSON original $
Extraer todos los mensajes de registro $..message
Obtener registros con nivel = ERROR $[?(@.level == ‘ERROR’)]
Extraer el campo «trace_id» de todos los registros INFO $[?(@.level == ‘INFO’)].trace_id
Obtener todos los registros que no son de depuración $[?(@.level != ‘DEBUG’)]
Extraer todos los registros antes de una marca de tiempo $[?(@.timestamp > ‘2024-11-07T14:20:00Z’)]

Transformación de cadenas con JSONPointer (NVDA+ctrl+j)

Dado este JSON:

{
    "name": "Josiel",
    "family": {
        "mother": {"name": "Maria"}
    },
    "programming_languages": ["Java", "PHP"]
}


Con esta funcionalidad se pueden crear cadenas usando marcadores de posición con sintaxis JSONPointer:
Mi nombre es {/name}, mi madre es {/family/mother/name} y mi lenguaje de programación favorito es {/programming_languages/1}
Resultado:
Mi nombre es Josiel, mi madre es Maria y mi lenguaje de programación favorito es PHP

Uso de autocompletar

En el campo de edición de expresión:

  • Pulsa control+intro para ejecutar y guardar una consulta.
  • Escribe parte de la expresión.
  • Utiliza las flechas arriba y abajo para moverte por la lista de sugerencias.

En la lista de sugerencias:

  • Pulsa intro para rellenar el campo con la expresión elegida y ejecutarla.
  • Pulsa retroceso para borrar el último carácter y situar el foco en el cuadro de edición.
  • Pulsa suprimir para borrar la expresión guardada.

Características (implementadas y futuras)

  • Analizar JSON desde el portapapeles
  • Analizar JSON a partir del texto seleccionado (cursor)
  • Análisis de múltiples cadenas JSON (una por línea)
  • Panel de configuración
    • Opción para seleccionar el motor de consulta a utilizar
    • Configurar el comportamiento de los scripts (tomar JSON solo del texto seleccionado, solo del portapapeles o ambos (actual))
  • Análisis de variantes de JSON
    • JSON original que utiliza el módulo json de Python
    • json5
  • JSON interactivo a través de una interfaz de usuario
    • Botón para copiar la salida al portapapeles
    • Filtrado/transformación de JSON
      • Con JSONPath ( https://goessner.net/articles/JsonPath/ , https://github.com/h2non/jsonpath-ng )
      • Con JQ ( https://jqlang.github.io/jq/ , https://github.com/mwilliamson/jq.py )
      • Guardar filtros/transformaciones para evitar escribir (programa y descripción)
      • Autocompletar con consultas guardadas
      • Transformación de cadenas mediante JSONPointer ( https://datatracker.ietf.org/doc/html/rfc6901 , https://github.com/stefankoegl/python-json-pointer?tab=readme-ov-file )

Voces Índicas Hear2Read es un sintetizador gratuito para NVDA que soporta idiomas índicos y genera voz humana natural. Se basa en el trabajo hecho por el equipo de Piper TTS, y se inspira un poco en el complemento Sonata-NVDA.

Cómo instalar voces para el sintetizador índico Hear2Read

  • Abre el menú NVDA (NVDA+N o clic en el icono de la bandeja del sistema).
  • Elige Hear2Read Indic Voice Manager.
  • Navega por la lista de la ventana para seleccionar la voz a descargar.
  • Reinicia NVDA cuando se complete la descarga.

Cuando NVDA se reinicie, puedes ir a:

  • Preferencias de NVDA -> Opciones
  • En la ventana emergente, selecciona Voz.
  • Cambia el sintetizador a Hear2Read Indic Voices.
  • Cambia la voz al idioma deseado.

Complemento para Radioaficionados es un complemento para el lector de pantalla NVDA que proporciona herramientas para entusiastas de la radioafición. Este complemento incluye un temporizador de tres minutos con notificaciones de audio y una función para buscar indicativos de radio en QRZ.com de manera rápida. Es ideal para usuarios que operan radios mientras utilizan NVDA, permitiéndoles gestionar eficazmente sus tiempos de transmisión o acceder fácilmente a información de indicativos.

Funciones

  • Temporizador de tres minutos: Ayuda a los usuarios a gestionar los tiempos de transmisión. Reproduce un tono de advertencia a los 2 minutos y 40 segundos, y un tono final a los 3 minutos.
  • Búsqueda de indicativos en QRZ: Permite a los usuarios introducir un indicativo de radio y navegar directamente a la página correspondiente en QRZ.com.

Cómo funciona

  • Temporizador: El temporizador se puede iniciar mediante un gesto específico. Reproduce tonos en los intervalos designados y anuncia el inicio del temporizador.
  • Búsqueda de indicativos: Los usuarios pueden abrir un cuadro de diálogo para introducir un indicativo. Al enviarlo, serán redirigidos a la página correspondiente en QRZ.com.

Atajos de teclado

Los atajos de teclado deben ser asignados por el usuario a través de la opción «Gestos de entrada» en el menú de preferencias de NVDA. Ambas funciones están disponibles bajo la categoría «Complemento de Radioaficionados».

Nota: los atajos documentados para este complemento sólo funcionarán con la distribución de teclado en inglés, o con aquellas donde el símbolo = tenga su propia tecla independiente.
Este complemento se ha diseñado para facilitar la corrección de errores gramaticales y ortográficos en textos. Usa dos sistemas: uno más simple basado en AutoCorrect, y otro más complejo basado en LanguageTool.
El primer sistema está basado en la biblioteca AutoCorrect. Emplea modelos para comprobar y corregir errores ortográficos. La biblioteca AutoCorrect usa técnicas de procesamiento del lenguaje natural (pln) para analizar el texto y sugerir las correcciones más probables.
El segundo sistema, más complejo, utiliza la biblioteca LanguageTool. Se usa para comprobar en profundidad errores gramaticales y ortográficos. Esta biblioteca necesita Java y dispone de un potente modelo para análisis lingüístico de textos. LanguageTool usa reglas y algoritmos para detectar y corregir errores en el texto. Esto permite no sólo corregir errores ortográficos, sino también errores gramaticales complejos y mejorar el estilo del texto.

Lista de atajos de teclado

  • NVDA+=: método predeterminado para corregir errores automáticamente.
  • NVDA+shift+=: método alternativo para corregir errores automáticamente.
  • NVDA+alt+=: método predeterminado para obtener opciones de sustitución.
  • NVDA+alt+shift+=: método alternativo para obtener opciones de sustitución.
  • NVDA+control+=: abrir ventana del complemento.
  • NVDA+control+alt+=: cambiar idioma.

En la ventana abierta del complemento:

  • Control+intro en un cuadro de edición inicia el modo de revisión de texto, similar a pulsar el botón «Check».
  • Intro en un error de una lista de errores encontrados: si sólo hay una sustitución propuesta, esta se copia inmediatamente al portapapeles. Si no, muestra una lista con sustituciones para seleccionar, y al pulsar intro en una de ellas, se copiará al portapapeles.

Este complemento permite configurar las voces disponibles en el anillo de opciones.

Este complemento es una colección de mejoras para el uso del ratón con NVDA. Puede que algunas funciones se muevan a características independientes en el futuro.

Características

  • Se corrige el seguimiento del ratón en aplicaciones Electron, tales como Visual Studio Code.
  • Se corrige una zona del panel de control de NVIDIA donde el contenido del control de texto estático de descripción es incorrecto.
  • Se corrige un problema por el que no se obtenía la descripción textual de algunos botones en el programa PDFGear.
  • El seguimiento del ratón puede indicar la descripción de las opciones en el instalador de Git para Windows (las opciones individuales no se pueden ver de forma individual).

Registro de cambios

0.3.0

  • Se cambia el nombre del complemento a Mejoras del ratón (no afecta a las actualizaciones).
  • Se ignora un error al entrar en pantallas seguras causado por un objeto que no tiene atributo de nombre de clase.
  • El seguimiento del ratón puede indicar la descripción de las opciones en el instalador de Git para Windows (las opciones individuales no se pueden ver de forma individual).
  • Se actualiza la plantilla del complemento.

0.2.0

  • Se corrige una parte del panel de control de NVIDIA donde el contenido del control de texto estático de descripción es incorrecto.
  • Se corrige un problema que impedía obtener el texto de descripción en algunos botones de PDFGear.

0.1.0

  • Se corrige el seguimiento del ratón en aplicaciones Electron.

Características

  • Pulsa NVDA+shift+9 para escuchar el uso de memoria física del programa que tenga el foco en ese momento.
  • Proporciona información de memoria precisa usando métricas del administrador de tareas de Windows.
  • Indicación simple y eficiente.

Modo de uso

  1. Lleva el foco a la ventana de cualquier programa.
  2. Pulsa NVDA+shift+9.
  3. NVDA anunciará el nombre del programa y su uso de RAM actual.

Requisitos

  • NVDA 2019.3 o posterior.
  • Windows 7 o posterior.

Registro de cambios

1.0.0

  • Versión inicial.
  • Indicación del uso de RAM física.