Depuis 2 ans maintenant, je recommande à tous mes amis d'utiliser Firefox comme navigateur pour surfer quotidiennement sur Internet. J'adore ce navigateur pour sa flexibilité dans les paramètres de réglage, de vitesse et de confidentialité. Plusieurs fois sur les forums, on m'a posé des questions sur certains cas individuels de réglage, j'ai donc décidé d'écrire un article avec une description détaillée des paramètres, comme une feuille de triche pour moi-même et de le partager en cas de nouvelles questions.
J'espère que cela aide un peu à populariser ce merveilleux navigateur.
Petite introductionDès que j'ai eu Internet pendant de nombreuses années, j'ai immédiatement, sur les conseils d'amis, commencé à expérimenter différents navigateurs. Je ne me souviens pas exactement, mais je sautais constamment entre l'opéra et le brandon. Et puis il y avait du chrome, qui était à chaque coin et grimpait de toutes les fissures. Au début, il était plutôt humide et je passais souvent du temps au coin du feu, abandonnant complètement l'opéra. Mais au fil du temps, le chrome a commencé à fonctionner plus rapidement et je ne suis finalement passé qu'à lui. Et il y a 2 ans, j'ai travaillé dans une entreprise, où j'avais un ordinateur portable fonctionnel avec 8 Go de RAM, sur Ubuntu et avec une machine virtuelle obligatoire pour Windows , car la société utilisait Outlook et Skype Entreprise . Bien sûr, je n'ai pas travaillé longtemps dans de telles conditions, mais tout fonctionnait tout le temps, le chrome avec la machine virtuelle Intellij Idea + mange toute la mémoire et laisser le swap le soir était la routine habituelle, jusqu'à ce que j'entende parler de la sortie de Firefox 57.0 Quantum , dans laquelle ils ont commencé réécrire des parties du moteur Gecko sur Rust , en utilisant l'expérience du moteur servo expérimental.
Comme je n'avais rien à perdre, j'ai décidé d'essayer de revenir au navigateur autrefois préféré.
Et quelle a été ma surprise quand Firefox a cessé de céder au chrome en vitesse. Comme je n'ai pas utilisé beaucoup de modules complémentaires, j'ai facilement transféré tous mes signets vers un nouveau navigateur et j'ai commencé à l'utiliser activement.
Et puis une autre surprise m'attendait. Mon ordinateur portable de travail a cessé de changer tous les jours. J'ai été agréablement surpris.
Dans le processus de transition, je suis tombé sur plusieurs articles sur la configuration de Firefox et je n'ai jamais cessé de me demander à quel point il est flexible que le chrome. C'est la flexibilité que je vais essayer de vous décrire.
Définition des options
Avant de configurer quelque chose, vous devez savoir exactement où le faire. Il existe plusieurs façons de personnaliser Firefox . Commençons par le plus évident - l'élément de menu Préférences (j'ai une version anglaise de la langue du navigateur).
Élément du menu Préférences
Je ne décrirai pas cette option en détail, car elle est évidente et la plupart des utilisateurs du navigateur l'ont ouverte. Par conséquent, il n'y aura que quelques nuances intéressantes.
Général -> Polices et couleurs -> Avancé
Une coche est surlignée en rouge, désactivant laquelle, votre police sera utilisée sur tous les sites, quelles que soient les polices connectées. J'ai vraiment aimé cette fonctionnalité, car j'adore la police Hack et l'utiliser pour la lecture me fait plaisir. Je n'ai plus vu un tel réglage, corrigez-moi, si ce n'est pas juste. (Peut affecter l'affichage correct de la page, merci ArsenAbakarov )

Général -> Paramètres réseau -> Paramètres de connexion
Je ne peux pas ignorer la possibilité de configurer des proxys pour le navigateur sans gestes supplémentaires

Recherche -> Barre de recherche
Où sans le champ de saisie supplémentaire pour la recherche, dans lequel la dernière requête de recherche est stockée

Confidentialité et sécurité -> Autorisations -> Notifications
Eh bien, une autre coche utile pour bloquer toutes les notifications qui m'agacent énormément

Ces paramètres étaient intéressants et même uniques disponibles dans l'interface graphique.
Paramètres du navigateur à l'aide de la page about: config
Firefox a une page curieuse Ă propos de: about

Comme vous pouvez le voir, cette page contient des liens vers diverses ressources du navigateur.
Je n'entrerai pas dans toutes les ressources, j'apporterai juste quelques exemples intéressants et utiles.
about:support
, user-agent, .

(Profile Directory). , . , , ( )
/data/data/org.mozilla.firefox/files/mozilla/*.default
2 — * — ( ) + .default —
about:memory
, , web frontend
about:addons
, .
about:networking
, dns websockets. web .
about:config
, , —
user.js
user.js , about:support. about:config. , - , about:config? .
, about:config prefs.js . user.js. ( ), — user.js. , user.js prefs.js - , ( prefs.js), , .
, , . , Firefox user.js , . , , ().
.
about:config , .
user.js, , , javascript . :
user_pref("browser.bookmarks.restore_default_bookmarks", false);
user_pref — , .
, "browser.bookmarks.restore_default_bookmarks" — .
.
, , , /(true/false).
. , .
user_pref("browser.bookmarks.showMobileBookmarks", true);
, . ()
user_pref("browser.ctrlTab.previews", true);
. ()
user_pref("browser.download.autohideButton", false);
user_pref("browser.download.panel.shown", true);
, . ()
user_pref("browser.library.activity-stream.enabled", false);
user_pref("browser.newtabpage.activity-stream.feeds.places", true);
user_pref("browser.newtabpage.activity-stream.feeds.section.highlights", false);
user_pref("browser.newtabpage.activity-stream.feeds.telemetry", false);
user_pref("browser.newtabpage.activity-stream.filterAdult", false);
user_pref("browser.newtabpage.activity-stream.prerender", false);
user_pref("browser.newtabpage.activity-stream.showSponsored", false);
user_pref("browser.newtabpage.activity-stream.telemetry", false);
user_pref("browser.newtabpage.activity-stream.telemetry.ping.endpoint", "");
user_pref("browser.newtabpage.activity-stream.tippyTop.service.endpoint", "");
user_pref("browser.newtabpage.activity-stream.topSitesRows", 3);
user_pref("browser.newtabpage.enhanced", true);
activity-stream . "newtabpage" — . , "feeds.places", . , , "endpoint" , . , .
user_pref("browser.ping-centre.telemetry", false);
, . , , . , , . .
user_pref("browser.safebrowsing.blockedURIs.enabled", false);
user_pref("browser.safebrowsing.downloads.enabled", false);
user_pref("browser.safebrowsing.downloads.remote.block_dangerous", false);
user_pref("browser.safebrowsing.downloads.remote.block_dangerous_host", false);
user_pref("browser.safebrowsing.downloads.remote.block_potentially_unwanted", false);
user_pref("browser.safebrowsing.downloads.remote.block_uncommon", false);
user_pref("browser.safebrowsing.downloads.remote.enabled", false);
user_pref("browser.safebrowsing.enabled", false);
user_pref("browser.safebrowsing.malware.enabled", false);
user_pref("browser.safebrowsing.phishing.enabled", false);
user_pref("browser.safebrowsing.provider.google.advisoryURL", "");
user_pref("browser.safebrowsing.provider.google.gethashURL", "");
user_pref("browser.safebrowsing.provider.google.lists", "");
user_pref("browser.safebrowsing.provider.google.pver", "");
user_pref("browser.safebrowsing.provider.google.reportMalwareMistakeURL", "");
user_pref("browser.safebrowsing.provider.google.reportPhishMistakeURL", "");
user_pref("browser.safebrowsing.provider.google.reportURL", "");
user_pref("browser.safebrowsing.provider.google.updateURL", "");
user_pref("browser.safebrowsing.provider.google4.advisoryName", "");
user_pref("browser.safebrowsing.provider.google4.advisoryURL", "");
user_pref("browser.safebrowsing.provider.google4.dataSharingURL", "");
user_pref("browser.safebrowsing.provider.google4.gethashURL", "");
user_pref("browser.safebrowsing.provider.google4.lastupdatetime", "");
user_pref("browser.safebrowsing.provider.google4.lists", "");
user_pref("browser.safebrowsing.provider.google4.nextupdatetime", "");
user_pref("browser.safebrowsing.provider.google4.pver", "");
user_pref("browser.safebrowsing.provider.google4.reportMalwareMistakeURL", "");
user_pref("browser.safebrowsing.provider.google4.reportPhishMistakeURL", "");
user_pref("browser.safebrowsing.provider.google4.reportURL", "");
user_pref("browser.safebrowsing.provider.google4.updateURL", "");
user_pref("browser.safebrowsing.provider.mozilla.gethashURL", "");
user_pref("browser.safebrowsing.provider.mozilla.lists", "");
user_pref("browser.safebrowsing.provider.mozilla.pver", "");
user_pref("browser.safebrowsing.provider.mozilla.updateURL", "");
"safebrowsing" — , . .( dartraiden ) . . , , Windows, .
user_pref("browser.search.countryCode", "US");
user_pref("browser.search.geoSpecificDefaults", false);
user_pref("browser.search.geoSpecificDefaults.url", "");
user_pref("browser.search.geoip.url", "");
user_pref("browser.search.hiddenOneOffs", "Bing,Amazon.com,Twitter");
user_pref("browser.search.region", "US");
user_pref("geo.wifi.uri", "");
. US, . ("geo").
user_pref("browser.tabs.loadInBackground", false);
user_pref("browser.tabs.tabMinWidth", 30);
user_pref("browser.tabs.warnOnClose", false);
. "tabMinWidth". , , . Firefox . , , . , , .
user_pref("browser.urlbar.clickSelectsAll", true);
user_pref("browser.urlbar.maxRichResults", 15);
user_pref("browser.urlbar.trimURLs", false);
, . https .
user_pref("datareporting.healthreport.uploadEnabled", false);
user_pref("datareporting.policy.dataSubmissionEnabled", false);
user_pref("datareporting.policy.firstRunURL", "");
Mozilla
user_pref("device.sensors.enabled", false);
user_pref("device.sensors.motion.enabled", false);
user_pref("device.sensors.orientation.enabled", false);
, - .
user_pref("devtools.aboutdebugging.showSystemAddons", true);
user_pref("devtools.onboarding.telemetry.logged", false);
user_pref("devtools.theme", "dark");
user_pref("devtools.toolbox.splitconsoleEnabled", false);
. ()
user_pref("dom.push.enabled", false);
user_pref("permissions.default.desktop-notification", 2);
user_pref("permissions.default.geo", 2);
user_pref("experiments.activeExperiment", false);
user_pref("experiments.enabled", false);
user_pref("experiments.supported", false);
. ).
user_pref("extensions.pocket.enabled", false);
user_pref("extensions.ui.dictionary.hidden", false);
user_pref("extensions.ui.experiment.hidden", true);
user_pref("extensions.ui.locale.hidden", true);
user_pref("extensions.webextensions.remote", true);
. Pocket .
user_pref("findbar.highlightAll", true);
user_pref("font.internaluseonly.changed", true);
user_pref("font.minimum-size.x-western", 10);
user_pref("font.name.monospace.x-western", "Hack");
user_pref("font.name.sans-serif.x-western", "Hack");
user_pref("font.name.serif.x-western", "Hack");
, .
user_pref("general.smoothScroll.durationToIntervalRatio", 1000);
user_pref("general.smoothScroll.lines.durationMaxMS", 100);
user_pref("general.smoothScroll.lines.durationMinMS", 100);
user_pref("general.smoothScroll.mouseWheel.durationMaxMS", 150);
user_pref("general.smoothScroll.mouseWheel.durationMinMS", 50);
user_pref("general.smoothScroll.other", false);
user_pref("general.smoothScroll.pixels", false);
user_pref("general.smoothScroll.scrollbars.durationMaxMS", 100);
user_pref("general.smoothScroll.scrollbars.durationMinMS", 100);
, .
user_pref("general.useragent.override", "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/64.0");
user_pref("general.useragent.vendor", "");
user_pref("general.useragent.vendorSub", "");
User agent, ,
user_pref("general.warnOnAboutConfig", false);
about:config
user_pref("gfx.use_text_smoothing_setting", true);
user_pref("gfx.webrender.enabled", true);
user_pref("gfx.webrender.highlight-painted-layers", false);
user_pref("layers.acceleration.force-enabled", true);
.
user_pref("intl.accept_languages", "en-us,en,uk,ru");
user_pref("intl.locale.requested", "en-US");
, . .
user_pref("layout.css.devPixelsPerPx", "1.25");
user_pref("layout.css.osx-font-smoothing.enabled", true);
user_pref("layout.word_select.stop_at_punctuation", true);
"devPixelsPerPx". . "1".
user_pref("media.autoplay.enabled", false);
user_pref("media.av1.enabled", true);
, . AV1.
user_pref("network.allow-experiments", false);
user_pref("network.cookie.prefsMigrated", true);
user_pref("network.dns.disablePrefetch", true);
user_pref("network.http.speculative-parallel-limit", 0);
user_pref("network.predictor.enabled", false);
user_pref("network.prefetch-next", false);
user_pref("network.security.esni.enabled", true);
user_pref("network.tcp.tcp_fastopen_enable", true);
user_pref("network.trr.mode", 2);
user_pref("network.trr.uri", "https://mozilla.cloudflare-dns.com/dns-query");
user_pref("network.warnOnAboutNetworking", false);
.
"dns.disablePrefetch" "predictor.enabled" , , - . , , - .
"tcp.tcp_fastopen_enable" TCP Fast Open
"trr.mode" DNS Over HTTPS. 0 DoH; 1 — DNS DoH, , ; 2 — DoH , DNS ; 3 — DoH; 4 — DoH DNS .
"trr.uri" , IP .
"security.esni.enabled" Encrypted SNI
user_pref("privacy.donottrackheader.enabled", true);
user_pref("privacy.firstparty.isolate", true);
//
user_pref("privacy.resistFingerprinting", true);
user_pref("privacy.resistFingerprinting.autoDeclineNoUserInputCanvasPrompts", false);
. twiddler
user_pref("privacy.userContext.enabled", true);
user_pref("privacy.userContext.longPressBehavior", 2);
user_pref("privacy.userContext.ui.enabled", true);
"userContext" Multi-Account Containers. ()
. , . , . , Multi-Account Containers, . , , , . .
user_pref("reader.color_scheme", "dark");
user_pref("reader.content_width", 12);
Firefox , , . , , .

user_pref("security.ssl.errorReporting.automatic", true);
user_pref("toolkit.identity.enabled", false);
user_pref("toolkit.telemetry.archive.enabled", false);
user_pref("toolkit.telemetry.bhrPing.enabled", false);
user_pref("toolkit.telemetry.coverage.opt-out", false);
user_pref("toolkit.telemetry.enabled", false);
user_pref("toolkit.telemetry.firstShutdownPing.enabled", false);
user_pref("toolkit.telemetry.hybridContent.enabled", false);
user_pref("toolkit.telemetry.infoURL", "");
user_pref("toolkit.telemetry.newProfilePing.enabled", false);
user_pref("toolkit.telemetry.reportingpolicy.firstRun", false);
user_pref("toolkit.telemetry.server", "");
user_pref("toolkit.telemetry.shutdownPingSender.enabled", false);
user_pref("toolkit.telemetry.unified", false);
user_pref("toolkit.telemetry.updatePing.enabled", false);
. :)
user_pref("widget.chrome.allow-gtk-dark-theme", true);
user_pref("widget.content.allow-gtk-dark-theme", true);
// user_pref("widget.content.gtk-theme-override", "Adwaita:light");
gtk .()
, input textarea, , . "widget.content.gtk-theme-override" .
, , )
ShadowFox. . . , uBlock uMatrix
, Quantum Xul WebExtentions, , . , , . , .
, , .