Apresentado o lançamento do navegador de console Offpunk 3.0, que suporta operação nos protocolos HTTP/HTTPS, Gemini, Gopher e Spartan, além de ler feeds de notícias nos formatos RSS e Atom. O programa é escrito em Python e distribuído sob a licença AGPLv3.
O navegador é voltado para visualização de conteúdo em modo offline e permite assinar páginas ou marcá-las para visualização posterior, após o que essas páginas são automaticamente armazenadas em cache e atualizadas quando necessário. Offpunk oferece a possibilidade de armazenar cópias de sites e páginas que são periodicamente sincronizadas, sempre disponíveis para visualização local. As configurações de sincronização podem ser ajustadas pelo usuário, por exemplo, algum conteúdo pode ser sincronizado uma vez por dia, enquanto outro uma vez por mês.
A gestão é feita através de um sistema de comandos e combinações de teclas. Há suporte para marcadores de múltiplos níveis, assinaturas e conteúdo arquivável. Para diferentes tipos MIME, é possível conectar seus próprios manipuladores. A análise e exibição de páginas HTML são realizadas utilizando as bibliotecas BeautifulSoup4 e Readability. As imagens podem ser convertidas em gráficos ASCII usando a biblioteca chafa.
Para automatizar a execução de ações, utiliza-se um arquivo RC, que define a sequência de comandos ao iniciar. Por exemplo, através de um arquivo RC, pode-se abrir automaticamente a página inicial ou baixar o conteúdo de certos sites para visualização posterior no modo offline. O conteúdo baixado é salvo no diretório ~/cache/offpunk/ como uma hierarquia de arquivos nos formatos .gmi e .html, permitindo, se necessário, modificar o conteúdo, realizar limpeza manual ou visualizar páginas em outros programas.
O projeto continua o desenvolvimento dos clientes Gemini e Gopher AV-98 e VF-1, criados pelo autor do protocolo Gemini. O protocolo Gemini é significativamente mais simples do que os protocolos usados na Web, mas é mais funcional do que o Gopher. A parte da rede do Gemini lembra um HTTP muito simplificado sobre TLS (o tráfego é sempre criptografado), e a marcação das páginas é mais próxima do Markdown do que do HTML. O protocolo Spartan é projetado para transmissão de documentos no formato Gemini, mas diferencia-se na organização da interação de rede (não utiliza TLS) e expande as capacidades do Gemini com recursos para a troca de arquivos binários e suporte ao envio de dados. servidor.
Entre as mudanças na nova versão:
- Foi implementada a possibilidade de visualizar quadrinhos XKCD no terminal. Para exibir os quadrinhos, foi adicionada uma utilidade separada chamada 'xkcdpunk'.

- A biblioteca 'unmerdify' foi integrada, permitindo extrair o conteúdo principal de páginas HTML, usando um conjunto de regras 'ftr-site-config' para descartar o que é desnecessário.
- Foram adicionadas as operações 'share' e 'reply' para enviar a URL da página por e-mail e responder ao autor ao mencionar o e-mail na página.
- Foi adicionada a comando 'cookies', que permite importar um arquivo de texto com Cookies, que serão enviados para o domínio especificado. Dessa forma, é possível passar Cookies de sessão para acessar o site. O arquivo de Cookies pode ser gerado em um navegador tradicional (Firefox, Chromium) usando a extensão 'cookie-txt', após o que deve ser importado com o comando 'cookies import mycookie.txt https://domain'.
- A exibição de imagens nas páginas abertas através do Gemini está ativada por padrão. O tamanho das imagens exibidas no terminal foi aumentado.

- Foi implementada a exibição de links ocultos (dos tags <link rel='alternate'…>) para feeds RSS e Atom.
- Foi implementada a realce em vermelho para os links que estão bloqueados. domínios.

- Foi adicionada a suporte a predefinições com vários temas.
- Foi adicionada a possibilidade de traduzir a interface para diferentes idiomas.
Fonte: opennet.ru



