Sobre el proyecto
texttv es un visor de línea de comandos e interactivo, pequeño, rápido y altamente configurable para SVT Text-TV, el servicio público de teletexto de la Televisión Sueca. Escrito completamente en Rust, funciona en la mayoría de las plataformas (macOS, Windows, Linux) y en la mayoría de los emuladores de terminal (iTerm2, Ghostty, Terminal.app, Windows Terminal, GNOME Terminal, Konsole, Foot, Terminator, Kitty, WezTerm, Alacritty, Tabby y otros).
La aplicación ofrece dos modos: modo interactivo, donde puedes navegar por las páginas usando entrada numérica, teclas de flecha y Enter para seleccionar enlaces, y vista de página única, donde puedes mostrar una página específica (por ejemplo, `texttv 360`) directamente en la terminal.
El renderizado es flexible con dos rutas principales: el modo teletexto reconstruye la página original de 40 columnas como texto real de terminal con colores ANSI, encabezados en negrita de doble altura (renderizados a altura normal debido al soporte inconsistente de la terminal) y sextantes Unicode para caracteres de bloque de mosaico. El modo imagen utiliza el GIF de página original de SVT, proporcionando un renderizado perfecto en terminales con protocolos gráficos nativos (Kitty, Ghostty, WezTerm, iTerm2), con un respaldo de medio bloque para otras. Puedes forzar un modo con `--mode` (teletext, auto, kitty, iterm, blocks) y ajustar el tamaño de la imagen con `--size` (tiny, small, medium, large, xl, full).
Las características adicionales incluyen degradación automática cuando la salida se canaliza (se eliminan los escapes ANSI, el modo imagen se reemplaza por teletexto), un archivo de configuración en `$XDG_CONFIG_HOME/texttv/config.yaml` para preferencias persistentes y soporte para múltiples fuentes de datos: el proxy JSON `api.texttv.nu` administrado por la comunidad (que conserva los atributos de color necesarios para el modo teletexto) y las páginas oficiales de SVT para el modo imagen. Los patrones de mosaico se almacenan en caché localmente para evitar búsquedas repetidas.
El modo interactivo incluye un campo de entrada de página, detección de enlaces (referencias de página de tres dígitos con soporte para sufijos y rangos de varias páginas), navegación de subpáginas para páginas de varias páginas y atajos de teclado. Requiere una terminal de al menos 41 columnas por 26 filas.
El proyecto es independiente y no está afiliado a SVT ni a texttv.nu, y se pide a los usuarios que respeten los términos de servicio de las fuentes. Está licenciado bajo MIT.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.