Как стать автором
Обновить

Комментарии 36

Будут ли собранные расширения работать под Mac OS и Linux?
Python и JS кроссплатформены. — полагаю да.
Будут работать и расширения и сам сборщик под MacOS & Linux тоже работает.
Сборщик работает, но для этого нужно нечто следующее (например):

@@ -243,7 +243,8 @@
return outDir

def pack(self, dst, src):
- chrome_path = self.get_chrome_path()
+ chrome_path = '/Applications/Google\\ Chrome.app/Contents/MacOS/Google\\ Chrome'
if(chrome_path != ''):
extension_path = os.path.abspath(src)
На сколько фреймворк утяжеляет каждое расширение? Каждый килобайт обёрточного кода по крайней замедляет запуск браузера.
Присоединяюсь. Возможно, фреймворк нужно использовать для быстрого создания приложений под разные браузеры, а уже потом допиливать руками.
Прослойка между браузерным API и Kango API очень узкая и даже в бета версии неплохо оптимизирована — на скорость загрузки практически не влияет. Точные цифры подсчитывать ещё рано, но одной из задач сборщика является уменьшения оверхеда путём вырезания лишнего кода для каждой из платформ.

Кроме того, единый код позвляет легче поддерживать аддон под всеми браузерами а не допиливать по отдельности всё.
Тогда это прекрасно :)
«Для сборки хромовского расширения нужен установленный Google Chrome под Windows, либо Chromium под Linux.»
Странное заявление. А Google Chrome под Linux или Chromium под Windows не подойдут?

А так всё клёво, такие фреймворки должны были сразу быть. А еще лучше — полная унификация расширений под браузеры. Хотя учитывая «альтернативно одаренные» браузеры из двух букв это навсегда будет фантастикой.
FF?
А я уж и забыл что IE имеет расшифровку в два слова, честно говоря. My bad. Имел в виду, конечно же, вечный тормоз развития веба Internet Explorer.
Альтернативная одаренность тут ни причем, чистая хронология. Сначала расширения появились в IE, они пишутся на C. Дальше пошли расширения в FF, на XUL+JS. И последние по времени Chrome+Safari+Opera расширения — на HTML+JS.
Тенденция ясна?
Да знаю я, что появились в разное время и на разных технологиях. Я про то что не собираются никак унифицировать это. Потому что каждый гнёт свою линию. Причем если Mozilla и Google еще могут договориться о более-менее едином формате, то MS на это никогда не пойдет.
MS придётся сделать это, да они уже и идут к этому, потому что именно к этому всё и идёт, цитирую:

thenextweb.com/dd/2011/06/02/windows-8-apps-to-be-built-in-html-javascript/

Apps that use the “new Windows” approach to programming will be built in HTML and JavaScript, said Windows president Steven Sinofsky at D9′s Windows 8 announcement today.

Windows 8 will run traditional Windows applications as well, but the company will encourage developers to adopt this new approach to application development that depends on the new wave of web technologies.


Шедеврально! :)
Кстати есть аналогичный фреймворк — FireBreath и тоже на питоне. О нем уже писали на хабре тут и тут
FireBreath это фреймворк для создания плагинов (NPAPI, ActiveX), а этот фреймкорк, как я понял, для создания расширений (позволяет добавлять кнопку в браузер и т.д.) и на выходе не дает бинарников — только JS.
Ожидается ли поддержка элементов UI, отличных от кнопки? Нотификаторы, попапы, и т.п.
Попапы и нотификаторы запланированны и находятся в стадии тестирования. Отдельно хочу заметить, что тулбаров здесь небдет никогда.
тулбаров здесь не будет никогда.

Так вроде в chrome ext их и нет…
В экспериментальном API есть. Ждите, готовьтесь)
Нет, вру. Не тулбары будут, а сайдбары
НЛО прилетело и опубликовало эту надпись здесь
Интересует момент, например, из-под хрома можно программно скопировать выделенный на странице текст в буфер, чего в лисе сделать нельзя. Как будет себя вести сгенерированное расширение под лисой, непредсказуемо или просто данный функционал не будет работать?
Его просто не будет в API фреймворка
Интересно было бы почитать про то, как портировать расширения между платформами. Можно на примере работы этого фреймворка.
А можно итоговый вариант расширений?
Просто понравилась реализация gmail для FF.

Заранее спасибо.
Собранные расширения можно найти тут :Firefox, Chrome
Для FF уже проще стало, сделали стандартное builder.addons.mozilla.org/
НЛО прилетело и опубликовало эту надпись здесь
XUL? XPCOM? XBL? Components?
и не только на assistly, ещё на десятки сотен подобных, это тред
а фреймворк да, надо потестить, очень кстати…
Ужасно много букв для такого расширения, можно ли это все ужать с помощью jQuery или лучше Mootools?
Хотя я все же погляжу поближе. Спасибо
Он транслирует питоновский код в js? или для работы должен быть установлени питон? Вобщем, интересует как оно устроено?
В описании к последней версии указана поддержка Mac OS, с ошибкой кстати (Builder: Mas OS support added), но у меня процесс сборки расширения падает с ошибкой:
Building chrome extension
Traceback (most recent call last):
File "../kango-framework-latest/kango.py", line 971, in main()
File "../kango-framework-latest/kango.py", line 968, in main
CommandLineProcessor().process()
File "../kango-framework-latest/kango.py", line 962, in process
args.execute(args)
File "../kango-framework-latest/kango.py", line 930, in execute
builder.build()
File "../kango-framework-latest/kango.py", line 813, in build
self._build_extension(builderClass)
File "../kango-framework-latest/kango.py", line 787, in _build_extension
self._copy_extension_files(self.jsSourceDir, out, builder.key)
File "../kango-framework-latest/kango.py", line 775, in _copy_extension_files
self._merge_dirs(os.path.join(src, dir), out)
File "../kango-framework-latest/kango.py", line 759, in _merge_dirs
self._merge_dirs(srcname, dstname)
File "../kango-framework-latest/kango.py", line 760, in _merge_dirs
elif not self._merge_jss(srcname, out):
File "../kango-framework-latest/kango.py", line 730, in _merge_jss
self._merge_files(dst_path, file, dst_path)
File "../kango-framework-latest/kango.py", line 714, in _merge_files
content += '\r\n\r\n// Merged from ' + second + '\r\n\r\n' + f.read()
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 34: ordinal not in range(128)
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории