mozilla
Your Search Results

    Настройка среды разработки расширений

    В этой статье приводится несколько советов о том, как настроить ваше приложение Mozilla для удобной работы над расширениями.

    Профиль для разработки

    Чтобы избежать возможных потерь личных данных при разработке собственных расширений, рекомендуется создать отдельный профиль и проводить в нем все тестирования.

    Для того, чтобы создать новый профиль в Firefox, достаточно запустить его с ключом "-ProfileManager", т.е.

    firefox -ProfileManager
    

    для Linux или

    Win+R (или Пуск->Выполнить)
    start "" "%ProgramFiles%\Mozilla Firefox\firefox.exe" -ProfileManager
    

    для Windows.

    После создания профиля (назовем его myDevProfile) можно запустить Firefox, указав ключ "-P myDevProfile". Профиль по умолчанию называется "default". Таким образом, для удобства запуска можно создать 2 ярлыка (символические ссылки) на Firefox с ключами "-P <profileName>".

    Однако обычно нельзя запустить 2 копии Firefox с разными профилями. Чтобы сделать это укажите при запуске дополнительно ключ "-no-remote".

    Настройки Firefox для разработки

    Наверно, вы знаете о возможности настроить Firefox детально с помощью about:config. Если нет, рекомендуем вам прочитать статью конфигурационных файлов.

    Итак, вот настройки, которые облегчат разработку расширений под Firefox.

    • javascript.options.showInConsole = true. Вывод ошибок в файлах chrome в консоль ошибок.

    при редактировании здесь учтите также номер предлагаемой опции в последней секции

    • nglayout.debug.disable_xul_cache = true. Отключение кеширования XUL. Вы сможете видеть изменения в интерфейсе окон и диалогов без перезагрузки браузера (к оверлеям не относится). Чтобы это заработало, вы должны использовать папки, а не jar'ы.
    • browser.dom.window.dump.enabled = true. Позволяет использовать dump("string") для вывода в стандартную консоль. Можно также использовать en:nsIConsoleService из привелигированного скрипта.
    • javascript.options.strict = true. Обеспечит вывод предупреждений JavaScript в консоль ошибок. Учтите, что, так как большинство разработчиков отключают эту опцию, вы будете видеть предупреждения о проблемах в коде других скриптов вдобавок к своим. Можете попробовать использовать Console2.
    • extensions.logging.enabled = true. Вывод более детальной информации о проблемах установки и обновления расширения.

    Расширения для разработки

    Отдельное хранение кода расширения

    Чтобы не переустанавливать расширение при каждом изменении и не опасаться случайного удаления кода при его деинсталляции, можно поместить ваш код в отдельное место.

    1. Найдите папку с вашим профилем. Если вы не создавали его специально, браузер использует профиль по умолчанию. Как найти папку с профилем.
    2. Откройте папку extensions. Если ее нет, создайте ее.
    3. Создайте новый текстовый файл и поместите в него лишь путь к вашему расширению (напр., C:\extensions\my_extension\ для Windows или ~/extensions/my_extension/ для Unix/Linux). Сохраните файл под именем, одинаковым с id вашего расширения.

    Примечания:

    • Не забудьте конечный слеш.
    • Возможно возникновение проблем из-за знаков нижнего подчеркивания в названии; если так вышло, измените его.

    Использование папок, а не JAR'ов

    Учитывая предыдущий пункт, можно, поместив свой код в отдельное место, не упаковывать его. Это облегчит разработку вообще и позволит воспользоваться 2-й опцией в предлагаемых настройках.

    Метки документа и участники

    Метки: 
    Contributors to this page: fscholz, teoli, Yozh88
    Обновлялась последний раз: teoli,