(quase) Trocando o Prism por um script de 60 linhas
Posted: outubro 6th, 2009 | Author: coredump | Filed under: Linux e Open Source, Programação | Tags: gtk, linux, prism, prisw, python, webkitQuase, mas quase mesmo.
O Prism é o antigo xulrunner da Mozilla. Básicamente é um browser capado para rodar aplicações web em janelas separadas do browser normal. Assim se a aplicação trava você não perde o browser, ou vice e versa. Eu uso bastante para rodar o gmail, o webmail do trabalho e o brizzly. O problema é que o treco é muito bloated. E da uns paus muito bizarros com SSL. E usa Gecko e mais uma estrutura gigante do Firefox por trás que não é bem necessário ao que ele se propõe.
Como o kov é minha musa inspiradora, resolvi dar uma fuçada no PyWebkitGTK e acabei escrevendo uma coisinha semi funcional em 60 linhas de Python
. Chamei o script de prisw, tipo, Prism com o M invertido vira W de WebKit. Ta-dã.
A parte mais importante tá aí: ele lê arquivos de configuração e roda em janelas separadas. Eu só não parei de usar o Prism ainda porquê preciso:
- Colocar o código para que links clicados sejam passados para o OS (eu não quero abrir janelas e urls dentro da mesma app)
- Tratar o título da janela com relação a mudanças que acontecem no TITLE das páginas (gmail e brizzly fazem isso)
- Talvez colocar uma opção para mostrar uma barra de status, nem que seja para mostrar se o SSL está ativo
- Lidar com cookies. Atualmente, mesmo que eu peça para guardar informações de login/etc, essas infos não tem onde serem salvas.
O WebKit que eu estou usando tem alguns probleminhas também com dimensionamento de janela, mas parece que já estão resolvendo no upstream. Daqui umas 2 semanas eu revisito o código e quem sabe eu posso parar de usar Prism, e ainda ganhar as vantagens do WebKit (velocidade, javascript violentamente rápido, etc…).
Aliás, tenho de dizer que optparser e configparser fazem a vida ficar extremamente simples ao se lidar com linhas de comando e arquivos de configuração em python viu.
Sintam-se livres para baixar e fuçar o script, ele é GPL, claro.
intel
No Comments »

Comentários