Sobre o projeto
texttv é um visualizador de linha de comando e interativo, pequeno, rápido e altamente configurável para o SVT Text-TV, o teletexto de serviço público da Televisão Sueca. Escrito inteiramente em Rust, roda na maioria das plataformas (macOS, Windows, Linux) e na maioria dos emuladores de terminal (iTerm2, Ghostty, Terminal.app, Windows Terminal, GNOME Terminal, Konsole, Foot, Terminator, Kitty, WezTerm, Alacritty, Tabby e outros).
O aplicativo oferece dois modos: modo interativo, onde você pode navegar pelas páginas usando entrada numérica, teclas de seta e Enter para selecionar links, e visualização de página única, onde você pode enviar uma página específica (por exemplo, `texttv 360`) diretamente para o terminal.
A renderização é flexível com dois caminhos principais: o modo teletexto reconstrói a página original de 40 colunas como texto real de terminal com cores ANSI, cabeçalhos em negrito com altura dupla (renderizados em altura normal devido ao suporte inconsistente do terminal) e sextantes Unicode para caracteres de bloco de mosaico. O modo de imagem usa o GIF de página original do SVT, fornecendo renderização perfeita em terminais com protocolos gráficos nativos (Kitty, Ghostty, WezTerm, iTerm2), com um fallback de meio bloco para outros. Você pode forçar um modo com `--mode` (teletexto, automático, kitty, iterm, blocos) e ajustar o tamanho da imagem com `--size` (minúsculo, pequeno, médio, grande, xl, cheio).
Recursos adicionais incluem degradação automática quando a saída é canalizada (escapes ANSI removidos, modo de imagem substituído por teletexto), um arquivo de configuração em `$XDG_CONFIG_HOME/texttv/config.yaml` para preferências persistentes e suporte a múltiplas fontes de dados: o proxy JSON `api.texttv.nu` mantido pela comunidade (que preserva atributos de cor necessários para o modo teletexto) e as páginas oficiais do SVT para o modo de imagem. Padrões de mosaico são armazenados em cache localmente para evitar buscas repetidas.
O modo interativo inclui um campo de entrada de página, detecção de links (referências de página de três dígitos com suporte para sufixos e intervalos de várias páginas), navegação de subpágina para páginas com várias páginas e atalhos de teclado. Requer um terminal de pelo menos 41 colunas por 26 linhas.
O projeto é independente e não é afiliado ao SVT ou texttv.nu, e os usuários são solicitados a respeitar os termos de serviço upstream. É licenciado sob MIT.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.