hackwrench — webkit/pygtk browser

Начал делать браузер на базе python-webkitgtk
Профит в том, что можно будет писать расширения на python(последний раз такое было в epiphany-gecko)

Загрузить можно так:
hg clone http://code.tabed.org/hackwrench
Запустить так:
cd hackwrench/hackwrench
python -m gui

Чтобы запустить под windows надо скомпилировать python-webkitgtk(для этого придется, как минимум, скомпилировать webkit).
Я утянул себе всё что нужно для кросс-компиляции, но пока не пробовал.
Возможно придется убрать gconf из conf.py


Чем отличается от tabber_browser.py, который идет с python-webkitgtk:
— Закладки
— Консоль python
— Вкладки вверху окна(а-ля chrome)
— Вкладки можно двигать
— Поиск из адресной строки
— Запускает внешний менеджер закачек при загрузке файла
— Интерфейс на gtkbuilder(описан в xml файле, который можно редактировать с помощью glade)
— Поиск из адресной строки
— Автодополнение адресной строки из history
— History, история поисковых запросов
— Что-то типа speed dial (показывает наиболее посещаемые сайты из history)
— Настройки хранятся в gconf
— Поддерживает favicon`ы, кеширует их у себя в директории

Что ещё не доделано:
— Настройки можно редактировать только через gconf-editor
— Закладки нельзя двигать/переименовывать
— Поддержка других поисковиков кроме гугла
— History и закладки, наверное, лучше хранить в sqlite
— Менюшки всякие
— Консоль неюзабельна; нормальную консоль можно получить как-нибудь так:


$ ipython -gthread
>>> from hackwrench.gui import *
>>> br = WebBrowser()
>>> br.new_window()
>>> br.windows
Out: [<BrowserWindow object at 0xa8fcfcc (GtkBuilder at 0xa6c1190)>]
>>> br.windows[0].tabs
Out: [<Tab object at 0xa90225c (GtkVBox at 0xa958008)>]
>>> br.windows[0].active_tab
Out: <Tab object at 0xa90225c (GtkVBox at 0xa958008)>
>>> br.windows[0].active_tab.browser.open('http://ya.ru/')






P.S. patches are welcome pawn13@gmail.com

UPD приделал поддержку userscript`ов. сейчас скрипты устанавливаются без предупреждения при клике на *.user.js(fixed)

продолжение
Add post to:   Delicious Reddit Slashdot Digg Technorati Google
Make comment

Comments

Bardsley 9.03.2010 8:08

Наверно видели, но ссылку запощу =) http://www.opennet.ru/opennews/art.shtml?num=22202

gconf блин…. пожалуй uzbl в данном случае будет поинтереснее, не видели его, кстати?

gconf очень легко отрывается: cat conf.py |grep -v conf |grep -v e. |grep -v type >/tmp/conf.py mv /tmp/conf.py ./

gconf по крайней мере есть в любом дистре(а у большинства-установлен), а uzbl надо ставить из git

не везде, в арче время от времени собирают (аналогично mplayer-у)

в арче даже мою прогу собирают(qcon), так что я не удивлен:)

Интересуют участники? Могу поучаствовать. Пиши divius [точка] inside [собака] gmail.com

Интересуют участники? Могу поучаствовать. Пиши divius [точка] inside [собака] gmail.com

freelance writer

I am new at this website. I am hired by the premium <a href=”http://www.specialessays.com”>essay writing</a> service. Thus, I will be glad to help you with essays accomplishing! Don’t be afraid to contact me.

Required. 30 chars of fewer.

Required.

captcha image Please, enter symbols, which you see on the image