После обновления на Firefox 14 (Windows) хорошее впечатление от улучшений сменилось недоумением, а затем и осознанием проблемы: файл настроек prefs.js в defaults\pref ранее работавший со всеми версиями от 4й до 13й перестал подгружаться. Ставились самые разные опыты — и всё безуспешно: включен антифишинг, автообновление и прочие признаки дурного тона.
Делаю поиск строки «defaults» по всем файлам, находится много файлов, но первое внимание падает на xul.dll. Открываю его в Olly, ищу то же самое. И вот — я вижу любопытные детали
Пробую создать директорию preferences в defaults и перенести туда мой prefs.js. Запускаю… Есть! Все настройки на месте. Итак: наш файл настроек js должен лежать в Mozilla Firefox\defaults\preferences. Любопытно, что defaults\pref в дистрибутиве по-прежнему есть, но, похоже, channel-prefs.js там не отрабатывает. Но не суть, оставил как есть. Заглянул потом в Linux — оказывается, там уже в 10-м Фоксе в defaults вложена директория preferences (не prefs)! Вот вам и ответ на вопрос, почему Mozilla ломает (уже во 2й раз) привычный, устоявшийся порядок вещей — ради единства компоновки под разными платформами.
А вот мой файл настроек, созданный на основе известных рекомендаций, их критики и собственных исследований. И, да — использую плагин imglikeopera против рекламы, часть соответствующих настроек — для него.
Делаю поиск строки «defaults» по всем файлам, находится много файлов, но первое внимание падает на xul.dll. Открываю его в Olly, ищу то же самое. И вот — я вижу любопытные детали
и еще вот:... 100196C2 MOV ECX,xul.10BE1CF0 ASCII "greprefs.js" 100196D5 PUSH xul.10BE1CFC ASCII "defaults/pref/*.js$" 10019744 PUSH xul.10BB0D28 ASCII "PrfDef" 10019799 PUSH xul.10BE1D10 ASCII "defaults/preferences/*.js$" 10019849 PUSH xul.10BB0EF4 ASCII "PrefDL" ...
1073043C MOV EDI,xul.10BE1B94 ASCII "defaults/preferences/*.(J|j)(S|s)$"
Пробую создать директорию preferences в defaults и перенести туда мой prefs.js. Запускаю… Есть! Все настройки на месте. Итак: наш файл настроек js должен лежать в Mozilla Firefox\defaults\preferences. Любопытно, что defaults\pref в дистрибутиве по-прежнему есть, но, похоже, channel-prefs.js там не отрабатывает. Но не суть, оставил как есть. Заглянул потом в Linux — оказывается, там уже в 10-м Фоксе в defaults вложена директория preferences (не prefs)! Вот вам и ответ на вопрос, почему Mozilla ломает (уже во 2й раз) привычный, устоявшийся порядок вещей — ради единства компоновки под разными платформами.
А вот мой файл настроек, созданный на основе известных рекомендаций, их критики и собственных исследований. И, да — использую плагин imglikeopera против рекламы, часть соответствующих настроек — для него.
# Mozilla User Preferences pref("browser.shell.checkDefaultBrowser", false); pref("app.update.enabled", false); pref("browser.cache.memory.max_entry_size", 4096); pref("browser.display.show_image_placeholders", false); pref("browser.download.useDownloadDir", false); pref("browser.feeds.showFirstRunUI", false); pref("browser.places.importBookmarksHTML", false); pref("browser.rights.3.shown", true); pref("browser.safebrowsing.enabled", false); pref("browser.safebrowsing.malware.enabled", false); pref("browser.search.update", false); pref("browser.sessionhistory.max_total_viewers", 1); pref("browser.startup.page", 0); pref("browser.tabs.animate", false); pref("config.trim_on_minimize", true); pref("content.notify.backoffcount", 5); pref("extensions.shownSelectionUI", true); pref("extensions.update.enabled", false); pref("extensions.update.notifyUser", false); pref("extensions.pendingOperations", false); pref("toolkit.telemetry.prompted", true); pref("gfx.direct2d.force-enabled", true); pref("layers.acceleration.force-enabled", true); pref("imglikeopera.default.policy", 1); pref("imglikeopera.experimental.options", true); pref("imglikeopera.expiration.time", 604800); pref("imglikeopera.flash.block", true); pref("imglikeopera.policy.patterns", "yandex.net/ 1 yandex.st/lego/ 1 "); pref("imglikeopera.policy.switchModes", "1,2"); pref("intl.charsetmenu.browser.cache", "windows-1251, UTF-8"); pref("network.cookie.prefsMigrated", true); pref("network.dns.disableIPv6", true); pref("network.http.max-persistent-connections-per-server", 8); pref("network.http.pipelining", true); pref("network.http.proxy.pipelining", true); pref("privacy.sanitize.migrateFx3Prefs", true); pref("privacy.sanitize.timeSpan", 0); pref("security.warn_entering_weak", false); pref("security.warn_viewing_mixed", false); pref("ui.submenuDelay", 0);
