Pull to refresh

Comments 45

UFO just landed and posted this here
я как бы не рекламировал свое расширение тут :) но вот оно: https://addons.mozilla.org/en-US/firefox…

туда я заливал только ради удобного "хостинга" расширений. все равно оно site-specific
UFO just landed and posted this here
UFO just landed and posted this here
у меня АМО ассоциируется с альянсом магов и отщепенцев :) да, я идиот

логин пароль на addons.mozilla.org: lepra@va1en0k.net / lepra, качайте на здоровье
сразу рекоммендую использовать какой-нибудь command-line zip и написать shell-скрипт, который "компилирует" расширение и перезапускает firefox с новой версией. Сильно экономит время.
А что карму-то снизили? Make файл полезная утилита — можно одним скриптом запаковать новую версию, установить в оба тестирующих браузера и выслать всё на addons.mozilla.org

У настоящих пацанов обязательно должна быть :).
если б я был профессионал и клепал расширения за милую душу, тогда да )
Поверьте, я пишу и поддерживаю всего одно расширение, но ручная процедура пересборки расширения отбивает все желание заниматься его разбработкой.
Можно ещё написать php-скрипт, упаковывающий всё как надо, и тыкать в ссылочку на сваянной тестовой страничке на локальном сервере. (: Нерационально, конечно, потому что нужно ещё запускать Апач, но зато работает и экономит больше времени, чем если было бы вручную.
Но лучше написать что-нибудь более оптимальное.

Интересно, можно ли установить экстеншн без рестарта браузера?
вы бы еще кластер подняли для сборки простенького пакета.
баш вполне со всем справится и скрипт в три строчки.
UFO just landed and posted this here
можно-можно :)

во-первый скрипты для greasemonkey как раз такие

во-вторых пишете свой экстеншн так чтобы он лишь подгружал основной код и регистрировал обработчики (сначала разрегестрировав старые) на том основании что некоторые файлы были обновлены
Для этого нужно заранее приспособить архитектуру расширения. Если же оно не будет обновляться в дальнейшем, но требуется его лишь отладить и выложить, то часть, отвечающая за обновления, будут лишним грузом.
Но в целом да, хорошая мысль.

Но я хотел узнать, возможно ли такое средствами самого FF. Ниже отвечают, что пока нет. (:
текущая модель разработки под FF весьма убога, потому такие идеи у людей и возникают :))

а насчёт лишнего груза — не согласен
про «приспособить архитектуру» — да, но в этом нет ничего страшного

1) при установке экстенсьóна копируете main.js в профиль лисы и в дальнейшем работаете именно с ним
2) строку проверяющую был ли изменён файл тупо комментируете — вот и весь «лишний груз» :)
Я делал так: писал основной код и функцию, которая через ajax скачивает дополнительный код с сервера(и делается "eval()"). Присобачивал кнопку, при нажатии на которую вызывалась эта функция и жил счастливо :)
Для разработки вполне подходит!
Одно но: xul-файлы при таком подходе подключить сложно. %) Через eval можно разве что перестроить тулбар/статусбар/менюбар через dom-функции.
Между php и веб-сервером нет никакой связи. Вы про php-cli слышали?
Если php установлен как модуль Apache, то некоторая связь есть... Но я повторяю: моё решение не является самым рациональным. Правильнее написать shell-скрипт либо вовсе отгрохать целую среду разработки, воспользовавшись к качестве фундамента, скажем, IDE.
Но у меня не было такой цели, а была цель написать быстро, дёшево и сердито страничку, с которой можно тыкнуть в ссылку и переустановить расширение. Если php-cli даёт выигрыш в скорости, то он при таком коротком скрипте-архиваторе несущественен. Если он даёт выигрыш в оперативной памяти, то для меня это опять же несущественно: Apache занимает в памяти гораздо меньше места по сравнению с FF или средой разработки.
Выигрыш в удобстве. PHP у меня на локальном компе давно стоит как дефолтный обработчик php-файлов. Я просто запускаю скрипт (двойным щелчком или из шела) и все.

Я оппонировал вам, чтобы незнающие не впали в заблуждение о том, что php и веб-сервер не могут существовать друг без друга.
В данном случае в PHP нет большой надобности: судя по всему, можно уместить сборку расширения и перезапуск FF в один bat-файл (или что кому ближе).

Что ж, ценное замечание. ^.^
как перезапустить firefox c новой версией?
Установить расширение, потом кнопка перезапуска сама появится. На худой конец, можно просто закрыть и открыть снова.
он имел в виду, как сделать это через скрипт )
В недрах FF (chrome-привилигированном режиме) есть команда restartApp(). Она и вызывается при нажатии на кнопку перезапуска.
ну убить процесс или закрыть его как-то ) а потом снова запустить )
так в этом мой вопрос и состоит: как это сделать красиво через скрипт
taskkill /IM firefox.exe

C:\...\firefox.exe
Или в Linux ;)
killall firefox-bin
firefox
Спасибо! Скажите, а на старом добром C/C++ можно аддоны-плугины к FF писать?
Ага! Класс! А я-то думал, что только JS... А мне и производительность нужна, да и код на C++.
Я так и не понял, что имеется в виду, да и не старался: просто перед собачкой поставил название плагина латиницей, а после собачки — свои имя и фамилию.
Из тех расширений, что я видел, есть два варианта id: через собачку (вида название@сайт) или в виде длинного шифра. Последнее, по идее, электронная подпись, но я не вникал, где и как её генерировать.

Да, и папка с таким именем появляется в директории профилей расширений. (:
ну это, похоже, просто уникальный ID. если он уникальный, его удобно использовать и как имя папки, и т.п. )
Это не электронная подпись, а обычный GUID. Идея в том, что id расширения должен быть уникальным, использование GUID для этого вполне безопасно.
Понятно, спасибо. (:
UFO just landed and posted this here
Спасибо за информацию. (По) стилю изложения [видно, что] ты программер =))
Чтобы не париться с переустановкой расширений можно всё делать "на живом файрвоксе" - открываем папку C:\Documents and Settings\username\Application Data\Mozilla\Firefox\Profiles\билиберда.defaults\extensions\имя_плагина@username и там уже колдуем :)
А есть даже способ колдовать над расширением в произвольной папке, а в профиле просто текстовый файлик положить с путём к рабочей версии расширения.
кстати, коль уж упоминался в статье greasemonkey, то было бы неплохо добавить что скрипты под greasemonkey отлично "компилируются" в самостоятельные extensions ... например этим или другими "компиляторами" ;)
UFO just landed and posted this here
Весьма интересно :) Недавно сам писал плагин на заказ, простенький совсем.
Sign up to leave a comment.

Articles