войти зарегистрироваться

Огненный лис whois

индекс
150,46

Тюнинг Firefox для любителей Оперы

Здравствуйте.
Я являюсь пользователем Оперы уже около 5 лет, но при разрабoтке страниц я пользуюсь Firefox'ом т.к. он предлагает мне более удобные средства для отлова ошибок, валидации и т.п., к тому же это полезно, если каждодневный брaузер и рабочий инструмент различаются.
Но дело в том, что в Файрфоксе при всех его преимуществах, настройки по умолчанию заставляют оперопользователя все время чувствовать себя как в гостях. Я не говорю здесь о интерфейсе, а именно о поведении браузера. Я попытался изменить это и вот шаги которые я предпринял:
UPD: пока писал, то топик так увеличился, что его можно скорее назвать пособием для тюнинга Firefox — загляните внутрь даже если вы не оперщик. Если же вы матерый пользователь FF, то добро пожаловать с вашими уточнениями и комментариями :)

Введение: все что я делал я тестировал на Firefox 3.0.5 с Интернетом 16 МБ/с, CPU Core Duo 6300 и 4 ГБ оперативки. Может быть что на вашей конфигурации вы достигнете совсем других результатов. Почти все изменения проводятся в about:config, если вы не уверены что опция вам нужна, лучше не меняйте ее.


Быстрая Навигация


Что более всего мне мешало, так это то, как Опера и Firefox ведут себя при навигации Вперед/Назад — Опера мгновенно показывает все, как бы вы глубоко не перемещались по истории таба. Firefox же, как будто одержимый IE, зачем-то загружает большинство страниц опять из интернета, соответственно о мгновенности речь идти не может. К тому же, если вы заполняли форму в Опере, и вернулись к ней с помощью команды Назад, все заполненые вами поля (кроме password) останутся заполненными, но т.к. Firefox перезагружает страницу данные будут утеряны.
Я хотел чтобы при возврате назад браузер не перезагружал страницу, а показывал мне именно ту, которую я видел перед этим. Если честно, то Опера своим поведением нарушает RFC (раздел 14.9.2 RFC 2616). Например если вы были 'залогинены'на странице а потом вышли, вы сможете нажать Назад и увидеть ее содержимое. Это можно рассматривать как нарушение безопасности, представьте себе компьютер в интернет-кафе в котором вы смотрели почту и ушли, а другой пользователь начнет нажимать назад.

Но мы ведь опытные пользователи и знаем что делаем, поэтому поехали:

Включаем Fastback:


browser.sessionhistory.max_total_viewers
Здесь задаются настройки Fastback — это количество страниц, которые сохраняются в памяти для быстрого перехода коммандами Вперед/Назад.
По умолчанию здесь -1, соотв. браузер сам решает сколько страниц сохранять в зависимости от оперативной памяти:
RAM	Страниц
32MB 	0
64MB 	1
128MB 	2
256MB 	3
512MB 	5
1GB 	8
2GB 	8
4GB 	8 

У меня 4 GB оперативки — я выставил этот параметр в 15 — мне памяти не жалко.
Обратите внимание, этот параметр задает количество страниц не для таба, а вообще для броузера.

Настраиваем кэш


browser.cache.check_doc_frequency
По умолчанию стоит 3, т.е. обновлять кэш, опираясь на Last-Modified и Control-Cache заголовки. Предлагаю изменить значение на 0, тогда Firefox будет обновлять кэш страницы при каждом новом запуске браузера.

Опера вообще игнорирует настройки кэша при навигации Вперед/Назад, чтобы обновить страницу, необходимо исполнить Refresh или Reload. Firefox ведет себя более последовательно, а именно:
  • Cache-Control: no-cache Firefox не будет хранить страницу на диске, но она будет сохранена в memory cache и. например, при команде Назад, будет показана страница из кэша.
  • Cache-Control: no-store страница не будет сохранена ни в памяти ни на диске, и при любой попытке показать ее будет исполнен полный POST/GET запрос

Информация отсюда:
restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=981443
blog.httpwatch.com/2008/10/15/two-important-differences-between-firefox-and-ie-caching/


Это все было бы отлично, но многие сайты злоупотребляют Cache-Control: no-store, в результате тратится время пользователя и траффик. К сожалению вышеназванная опция (browser.cache.check_doc_frequency) не отключает такое поведение браузера, соответственно если вам нужно полное соответствие поведению Оперы необходимо пользоваться софтом который изменяет заголовки, например Proxomitron'ом

Увеличиваем обьем памяти для кэша:


browser.cache.memory.capacity
Текущее использование можно посмотреть здесь: about:cache?device=memory
У меня он был установлен по-умолчанию в 30МБ, я увеличил до 96, но изменений не заметил.

Список закрытых табов:


browser.sessionstore.max_tabs_undo
В Опере, я привык закрывать табы без лишней мысли, ведь у меня есть длиннющий список закрытых страниц.
Непонятно почему, но в Firefox он по-умолчанию ограничен 5, поменял на 30.

Паралельные запросы HTTP 1.1


network.http.pipelining
Вкратце: эта опция разрешает в одном и том же соединении с сервером посылать одновременно несколько запросов паралельно, а не последовательно(ожидая ответа на предыдущие). Подробнее: www.mozilla.org/projects/netlib/http/pipelining-faq.html
У Оперы pipelining включен по умолчанию, поэтому включаем его и мы. Для того чтобы параллельные запросы могли работать необходимы Keep-Alive (network.http.keep-alive=true) и HTTP 1.1 (network.http.version=1.1).

Максимальное количество паралельных запросов


network.http.pipelining.maxrequests
Некоторые руководства рекомендуют ставить количество максимальных запросов в 30. Я бы этого вам не советовал, спецификация HTTP/1.1 не ограничивает число запросов, но рекоммендует 2 вообще для Keep-Alive. Я оставил значение по-умолчанию — 4.
UPD: Как уточнил Alaunquirie , в Firefox, вообще стоит внутреннее ограничение этого параметра до 8.

Максимальное количество соединений с сервером


network.http.max-connections-per-server
Если вы здесь выставите слишком большое число, то некоторые серверы могут определяют такое количество запросов от вашего IP как DDOS атаку и ваши запросы в лучшем случае будут обработаны по очереди, а в худшем ваш IP получит бан и вам придется ждать пока вам опять не разрешат доступ.
Я поставил его в 8(я встречал именно это значение на сайтах по настройке Оперы), хотя в FF 3 по умолчанию 15.

Максимальное количество постоянных(открытых) соединений с сервером


Network.http.max-persistent-connections-per-server
Как я писал выше, RFC2616 рекоммендует максимум 2 Keep-alive запроса. В Firefox 3 по-умолчанию стоит 6, пусть так и остается.

Максимальное число соединений:


network.http.max-connections
Ограничивает число максимальных одновременных соединений Огненного Лиса. Его можно спокойно поднять, если у вас быстрый интернет и вы любите наоткрывать вкладок на заднем фоне, которые грузятся пока вы продолжаете смотреть основную страницу. У меня он установлен с 16МБ/с интернетом в 64.

Задержка стартового рендеринга страницы


nglayout.initialpaint.delay
Если в Опере вы включали такой параметр как Browsing->Redraw Instantly то вам имеет смысл это сделать и в Файрфоксе. Этот параметр определяет, через какое время после того как получена первая информация, начинать рендеринг. Имеет смысл на быстрых каналах. Недостаток — страница может перерисовываться чаще.
Значение по-умолчанию 250мс, я установил в 0 и доволен.

Осталась совсем малость:


Я привык к быстрому поиску в Опере по нажатию '.' или '/' и ',' для поиска в URL.
В Firefox подобное существует по F3 или Ctrl-F, но меня раздражало то что панелька не пропадала после поиска, плюс когда я опять вызывал поиск в нем находилось старое значение и мне приходилось его стирать.
Погуглив, я нашел что был слишком ленив — при нажатии '/' поиск на странице ведет себя точно так же как и в опере ( а апостроф — ' ищет в ссылках).
Я попытался было установать привычные мне запятую и точку, но с удивлением понял что в Firefox нельзя менять настройки клавиатурных сокращений!
Но так как это FF, то я нашел аддон keyconfig, который добавляет возможность редактирования сокращений. К сожалению в нем нет комманд для QuickFind, и их надо создавать самому — жмем в keyconfig на «Add a new key» и добавляем:
  • Для обычного QuickFind:
    gFindBar.startFind(gFindBar.FIND_TYPEAHEAD);
    gFindBar._setFindCloseTimeout();
  • Для QuickFind по ссылкам:
    gFindBar.startFind(gFindBar.FIND_LINKS);
    gFindBar._setFindCloseTimeout();

И назначаем привычные нам клавиши.

Я пока не придумал, что бы мне изменить еще, но с удовольствием пользуюсь настроенным таким образом Firefox'ом.

upd
В Опере я очень часто пользуюсь коммандой контекстного меню для выделенного текста «Go to Web Address», которая вставляет этот текст в адресную строку и переходит по URL/ищет в поисковике. Благодаря комментирующим я нашел замечательный аддон для FF URL Link, который не только добавляет такую функциональность, но и предоставляет дополнительные возможности и опции для тонкой настройки.

_________
Текст подготовлен в ХабраРедакторе

комментарии (66)

  • Квикфайнд можно поставить по набору текста в настройках: Tools -> Options -> Advanced -> General -> Search for text when I start typing
  • Хм… У меня FF 3.1 beta 2, значения по умолчанию почти равны рекомендуемым автором
  • А нет темы для ФФ как у оперы? Идеальный вариант был бы полностью изменить интерфейс и сделать его как в опере.
    • А может просто юзать оперу?
      • у Оперы плагинов меньше
      • И кроме того на Ubuntu опера не очень хорошо выглядит, так как не родное гномовское приложение. А вот вид виндовой оперы был бы в тему на ФФ. :)
      • Мне нужны плагины для веб-дизайна, а оперовский dragonfly мне совсем не нравится.
        • ага, draginfly не юзабельный, в остальном опера преаосходит. Думаю dragonfly-ю не хватает компактности. Например если убрать полоску выбора таба, то станет намного удобней, хотя на 2ух мониторах он наверно удобный
    • Может перестанете оффтопить и дадите ссылку на скин?
      Это я не к автору комента, а к коментирующим.
  • А можно сделать чтобы по нажатию ctrl+z открывался закрытый таб?
  • Сегодня сильно понадобилось… обратное. Надо было сделать из оперы огнелиса… увы не получилось =(
  • раскрыть комментарий
  • Ситуация такая же как у автора, настроил и себе по статье, спасибо.
    Может еще кто подскажет как в ФФ сделать навигацию по табам через кнопки 1, 2(как в опере 9.2)? Нагуглить ничего не удалось.
    • alt+1, alt+2…
      • В опере просто эти клавиши, к тому же Ваш вариант у меня не работает.
        Уточню еще: 1 — пред. таб, 2 — следующий, а не клавиша = номер таба.
        • По-моему, не alt, а ctrl.
          Следующий таб — ctrl+Tab, предыдущий — ctrl+shift+Tab. Уже упомянутый keyconfig, видимо, опять же к месту :)
          • К сожалению keyconfig не может настроить след./пред. табы.
            • firegestures — можно повесить табы на жесты, либо, как уже сказали, ctrl+tab
            • Во, настроил. Там надо самому написать действие:
              gBrowser.mTabContainer.advanceSelectedTab(-1,true); — это предыдущий таб,
              gBrowser.mTabContainer.advanceSelectedTab(1,true); — это следующий.
          • Стандартные виндовые шоткаты, кстати. ;)
        • В FF это Ctrl+PageUp, Ctrl+PageDown
    • Я использую для этого AutoHotkey и кнопки F1, F2.
      Плюс в том, что можно использовать одно сочетание клавиш не только в ФФ и опере, но и в любимых текстовых редакторах с табами
  • спасибо
  • > Я пока не придумал, что бы мне изменить еще
    Сделайте открытие в новом окне при нажатии шифта:
    — веденных адресов в строку адреса.
    — нажатых ссылок.
    — отправляемых форм.
  • Автор! Кланяюсь в ноги за Fastback. После перехода с оперы на фф мне больше всего не хватало именно этой функции (Ну и еще speeddial, конечно...)
    • А вот мне бы в Опере fastback бы отключить как-нить. А ещё укоротить список табов в корзине. Авось памяти станет есть меньше раза в два.

      Про speed dial смотрите мой коммент ниже.
      • А куда еще опере меньше есть? По-моему очень нормально себя ведет с памятью.

        Спасибо, но фастдиал — глючный хлам… А мне не хватает как раз speedDial…
        • speeddial модуль так и называется.
          • Спасибо. Новая версия радует… В отличии от Спиддиала не похоже на полное УГ, даже открывается достаточно шустро
            • Не за что) Оно даже настраивается достаточно гибко.
  • Опишу свои изменения (файрфокс ставил для того, чтоб некоторые вэб-приложения получились типа standalone, а то неудобно, когда почта во вкладке браузера):
    1. Greasemonkey — позволил улучшить gmail. Например из тегов сделал папкотеги. Жить без этого не могу.
    2. Tab Mix Plus — потюнил табы. Самое главное — перенёс их вниз. Не могу иначе.
    3. Tiny Menu — превратил строку меню в один пункт меню тем самым сэкономив места под страницу. В Опере бы так.
    4. BetterGmail — функционал по улучшению gmail с пом. greasemonkey в отдельном плагине с настройками.
    5. Close Button — убрал кнопки закрытия табов с них самих в меню.
    6. Fast Dial — аналог оперовского, но настраиваемый. Не пользуюсь.
    7. Firebug.
    8. Google Gears.
    • Всякие призмы и гугл-ярлыки плохи тем, что открывают ссылки из писем не в браузере по умолчанию, а в себе.

      3. operawiki.info/CustomButtons#menu

      1. 2. 5. — для этого всего по плагину? Я люблю тебя, Опера.
      • Firefox 3, аптайм 4 суток, порядка 50 табов и 30 плагинов — 150 метров памяти. Опера 9.6х, 7 вкладок, 20 минут, 270 метров. Чуете разницу? :(
        • Я с начала вообще не понял при чем здесь все эти цифры.
          Я однажды увидел на хабре скриншот плагина для фф, позволяющий сделать вкладки слева, тыкнул правой кнопкой, выбрал «настроить» и сделал себе так-же. С тех пор так и работаю. Чувствуете разницу? :)
      • > Всякие призмы и гугл-ярлыки плохи тем, что открывают ссылки из писем не в браузере по умолчанию, а в себе.
        Хмм, а нету к файрфоксу какого-нить плагина, чтоб внешние ссылки открывал в другом браузере?
      • > 3. operawiki.info/CustomButtons#menu
        Вот за это большое Вам спасибо!!!
      • > 1. 2. 5. — для этого всего по плагину? Я люблю тебя, Опера.

        Ну ещё бы, greasemonkey под оперой не работает (я знаю про попытки это дело заработать и что некоторые так таки работают — те, что нужны мне — не работают, проверено).
        Пятый пункт тут лишний (эта функциональность покрывается вторым).
    • НЛО прилетело и опубликовало эту надпись здесь.
    • 5 — умеет TabMixPlus
      насчёт 3 — у меня меню, кнопки, закладки и т.п. одной строкой — осталось как раз только меню ещё меньше сделать.
  • у вас ошибка — «совесем», в начале поста, серым текстом
  • У меня есть такая проблема с прокси…
    Когда я включаю его в фаерфоксе, то у меня бывает не грузятся набранные адреса, а за место них например гугл. Или тот же хабр. Набираю я к примеру site.com/page123.php?a=1, нажимаю интер и грузится google.com/page123.php?a=1. И так со всеми адресами. (Правда если раз 10 быстро нажимать f5, то нужный сайт все таки загружается.)
    В опере через прокси все работает прекрасно.
    Никто не сталкивался с этим? Это баг? Или это у меня руки кривые? Или я что-то не так делаю? Или еще что?
  • За фасттрак спасибо — самый большой недостаток лисы для меня лично.

    Чтобы было ещё похожее на оперу, есть «tabs open relative».
    • Если это открытие окна рядом с текущим, то глянь Tab Mix Plus.
    • TabMix Plus, имхо, универсальнее
  • А реально реализовать в фф открытие новых окон как в опере. Т.е. новое окно не запускает еще один интерфейс, а создает новую вкладку, по нажатию на которую уже показывается наше окошко.
    • Инструменты-настройки-вкладки
      Там это есть, одна из галок.
      • я не про новые страницы, а именно новые окна
        • Открывать target=blank ссылки в новом табе вместо окна? Глянь Tab Mix Plus.
  • «imglikeopera» и «paste and go» — два хороших расширения по примеру оперы. Первый позволяет быстро отключать картинки или же отображать только закэшированные. Второй встраивает в контекстное меню адресной или поисковой строки «Paste and Go» или «Paste and Search».
    • Насчет paste and gо есть еще удобнее штука, не помню как называется к сожалению. Добавляет переход по URL и поиск прямо в контекстное меню выделенного текста, даже копировать не надо.
      • А мне нравится QuickDrag. Выделяешь текст и драг-н-дропаешь рядом. Если был урл то откроется урл, если текст — результаты поиска. Как побочный эффект — любую HTML ссылку можно открыть «в новой табе» таким образом.
        • Спасибо! Вот именно то что я еще хотел изменить в FF!
          Правда я нашел другой аддон: URL Link.
          Дописал топик.
        • любую ШТМЛ ссылку можно открыть в другой вкладке нажатием колесика скролла без всяких дополнений.
          • Нет-нет, здесь имеются ввиду не ссылки, прописаные в HTML как a href, а именно обычным текстом, обычно их надо выделять, копировать, вставлять в адресную строку и нажимать ввод, здесь же два клика мышкой.
  • Вот странно… У меня лис 3.0.5.
    Увидел пост, думаю сейчас подтюнингую лиса. Практически все ваши изменения у меня стоят «по-умолчанию».
    Кэш у меня по-умолчанию равен 65536(O_o).
    • Наверное вы уже сами меняли настройки — те, которые я предложил, довольно таки интенсивно используют рабочую память и требуют быстрого интернета.
      • Дело в том, что если бы менял их я, то они были бы отмечены как «измененные пользователем», а у меня всё «по-умолчанию».
  • Пост пропитан ненавистью к FF. Если вы так любите Оперу, то зачем вам FF?
    • Вы уверены? Мне кажется, FF я тоже люблю. :)
  • Фирефох — молдаванский Файрефокс? :D
  • Хорошая статья. Имхо, недоразумение в виде «Фирефокс» лучше исправить ;)
    • Согласен, сейчас буду придумывать синонимы к слову Фирефох, но как по мне, так писать Файрфокс как-то некрасиво, разве что английский вариант оставлю.
  • Как можно сохранить сделанные настройки в about:config чтобы потом их, к примеру, перенести на другой компьютер или использовать после перестановки системы?
Только авторизованные пользователи могут оставлять комментарии. Авторизуйтесь, пожалуйста.