Traductor Avanzado Pro

Versión 1.0.0 para Tiresias. Basado en el complemento Traductor Avanzado Pro (TranslateAdvanced) de NVDA de Héctor J. Benítez Corredera, reescrito por completo con la API de Tiresias.

Índice

Descripción

Traductor Avanzado Pro traduce textos a decenas de idiomas con varios servicios. Sus funciones principales son:

Requisitos e instalación

Instálalo desde la tienda de complementos de Tiresias o con «Complementos, Administrador de complementos, Instalar desde archivo». Después de instalarlo, reinicia Tiresias.

Órdenes y teclas

Todas las órdenes están en la categoría «Traductor Avanzado Pro» del diálogo Gestos de entrada, donde se les puede asignar cualquier tecla. Por defecto solo hay dos atajos globales (en NVDA eran NVDA+Mayúsculas+T y NVDA+Mayúsculas+I, pero en Tiresias esas combinaciones ya son de «IA: traducir el texto seleccionado» y «Lupa: invertir colores»):

Atajos globales
TeclaAcción
Tiresias+Control+Mayúsculas+TActiva la capa de órdenes del traductor (suena un aviso; vuelve a pulsarla para cerrarla)
Tiresias+Control+Mayúsculas+GDetecta el idioma del texto seleccionado (Google; si no hay conexión, con el detector local)

Capa de órdenes

Pulsa Tiresias+Control+Mayúsculas+T y después una de estas letras. Cualquier otra tecla cierra la capa y funciona como siempre. Al abrir y cerrar la capa suenan dos avisos (se pueden desactivar en las opciones).

Teclas de la capa
TeclaAcción
TActiva o desactiva la traducción simultánea
STraduce el texto seleccionado
BTraduce el contenido del portapapeles
LCopia la última traducción al portapapeles
HMuestra el historial de traducciones
DCambia el idioma de destino (lista con búsqueda)
OCambia el idioma de origen (lista con búsqueda)
CCambio rápido de servicio, modelo de IA e idiomas
ALimpia toda la caché (fuera de la capa, la orden pide pulsar dos veces)
XLimpia la caché de la aplicación actual (fuera de la capa, pulsar dos veces)
GActiva o desactiva la caché
VTraduce el último texto verbalizado por Tiresias
ZTraduce el objeto navegador (su nombre o, si no tiene, su texto)
WAbre la interfaz de traducción (con el texto seleccionado, si lo hay)
IDetecta el idioma del texto seleccionado
JActiva o desactiva el intercambio automático de idioma
KIntercambia el idioma de destino y el alternativo
UComprueba si hay una versión nueva del complemento en la tienda de Tiresias
PAbre la configuración (categoría del complemento en las Opciones de Tiresias)
RReconoce con OCR el objeto navegador y traduce el texto
EBusca la palabra seleccionada en el diccionario
EscapeCierra la capa
F1Muestra la ayuda de la capa

Las órdenes que traducen avisan con «Hay una traducción en curso» si ya hay otra en marcha. Las de selección, portapapeles, último texto, objeto y OCR piden desactivar antes la traducción simultánea, como en el original.

Traducción simultánea

Con la traducción simultánea activada (capa, T), todo lo que dice Tiresias pasa por el traductor mediante el punto de extensión de voz filter_speechSequence:

Servicios de traducción

Servicios disponibles
ServicioClaveNotas
Google Translate (API Gratuita)NoServicio por defecto. Corta los textos largos en trozos. Si Google limita las peticiones, usa durante un rato el servicio alternativo de Google (el de la extensión del navegador).
DeepL (Gratuito)NoEl servicio de la extensión del navegador de DeepL. DeepL lo limita mucho: si responde «demasiadas solicitudes», hay que esperar o usar otro servicio.
DeepL APISíAPI oficial. Las claves terminadas en «:fx» usan la API Free y las demás la Pro. Rota de clave si una no es válida o agota la cuota. Desde «Gestionar claves» se puede consultar el uso de caracteres.
Microsoft Translator (Gratuito)NoUsa el token público del traductor de Edge y, si Microsoft no lo da, el traductor web de Bing (mismo motor).
LibreTranslateOpcionalCódigo abierto. Puedes indicar tu propio servidor («URL del servidor») y una clave; sin servidor propio prueba los servidores públicos, que hoy suelen pedir clave.
OpenAI GPTSíModelo por defecto gpt-4o-mini. Admite cualquier API compatible con OpenAI indicando su URL. Adapta los parámetros a los modelos de razonamiento.
Claude (Anthropic)SíModelo por defecto claude-opus-5-5 con esfuerzo bajo (rápido para traducir). Con los modelos que lo admiten pide el modelo de respaldo automático si el principal rehúsa el texto.
Google GeminiSíModelo por defecto gemini-2.5-flash.
DeepSeekSíModelo por defecto deepseek-chat.

Hay unos 90 idiomas en las listas. Cada servicio convierte el código al formato que espera (por ejemplo, el chino simplificado es «zh-CN» en Google, «zh-Hans» en Microsoft y «ZH» en DeepL).

Claves de API, modelos y prompts

En las Opciones de Tiresias, categoría «Traductor Avanzado Pro», grupo «Claves API», cada servicio que usa clave tiene:

Las claves se guardan cifradas con la protección de datos de Windows (DPAPI): solo tu usuario, en este equipo, puede descifrarlas. Si copias la carpeta de datos a otro equipo tendrás que volver a escribirlas.

En los diálogos del complemento, Control+H muestra la ayuda del control con el foco.

Opciones

Están en Tiresias, menú Preferencias, Opciones, categoría «Traductor Avanzado Pro» (también con la capa y P, o desde el menú Herramientas). Se guardan con la configuración de Tiresias (y con sus perfiles).

Interfaz de traducción y reproductor

Con la capa y W (o desde el menú) se abre la interfaz de traducción, con el texto seleccionado si lo hay:

«Escuchar» descarga la traducción con la voz de Google (con una barra de progreso que se puede cancelar) y abre el reproductor:

Teclas del reproductor
TeclaAcción
F1Retroceder
F2Reproducir o pausar
F3Adelantar
F4Detener
F5 y F6Bajar y subir el volumen
F7 y F8Bajar y subir la velocidad (de 0,5 a 2)
F9Tiempo transcurrido y total
Mayúsculas+F10 o tecla Aplicaciones en Retroceder o AdelantarElegir el salto: 1, 5, 10, 15 o 30 segundos o 1 minuto

«Guardar audio» guarda el audio como MP3. Volumen, velocidad y saltos se recuerdan.

Historial

Se guardan las 500 traducciones más recientes, también entre sesiones. El diálogo del historial (capa y H) tiene búsqueda, filtros por idioma de destino y por servicio, la lista de traducciones, el texto completo de la seleccionada y los botones Copiar original, Copiar traducción (o Intro en la lista), Eliminar, Exportar (CSV para hojas de cálculo o JSON), Estadísticas (total, caracteres, idioma y servicio más usados, y el estado de la caché) y Limpiar todo.

Caché inteligente

Las traducciones se guardan por aplicación e idioma de destino (como mucho 1000 por grupo; cuando se llena se descartan las menos usadas). Se busca primero en la caché de la aplicación con el foco y después en la general. La caché se guarda en disco cada pocas traducciones, al desactivar la traducción y al cerrar Tiresias. Con la capa: A limpia toda la caché, X la de la aplicación actual y G la activa o desactiva.

Plugins de extensión

Añadir servicios y plugins propios

Los archivos .py que pongas en las carpetas traductores y plugins de la carpeta de datos del complemento se cargan al iniciar Tiresias (y no se pierden al actualizar). Un servicio hereda de TraductorBase:

from ..nucleo.gestor_traductores import TraductorBase

class MiTraductor(TraductorBase):
	id = "mi_traductor"
	nombre = "Mi traductor personalizado"
	descripcion = "Descripción del servicio"
	requiere_api = True

	def traducir(self, texto, idioma_origen="auto", idioma_destino="es", **kwargs):
		# Devuelve la traducción, o None si falla (y pon el motivo en self.ultimo_error)
		return texto_traducido

Un plugin hereda de PluginBase (from ..nucleo.gestor_plugins import PluginBase, TipoPlugin), define id, nombre, descripcion y ejecutar(), y puede exponer comandos con obtener_comandos() y entradas para el submenú del complemento con obtener_elementos_menu() (lista de {"etiqueta": ..., "accion": ...}). Con self.plugin_principal accede al complemento (gestores de traductores, idiomas, caché e historial).

En el menú de Tiresias, Herramientas, Traductor Avanzado Pro: Configuración, Historial de traducciones, Interfaz de traducción, Cambio rápido de servicio e idiomas, Idioma de destino, Idioma de origen, Documentación (este documento) y Apoyar el proyecto.

Dónde se guardan los datos

En la carpeta de datos de Tiresias, addonsData\TraductorAvanzadoPro: apis.json (claves cifradas y ajustes de cada servicio), historial.json, cache (caché de traducciones), modelos (listas de modelos de las IA), temp (audio temporal del reproductor), y las carpetas traductores, plugins y sonidos para tus añadidos (un open.wav o close.wav propio sustituye a los sonidos de la capa). También se puede poner un idiomas.json para añadir o renombrar idiomas.

Diferencias con la versión de NVDA

Créditos, licencia y apoyo

Autor: Héctor J. Benítez Corredera (xebolax@gmail.com). Proyecto original: https://github.com/hxebolax/TranslateAdvanced. Versión para Tiresias: reescritura del complemento para el lector de pantalla Tiresias.

Este complemento está cubierto por la Licencia Pública General de GNU (GPL), como el original. No incluye bibliotecas ni binarios de terceros: usa la biblioteca estándar de Python y lo que ya trae Tiresias. Los servicios de traducción, diccionario y voz pertenecen a sus empresas (Google, DeepL, Microsoft, LibreTranslate, OpenAI, Anthropic, DeepSeek, Free Dictionary API y Wikimedia) y están sujetos a sus condiciones de uso.

Si este complemento te resulta útil, puedes apoyar su desarrollo: https://paypal.me/hjbcdonaciones.

Historial de cambios

1.0.0

Primera versión para Tiresias: todas las funciones del Traductor Avanzado Pro de NVDA (versión 2025.12.28) reescritas con la API de Tiresias, más el servicio Claude, el historial persistente con exportación y estadísticas, el diccionario multilingüe con Wiktionary, los servicios de respaldo de Google y Microsoft y el cifrado de las claves.