Firefox about:config設定の忘却録

Firefoxのabout:config設定の忘却録です。

基本方針

  1. 拡張機能
    • 例え性能が劣化しようとも、拡張機能で対処する
    • ただし、一部機能でも実現できない場合は、この範囲ではない
  2. userChrome.css
    • userContent.cssは使用しない
      • 拡張機能でユーザスタイルを設定する
    • @importを使用して機能毎にファイルを分割する
  3. about:config
    • about:configから変更しない
      • なにを変更したのか忘れてしまうため
      • どのような理由で変更したか覚えておけないため
    • user.jsに記述する
      • プロファイルフォルダの直下にuser.jsのファイル名で新規作成する
      • 文字コードは、UTF-8Nとする
      • 可能な限り、コメントで設定内容・設定意図を記述する
  4. userChrome.js
    • いつなくなってもおかしくないため、出来るだけ使用しない

about:config と prefs.js と user.js

about:configは、Firefoxのアプリケーション設定です。about:configは、プロファイル直下のprefs.js及びuser.jsから読み取られます。about:configの設定項目の多くは、通常のオプション設定には表示されない多くの設定を変更することができます。

Firefoxのアドレスバーにabout:configを入力することでこの設定を閲覧したり変更することができます。ただし、about:configを直接編集すべきではありません。あなたは、変更した設定忘れてしまうことでしょう。

prefs.jsからuser_pref関数を利用してabout:configの設定を変更することができます。ただし、prefs.jsを編集すべきではありません。prefs.jsは、アプリケーション側が管理するファイルであるため、アプリケーションに上書きされる可能性があります。

user.jsからuser_pref関数を利用してabout:configの設定を変更することができます。user.jsは、オプション用のファイルであるため、アプリケーション側から上書きされることはありません。また、user.jsの設定は、prefs.jsよりも優先されます。user.jsは、標準で存在しため、文字コードUTF-8Nで新規作成する必要があります。

注意点

user.jsで独自で設定した項目を削除した場合、項目の値に注意してください。一度設定した項目は、設定した値を維持します。user.jsから設定を削除しても、元の設定に自動的に戻ることはありません。

user.jsから設定を削除する場合、削除後に設定値を手動で元に戻す必要があります。

about:config

user.js/**************************************/
/** 言語                             **/
/**************************************/

// FirefoxUIの言語(default:)
user_pref('intl.locale.requested', 'ja');

// 補足
// ページの言語設定(navigator.language)は、以下の言語となる。
// Firefoxメニューバー > ツール > オプション > コンテンツ > 言語 > 言語設定の最上段の言語



/**************************************/
/** ロケーションバー                 **/
/**************************************/

// URLバーからコピーしたURLをデコードする(default:false)
user_pref('browser.urlbar.decodeURLsOnCopy', true);



/**************************************/
/** タブ                             **/
/**************************************/

// 現在のタブに関連するリンクを新しいタブで開くとき右隣にタブを置く(default:true)
user_pref('browser.tabs.insertRelatedAfterCurrent', true);

// フルスクリーン時にタブを隠す(default:true)
user_pref('browser.fullscreen.autohide', true);

// テキストフィールド内の中クリックで、クリップボードをペーストする(default:false)
user_pref('middlemouse.paste', true);

// サイト側によるコンテキストメニュー表示設定(default:true)
// 右クリック禁止ページを回避用
user_pref('dom.event.contextmenu.enabled', true);

// ウィンドウ移動・サイズ変更を許可しない(default:false)
user_pref("dom.disable_window_move_resize", true);

// コントロールキーを押した状態でホイールを動かした時の操作。(default:3)
// 0:なし/1:通常スクロール/2:ページを進む、戻る/3:ズーム
user_pref('mousewheel.with_control.action', 3);

// AMO (addons.mozilla.org)で拡張を有効にする(default:none)
user_pref('privacy.resistFingerprinting.block_mozAddonManager', true);

// タブを隠す機能を有効にする(default:true)
user_pref('extensions.webextensions.tabhide.enabled', true);



/**************************************/
/** プライバシー                     **/
/**************************************/

// ウェブビーコン(default:true)
user_pref('beacon.enabled', true);



/**************************************/
/** 高速化                           **/
/**************************************/

// HTTP/1.1パイプライニングを使用する(default:none)
user_pref('network.http.pipelining', true);
user_pref('network.http.pipelining.ssl', true);
user_pref('network.http.proxy.pipelining', true);

// パイプライニングの最大リクエスト数(default:none)
// http://kb.mozillazine.org/Network.http.pipelining.maxrequests
user_pref('network.http.pipelining.maxrequests', 8);

// [消滅]サーバ毎の最大接続数(default:none)
//user_pref('network.http.max-connections-per-server', 32);

// HTTP2を無効化する(default:true)
user_pref('network.http.spdy.enabled.http2', false);



/**************************************/
/** 補足                             **/
/**************************************/

// デフォルト値は、Firefoxバージョンアップに伴って変更することがあります。
// 設定項目は、Firefoxバージョンアップに伴って削除されることがあります。
// none指定の未定義オプションやdefault設定のオプションは、設定変更してしまうとFirefox標準の変更に追従できない可能性があります。
// 設定項目を削除(または、コメントアウト)する場合、設定を手動で(もしくは、明示的に)元に戻す必要があります。

他の設定項目

次のページが特に参考になります。

参考