「Firefox/設定」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(→‎Firefox の高度なオプション: レガシー OpenGL コンポジターを使用可能にするを翻訳して追加)
49行目: 49行目:
   
 
{{Note|特定のハードウェアで WebRender が無効になっている場合、安定性の問題、システムリソースの大量消費、ドライバのバグ、または多くの異なる変数が原因である可能性があり、高速化する代わりに遅くなることがあります。よくわからない場合は、自己責任で強制的に有効化することをお勧めします。}}
 
{{Note|特定のハードウェアで WebRender が無効になっている場合、安定性の問題、システムリソースの大量消費、ドライバのバグ、または多くの異なる変数が原因である可能性があり、高速化する代わりに遅くなることがあります。よくわからない場合は、自己責任で強制的に有効化することをお勧めします。}}
  +
  +
==== レガシー OpenGL コンポジターを使用可能にする ====
  +
  +
ハードウェアの ''WebRender'' またはソフトウェアの ''Basic'' コンポジターがデフォルトで使用されます。レガシー OpenGL コンポジターが動作しているかどうかを確認するには {{ic|about:support}} に行き、"Graphics" セクションで "Compositing" を探してください:もし "OpenGL" と報告されれば有効、さもなければ "WebRender" または "Basic" と報告されます。
  +
  +
OpenGL の合成は {{ic|about:config}} で {{ic|layers.acceleration.force-enabled}} を {{ic|true}} に切り替えることで強制的に有効にすることが可能です。変更を有効にするには、Firefox を再起動します。注意 WebRender は Firefox の OpenGL コンポジタを置き換えるものであり、OpenGL コンポジタよりも推奨されます。
  +
  +
{{note|特定のハードウェアで OpenGL 構成が無効になっている場合は、安定性の問題、高いシステムリソースの消費、ドライバーのバグ、またはさまざまな変数が原因である可能性があります。そのため、速度を上げる代わりに速度を落とす可能性があります。自分の責任で強制的に有効化してください。よくわからない場合はベンチマークを行ってください。}}
   
 
==== Accelerated Azure Canvas を有効にする ====
 
==== Accelerated Azure Canvas を有効にする ====

2022年1月27日 (木) 18:26時点における版

関連記事

このページでは Firefox の高度な設定オプションとパフォーマンスを上げる設定を説明します。

目次

パフォーマンス

Firefox のパフォーマンスを向上させる方法には、Firefox の実行中に入力できるパラメータ、開発者によって決められている設定の変更、もしくは外部プログラムやスクリプトによる高度な方法が存在します。

ノート: かならず最新版の Firefox を使って下さい。

Firefox の高度なオプション

このセクションではパフォーマンスに関する Firefox の高度なオプションについて説明しています。詳しい情報は Mozillazine フォーラムの投稿 を見て下さい。

OpenGL Off-Main-Thread Compositing (OMTC) の有効化

警告: 特定のハードウェアで OpenGL OMTC が無効になる場合、おそらく安定に問題があったり、システムリソースの消費が激しかったり、ドライバーにバグが存在するなどの可能性があります。強制的に有効化するときは自己責任で行って下さい。
ノート: Firefox バージョン 40 から基本的なソフトウェア OMTC はデフォルトで有効になります。

OpenGL OMTC を有効にするには about:config を開いて以下を設定します:

  • layers.acceleration.force-enabled true

Firefox を再起動することで変更が適用されます。

OpenGL OMTC が有効になっているかどうか確認するには、about:support を開いて "Graphics" セクションの "GPU Accelerated Windows" を見ます。"0/1 Basic (OMTC)" (または 0/2) と表示されている場合、OpenGL OMTC は無効になっています。"1/1 OpenGL (OMTC)" (または 1/2 や 2/2) となっている場合、有効です。

上記の設定で GPU アクセラレーションが有効にならない場合、環境変数を設定してみてください: export MOZ_USE_OMTC=1。設定してから Firefox を起動します [1]

Firefox の OMTC に関する詳細は次のページにあります: https://wiki.mozilla.org/Platform/GFX/OffMainThreadCompositing

WebRender コンポジタの有効化

WebRender は、Rust で書かれた GPU ベースの 2D レンダリングエンジンです。Wikipedia:Gecko (software)|Gecko]] コンポジターの代わりに、Servo ブラウザエンジンプロジェクトを動かしているコンポジターです。これはサポートされたハードウェア上でのパフォーマンスを向上させ、OpenGL compositor が使用されているときのいくつかの黒い視覚的な不具合を修正します。現在、いくつかの既知のバグがあります。詳しくは MozillaWiki:Platform/GFX/Quantum Render をご覧ください。

WebRender はすべての wayland セッションでデフォルトで有効になっています (Firefox 89 の時点) [2]。WebRender はデフォルトで non 4k+ displays に対しても有効です。いくつかのエッジケースでは、MozillaWiki:Platform/GFX/WebRender Where#Linux で詳述されているように、資格を変更することができます。デフォルトの WebRender の有効化はグラフィックカードやドライバのバージョンに依存する可能性もあります。

以下の2つの方法のいずれかを使って強制的に有効にすることができます。

  1. about:config に行き gfx.webrender.alltrue に設定、 変更を有効にするために、Firefox を再起動します。
  2. by setting the MOZ_WEBRENDER. [環境変数]] を 1 に設定してから、Firefox を起動します。

WebRender が有効かどうかを確認するには、about:support に行き、 グラフィックス セクションの サブセクション で、WEBRENDER を探します。もし、"available by user: Force enabled by pref" と報告されていれば、有効になっています。もし、onlyであれば、"opt-in by default. "と表示されます。WebRender is an opt-in feature" とだけ報告された場合、無効であることを意味します。

ノート: 特定のハードウェアで WebRender が無効になっている場合、安定性の問題、システムリソースの大量消費、ドライバのバグ、または多くの異なる変数が原因である可能性があり、高速化する代わりに遅くなることがあります。よくわからない場合は、自己責任で強制的に有効化することをお勧めします。

レガシー OpenGL コンポジターを使用可能にする

ハードウェアの WebRender またはソフトウェアの Basic コンポジターがデフォルトで使用されます。レガシー OpenGL コンポジターが動作しているかどうかを確認するには about:support に行き、"Graphics" セクションで "Compositing" を探してください:もし "OpenGL" と報告されれば有効、さもなければ "WebRender" または "Basic" と報告されます。

OpenGL の合成は about:configlayers.acceleration.force-enabledtrue に切り替えることで強制的に有効にすることが可能です。変更を有効にするには、Firefox を再起動します。注意 WebRender は Firefox の OpenGL コンポジタを置き換えるものであり、OpenGL コンポジタよりも推奨されます。

ノート: 特定のハードウェアで OpenGL 構成が無効になっている場合は、安定性の問題、高いシステムリソースの消費、ドライバーのバグ、またはさまざまな変数が原因である可能性があります。そのため、速度を上げる代わりに速度を落とす可能性があります。自分の責任で強制的に有効化してください。よくわからない場合はベンチマークを行ってください。

Accelerated Azure Canvas を有効にする

about:config を開いて、右クリックして新しい真偽値を作ってください。名前を gfx.canvas.azure.accelerated にして true に設定してください。

Firefox を再起動して about:support の AzureCanvasAccelerated が 1 になっていれば有効です。

ネットワーク設定

高度なネットワーク設定は about:config ページから変更できます (network を検索してみてください)。

推奨値
設定名 説明
network.http.pipelining true 通常接続で pipelining を有効にします。
network.http.pipelining.ssl true SSL 接続で HTTP pipelining を有効にします。
network.http.proxy.pipelining true プロキシ接続で pipelining を有効にします。

アンチフィッシングの無効化

ノート: プロファイルフォルダのファイル削除には危険が伴うため、先にバックアップをすることを推奨します。

Firefox のアンチフィッシング機能は Firefox の起動や終了を遅くすることがあります。問題は Firefox が Sqlite データベースを使っており、何度も使用しているうちにデータベースが巨大に成長することで読み書きが遅くなるのが原因です。どのサイトが怪しいのか Firefox に知らせてもらう必要がないと感じたのならば、機能を無効にすることが可能です:

  • 設定のセキュリティタブで次のオプションをオフにしてください: "攻撃サイトとして報告されているサイトをブロックする""偽装サイトとして報告されているサイトをブロックする"
  • プロファイルフォルダ (~/.mozilla/firefox/<profile_dir>/) に存在する urlclassifier から始まるファイルを全て削除してください:
$ rm -i ~/.mozilla/firefox/<profile_dir>/urlclassifier*
上記のファイルは Firefox によって再作成されることがありますが、初期サイズから大きく成長することはなくなります。

urlclassifier3.sqlite が作成されないようにする

上述のように urlclassifier* ファイルを全て削除しても、一定期間後に urlclassifier3.sqlite のサイズがまた増加することがあります。将来的にサイズが増加しないようにするシンプルな解決法:

$ cd ~/.mozilla/firefox/<profile_dir>
$ echo "" > urlclassifier3.sqlite
$ chmod 400 urlclassifier3.sqlite

ファイルを空にして読み取り専用にすることで Firefox から書き込めないようになります。

OCSP 検証の無効化

OCSP バリデーションは、Firefox が新しいサーバーに接続 (HTTPS) するたびに 遅延を発生させる ことがあります。特に、HTTPS を使用するページにウェブガジェットが含まれていた場合、一つの URL で複数の接続が発生することになり、事態を悪化させます。

  • 設定 -> 詳細 -> 証明書にある次のオプションをオフにしてください: "OSCP レスポンダに問い合わせてデジタル証明書の有効性をリアルタイムに確認する"
警告: OCSP を無効化した場合、中間者攻撃から無防備になります。Wi-Fi や VPN などの攻撃されるおそれがある接続を使用する場合は、OSCP はオンのままにしておくことが強く推奨されます。

ディスクキャッシュの無効化

ロードされたオブジェクト (html ページ、jpeg 画像、css スタイルシート、gif バナー) はすべて Firefox キャッシュに保存され、同じオブジェクトを今度使用するときにロードすることで、もう一度サーバーからダウンロードする必要を省きます。しかしながら、実際に再利用されるオブジェクトはごくわずかに限られています (通常は 30% ほど)。これはオブジェクトの有効期間が短すぎたり、アップデートがあったり、もしくは、単純にユーザーが行う行動 (訪問済みのページではなく新しいページをロードするなど) が原因であったりします。Firefox のキャッシュはメモリキャッシュとディスクキャッシュに分けられており、ディスクキャッシュを使用している場合、オブジェクトがロードされる度にディスクに書き込みが行われ、また、同時に古いオブジェクトの削除もされるために、頻繁にディスクの書き込みが発生します。

  • 設定 -> 詳細 -> ネットワーク -> キャッシュされた Web ページから "キャッシュサイズを制限する" でゼロを指定してください。

ディスクキャッシュを RAM に移動

別の方法として、"ディスク" キャッシュを RAM ディスクに移動して、上記の二つの間の解決策を得ることができます。キャッシュは、Firefox が実行されてから実行されるまでの間は保持されますが (Firefox のクラッシュリカバリを含む)、再起動時には破棄されます (OS クラッシュを含む)。

これを行うには、 about:config に移動し、 browser.cache.disk.parent_directory/run/user/UID/firefox に設定します。 UID は、 id-u を実行して取得できるユーザのIDです。

about:cache を開いて、新しいディスクキャッシュの場所を確認します。

セッションを保存する間隔を長くする

Firefox のセッションは15秒ごとに現在の状態 (開かれている url、cookie、履歴とブックマーク) を自動的に保存しています。これはユーザーが必要とするところよりも少し頻繁すぎる嫌いがあり、頻繁にディスクアクセスを発生させています。

セッションの保存間隔の設定は about:config ページから変更できます (sessionstore を検索してください)。

  • browser.sessionstore.interval 300000

セッションの保存を無効化したい場合、以下の設定を true から false に変更してください:

  • browser.sessionstore.resume_from_crash false

即座にページをレンダリング

Mozilla アプリケーションはウェブページを漸増的にレンダリングします。ページ全体がダウンロードされる前に、ページの一部だけを表示するのです。基本的にウェブページの最初の部分には表示に関係する情報はあまり存在しないため、Mozilla アプリケーションはページをレンダリングする前に少しの間だけ待機します。以下の設定はインターバルを制御します。接続速度が遅い場合 (ダイアルアップ接続など)、設定を変更するとウェブページのロード時間が長くなることがあるので注意してください。

  • nglayout.initialpaint.delay の値を 0 に変更。

上記の設定は about:config ページで行うことができます。

その他の設定

このセクションでは Firefox のパフォーマンスを向上させるその他の設定を説明しています。

UPX で Firefox バイナリを圧縮して起動時間を短縮

UPX は高速な伸長をサポートしている実行可能ファイル圧縮ツールであり、メモリのオーバーヘッドを減らします。公式リポジトリupx パッケージでインストールできます。

upx を使用して Firefox の実行可能ファイルを圧縮する前に、バイナリのバックアップを作成してください:

# cp /usr/lib/firefox/firefox /usr/lib/firefox/firefox.backup

最後に、upx を実行して、最大圧縮レベルを適用してください:

# upx --best /usr/lib/firefox/firefox

リファラーヘッダの制御

Firefox バージョン 28 では HTTP リファラーヘッダの送信を制御することができます。GUI の設定からはオプションを書けられませんが、about:config で変更することが可能です。関連するキーは4つ存在します [3]。推奨される設定を以下の行で説明します。

推奨値
キー 推奨 ip-check.info デフォルト 説明
network.http.sendRefererHeader 1 1 2 リンクをクリックした場合にのみ送信 (0 は完全に送信しない、1 はリンクのクリック時のみ、2 は常に送信)。
network.http.referer.XOriginPolicy 1 1 0 ベースドメインが一致する場合にのみ送信 (0 は常に送信、2 はホストが一致する場合のみ)。
network.http.referer.spoofSource true false false リンク先の URI を送信。
network.http.referer.trimmingPolicy 2 0 0 スキーム・ホスト・ポートを送信しない (0 は全て送信しない、1 はスキームやホストのポート・パスを送信しない)。

プロファイルの SQLite データベースのデフラグ

警告: 以下の設定はデータベースを破損させてセッションが正しく保存されなくなる可能性があります。

Firefox 3.0 ではブックマーク・履歴・パスワードは SQLite データベースに保存されます。SQLite データベースは使っていくうちに断片化して空き領域があちこちにできます。Firefox はデータベースを確認して最適化することはしないので、しばらくすると断片化は性能に影響してきます。データベースのデフラグを行なって使われていない領域を削除することで起動時間を短縮したりブックマークや履歴などの操作を高速化することが可能です。

Firefox を実行していないときに profile-cleaner を使うことでデフラグを行えます。

デフラグ前後のサイズの比較
SQLite データベース デフラグ前のサイズ デフラグ後のサイズ % 変化
urlclassifier3.sqlite 37 M 30 M 19 %
places.sqlite 16 M 2.4 M 85 %

Firefox の最近のバージョンでは、ページのロードが遅くなったりプロファイルの破損の原因となる places データベースをデフラグ・最適化するツールが用意されています。ツールを使うには about:support ページを開いてください。Places データベース の下にある 完全性を検証 ボタンを押してください。

tmpfs でプロファイルを RAM にキャッシュ

システムにメモリが余っている場合、tmpfs を使ってプロファイルディレクトリ全体をキャッシュすることができます。そうすると Firefox のレスポンスが高まります。

スポンサーコンテンツやタイルをオフにする

about:configbrowser.newtabpage.directory.sourcebrowser.newtabpage.directory.ping の値を空にしてください。また、新しいタブページのツールからタイル機能を無効にすると良いでしょう。Wireshark セッションで通信を確認できます。

Electrolysis の有効化

Firefox 48 (45 ESR) 以上では Electrolysis (マルチプロセス) を有効化することでパフォーマンスとセキュリティを高めることができます。about:configbrowser.tabs.remote.autostarttrue に設定してください。Electrolysis を強制的に有効化することもできますが [4]、問題が起こる可能性があるため基本的には推奨されません。

Electrolysis が有効になっているか確認するには about:support の「アプリケーション基本情報」セクションにある「マルチプロセスウィンドウ」を確認してください。"0/1 (無効)" となっている場合 Electrolysis は無効です。"1/1 (ユーザー設定により有効)" となっていれば有効です。*/* の数字は Firefox の開かれているウィンドウの数を示します。例えば 0/2 は2つ開かれている Firefox のウィンドウのどちらも Electrolysis を使用しておらず、2/2 は両方のウィンドウで有効になっていることを意味します。

HTTP キャッシュの有効化

about:configbrowser.cache.use_new_backend を 0 から 1 に設定してください。

Pocket の無効化

Pocket サービスを使用しない場合、about:configextensions.pocket.enabledfalse に設定することで無効にできます。

ノート: 45ESR の場合、キーは browser.pocket... です。

外観

フォント

次の記事を参照してください: フォント設定

DPI の値の設定

システムの DPI が 96 を下回っている場合、設定を変更することで Firefox のフォントの見た目を良くすることができます。デフォルトでは Firefox は DPI の値は 96 を使用し、96 を上回っている場合だけシステム値を使います。値に関係なくシステム値を使うようにするには、アドレスバーに about:config と入力して layout.css.dpi0 に設定してください。

上記の設定は Firefox のユーザーインターフェースの DPI 設定にだけ影響を与えるので注意してください。ウェブページのコンテンツの DPI 値は 96 のままです。変更するには layout.css.devPixelsPerPx をシステムの DPI を 96 で割った値に設定してください。例えばシステムの DPI が 144 の場合、設定する値は 144/96 = 1.5 です。layout.css.devPixelsPerPx1.5 にするとウェブページのコンテンツの DPI が 144 になります。

高解像度ディスプレイについての情報は HiDPI#Firefox を参照してください。DPI の計算は [5] を見てください。

Microsoft Windows のデフォルトフォント設定

以下は Firefox を Microsoft Windows にインストールした時のデフォルトフォント設定です。多くのウェブサイトは Microsoft フォントを使っています。

Proportional: Serif Size (pixels): 16
Serif: Times New Roman
Sans-serif: Arial
Monospace: Courier New Size (pixels): 13

一般的なユーザーインターフェイスの CSS 設定

Firefox のユーザーインターフェイスは ~/.mozilla/firefox/<profile_dir>/chrome/ 内の userChrome.cssuserContent.css ファイルを編集することで変更することができます (profile_dirhash.name という形式を取っており、hash は8文字のランダムな文字列です。プロファイルの name は通常 default となっています)。

ノート: chrome/ フォルダと userChrome.css/userContent.css ファイルは存在している必要がないので、作る必要があるかもしれません。

このセクションでは (ウェブページではなく) Firefox のユーザーインターフェイスを変更する userChrome.css ファイルについてだけ扱います。

フォントの変更

この設定はグローバルな GTK+ のフォント設定を上書きします。ウェブページには影響を与えません、ユーザーインターフェイスのフォントだけが変更されます:

~/.mozilla/firefox/<profile_dir>/chrome/userChrome.css
* {
    font-family: "FONT_NAME";
}

ボタンアイコンの隠匿

テキストボタンを有効化:

~/.mozilla/firefox/<profile_dir>/chrome/userChrome.css
.button-box .button-icon {
    display: none;
}

様々なタブボタンの隠匿

以下の設定はタブバーの縁で表示される矢印、全てのタブのドロップダウンリストを切り替えるボタン、新しいタブを作成するプラス記号を非表示にします:

~/.mozilla/firefox/<profile_dir>/chrome/userChrome.css
/* Tab bar */

.tabbrowser-strip *[class^="scrollbutton"] {
    /* Hide tab scroll buttons */
    display: none;
}

.tabbrowser-strip *[class^="tabs-alltabs"] {
    /* Hide tab drop-down list */
    display: none;
}

.tabbrowser-strip *[class^="tabs-newtab-button"] {
    /* Hide new-tab button */
    display: none;
}

水平タブ

タブバーをブラウザウィンドウの側面に横に並べて表示するには:

~/.mozilla/firefox/<profile_dir>/chrome/userChrome.css
/* Display the tabbar on the left */
#content > tabbox {
    -moz-box-orient: horizontal;
}

.tabbrowser-strip {
    -moz-box-orient: vertical;
    /*
     * You can set this to -moz-scrollbars-vertical instead,
     * but then the scrollbar will *always* be visible.  this way
     * there is never a scrollbar, so it behaves like the tab bar
     * normally does
     */
     overflow: -moz-scrollbars-none;
}

.tabbrowser-tabs {
    -moz-box-orient: horizontal;
    min-width: 20ex;   /* You may want to increase this value */
    -mox-box-pack: start;
    -moz-box-align: start;
}

.tabbrowser-tabs > hbox {
    -moz-box-orient: vertical;
    -moz-box-align: stretch;
    -moz-box-pack: start;
}

.tabbrowser-tabs > hbox > tab {
    -moz-box-align: start;
    -moz-box-orient: horizontal;
}

ウィンドウの縁とタイトルバーを非表示にする

Hide Caption Titlebar Plus 拡張をインストールして以下の設定を行ってください (他の設定はデフォルトのままにしてください):

オプション
Show Custom Caption/TitleBar Never
Activate custom borders and corner resizers Deactivate
Enable Customizable Buttons (min,max,close) Using a Glass-like window background
Custom Minimize, Max, Close Buttons Auto. Current theme's skin (fixed position)
Drag Fx window using Tab-bar background Enable
Alternative hide-titlebar feature Use

Classic Theme Restorer 拡張では他にもタブの高さを 28px に設定したりツールバーやボタンを有効化・無効化するオプションが使えます。

ブックマークツールバーを自動で隠匿

~/.mozilla/firefox/<profile_dir>/chrome/userChrome.css
#PersonalToolbar {
    visibility: collapse !important;
}

#navigator-toolbox:hover > #PersonalToolbar {
    visibility: visible !important;
}

サイドバーの幅の制限をなくす

~/.mozilla/firefox/<profile_dir>/chrome/userChrome.css
/* remove maximum/minimum  width restriction of sidebar */
#sidebar {
    max-width: none !important;
    min-width: 0px !important;
}

ウェブコンテンツの CSS 設定

このセクションではウェブコンテンツに CSS のカスタムルールを追加できる userContent.css ファイルについて扱います。このファイルへの変更はブラウザの再起動時に適用されます。

頻繁に使うウェブサイトに小さな修正を加えたり個人的なスタイルを適用することが可能です。人気のウェブサイトのカスタムスタイルシートは userstyles.org などから手に入れることができます。superUserContent などのアドオンをインストールしてテーマを管理することが可能です。アドオンは chrome/userContent.css.d ディレクトリを作成してページが更新されたときに中に入っている CSS ファイルに変更を適用します。

他の CSS ファイルのインポート

~/.mozilla/firefox/<profile_dir>/chrome/userContent.css
@import url("./imports/some_file.css");

ドメインの特定部位をブロック

~/.mozilla/firefox/<profile_dir>/chrome/userContent.css
@-moz-document domain(example.com) {
    div#header {
        background-image: none !important;
    } 
}

PDF ファイルのリンクの後ろに [pdf] を追加

~/.mozilla/firefox/<profile_dir>/chrome/userContent.css
/* add '[pdf]' next to links to PDF files */
a[href$=".pdf"]:after {
    font-size: smaller;
    content: " [pdf]";
}

Firefox 4 の新しいメニューバー/Firefox ボタン

新しい Firefox ボタンとクラシックなメニューバーを切り替えるには:

  • ボタンが有効な場合、Preferences > Menu Bar にチェックを入れるかツールバーを右クリックして Menu Bar にチェックを入れてください。
  • メニューバーが有効な場合、View > Toolbars > Menu Bar のチェックを外すか、ツールバーを右クリックして Menu Bar のチェックを外してください。

GNU/Linux では Windows のオレンジのボタンの代わりにグレーのボタンが表示されます。設定によって Firefox アイコンに "Firefox" というテキストの表示に変えられます。

~/.mozilla/firefox/userprofile/chrome/userChrome.css ファイルに以下を追加するとテキストの前にアイコンが表示されます:

#appmenu-toolbar-button {
  list-style-image: url("chrome://branding/content/icon16.png");
}

同じファイルに以下を追加すると "Firefox" の文字が消えます:

#appmenu-toolbar-button > .toolbarbutton-text,
#appmenu-toolbar-button > .toolbarbutton-menu-dropmarker {
  display: none !important;
}

Windows の Firefox 4 以上のデフォルト設定をコピーしてオレンジの背景を追加し、プライベートブラウジングモードを紫背景にする userChrome.css 設定:

#main-window:not([privatebrowsingmode]) #appmenu-toolbar-button {
    -moz-appearance: none !important;
    color: #FEEDFC !important;
    background: -moz-linear-gradient(hsl(34,85%,60%), hsl(26,72%,53%) 95%) !important;
    border: 1px solid #000000 !important;
}

#main-window:not([privatebrowsingmode]) #appmenu-toolbar-button:hover:not(:active):not([open]) {
    -moz-appearance: none !important;
    color: #FEEDFC !important;
    background: -moz-linear-gradient(hsl(26,72%,53%), hsl(34,85%,60%) 95%) !important;
    border: 1px solid #000000 !important;
}


#main-window:not([privatebrowsingmode]) #appmenu-toolbar-button:hover:active,
#main-window:not([privatebrowsingmode]) #appmenu-toolbar-button[open] {
    -moz-appearance: none !important;
    color: #FEEDFC !important;
    background: -moz-linear-gradient(hsl(26,72%,53%), hsl(26,72%,53%) 95%) !important;
    border: 1px solid #000000 !important;
}

#appmenu-toolbar-button {
    -moz-appearance: none !important;
    color: #FEEDFC !important;
    background: -moz-linear-gradient(hsl(279,70%,46%), hsl(276,75%,38%) 95%) !important;
    border: 1px solid #000000 !important;
}


#main-window #appmenu-toolbar-button:hover:not(:active):not([open]) {
    -moz-appearance: none !important;
    color: #FEEDFC !important;
    background: -moz-linear-gradient(hsl(276,75%,38%), hsl(279,70%,46%) 95%) !important;
    border: 1px solid #000000 !important;
}


#main-window #appmenu-toolbar-button:hover:active,
#main-window #appmenu-toolbar-button[open] {
    -moz-appearance: none !important;
    color: #FEEDFC !important;
    background: -moz-linear-gradient(hsl(276,75%,38%), hsl(276,75%,38%) 95%) !important;
    border: 1px solid #000000 !important;
}
ノート: chrome ディレクトリと userChrome.css が存在しない場合は作成してください。

広告のブロック

userContent.css を使って広告をブロックする方法については floppymoose.com にサンプルがあります。

フルスクリーンの警告を無効化

フルスクリーンモードにしたときに表示される警告は about:config で "full-screen-api.warning.timeout" を 0 に設定することで無効にできます。

マウスとキーボード

マウスホイールでスクロールする速度

マウスホイールによるスクロール速度のデフォルト値を修正するには (例: スピードアップ)、about:config を開いて mousewheel.acceleration を検索してください。利用可能なオプションが表示されるので、以下を修正します:

  • mousewheel.acceleration.start-1 に設定。
  • mousewheel.acceleration.factor を適当な値に設定 (10 から 20 が普通使われる値です)。

もしくは SmoothWheel add-on をインストールすることでも変更できます。

ピクセル単位で正確なトラックパッドのスクロール

(Nautilus などの GTK3 アプリケーションで使われている) 正確なトラックパッドスクロールを有効にするには、Firefox を起動する前に MOZ_USE_XINPUT2=1 環境変数を設定してください。

スクロールがぎくしゃくする場合、設定 > 詳細からスムーススクロールオプションを有効にしてみてください。

​タッチスクリーンジェスチャを有効にする

dom.w3c_touch_events.enabled が 1 (enabled) または 2 (default, auto-detect) に設定されていることを確認します。

MOZ_USE_XINPUT2 DEFAULT=1/etc/security/pam_env.conf に追加し、システムをログアウトするか再起動して変更を有効にします。

​デバイスによっては、以下を実行してxinputのタッチスクリーンジェスチャを無効にする必要があるかもしれません:

$ xsetwacom --set device Gesture off

Firefox の URL バーのマウスクリックを Windows と同じにする

about:config で以下を設定してください:

browser.urlbar.clickSelectsAll true
browser.urlbar.doubleClickSelectsAll false
layout.word_select.stop_at_punctuation true

URL バーのシングルクリックで全てを選択し、ダブルクリックで単語を選択、トリプルクリックで全てを選択するようになります。

​スムーズスクロール

​Firefox でスムーズな物理ベースのスクロールを実現するには、 general.smoothScroll.msdPhysics 設定を変更して、他の Web ブラウザと同様のより高速な動作をエミュレートします。​構成をより迅速に行うには、次の行を {{ic|~/.mozilla/firefox/your-profile/user.js} に追加します。(再起動が必要):

user_pref("general.smoothScroll.lines.durationMaxMS", 125);
user_pref("general.smoothScroll.lines.durationMinMS", 125);
user_pref("general.smoothScroll.mouseWheel.durationMaxMS", 200);
user_pref("general.smoothScroll.mouseWheel.durationMinMS", 100);
user_pref("general.smoothScroll.msdPhysics.enabled", true);
user_pref("general.smoothScroll.other.durationMaxMS", 125);
user_pref("general.smoothScroll.other.durationMinMS", 125);
user_pref("general.smoothScroll.pages.durationMaxMS", 125);
user_pref("general.smoothScroll.pages.durationMinMS", 125);

​また、マウスホイールのスクロール設定も、スムーズに反応するように変更する必要があります。:

user_pref("mousewheel.min_line_scroll_amount", 30);
user_pref("mousewheel.system_scroll_override_on_root_content.enabled", true);
user_pref("mousewheel.system_scroll_override_on_root_content.horizontal.factor", 175);
user_pref("mousewheel.system_scroll_override_on_root_content.vertical.factor", 175);
user_pref("toolkit.scrollbox.horizontalScrollDistance", 6);
user_pref("toolkit.scrollbox.verticalScrollDistance", 2);

​パフォーマンスで問題が発生した場合は、mousewheel.min_line_scroll_amount を修正してみてください。

​バックスペースの動作を設定する

こちらを参照. バックスペースが '戻る' ボタンとして機能しない

マウスの中ボタンのクリップボードペーストを無効にする

こちらを参照. Middle-click_behavior

Emacs キーバインディング

​テキストフィールドで Emacs/Readline に似たキー割り当てを有効にするには、Emacs キーバインド を参照してください。

その他

その他のヒントと設定。

追加のメディアコーデックの有効化

設定する前に、デフォルトで有効になっていないことには理由があることを覚えておいて下さい。安定に問題があったり、メモリリークが発生することがあります。about:config を開いて以下のオプションを確認してください:

推奨値
キー 説明
media.mediasource.enabled true (デフォルト) Media Source Extensions (MSE) の有効化
media.mediasource.mp4.enabled true (デフォルト) MP4 MSE の有効化
media.mediasource.webm.enabled true (デフォルト) WebM MSE の有効化。
media.mediasource.ignore_codecs true H.264 MSE などを有効化 (キーは作成してください)

Widevine と Netflix/Amazon Video

Widevine は Netflix や Amazon プライムビデオなどがビデオコンテンツの保護のために使用しているデジタル著作権管理ツールです。

Widevine が使われているページを初めて表示すると Firefox はアドレスバーの下に DRM をインストールしてもよいか表示します。承認したらダウンロードバーが消えるまで待ってください。完了したら Netflix や Amazon プライムビデオなどから動画を視聴できるはずです。

ノート: コンテンツ設定の "DRM コンテンツの再生" にチェックが入っていることを確認してください。

Firefox 検索バーの検索エンジンの順番を変更

検索エンジンが表示される順番を変えるには:

  • 検索エンジンのドロップダウンリストを開いて Manage Search Engines... エントリをクリック。
  • 移動したい検索エンジンを選択して Move UpMove Down で移動します。ドラッグアンドドロップで移動することも可能です。

Abiword や LibreOffice Writer で *.doc を自動的に開く方法

Preferences > Applications を開いて Word Document (または Word 2007 Document*.docx) を検索してください。見つけたら、ドロップダウンリストをクリックして Use other... を選択してください。そして Abiword や Writer の実行可能ファイルのパスを指定してください (/usr/bin/abiword/usr/bin/lowriter)。

"I'm Feeling Lucky" モード

検索エンジンによっては "feeling lucky" 機能が存在することがあります。例えば、Google には "I'm Feeling Lucky" があり、DuckDuckGo には "I'm Feeling Ducky" があります。

機能を有効化するには:

  1. アドレスバーに about:config と入力。
  2. keyword.url という文字列を検索。
  3. 値を検索エンジンの URL に設定。

Google の場合、次のように設定:

https://www.google.com/search?btnI=I%27m+Feeling+Lucky&q=

DuckDuckGo の場合、次のように設定:

https://duckduckgo.com/?q=\

DNSSEC で DNS をセキュア化

DNSSEC のサポートを有効にすることでブラウジングを安全にすることができます。

マグネットプロトコルの関連付けの追加

about:confignetwork.protocol-handler.expose.magnetfalse に設定してください。

次にマグネットリンクを開いたとき、Launch Application ダイアログが表示されます。ダイアログから、使いたい torrent クライアントを選択してください。他のプロトコルも同じように設定できます。

マグネットプロトコルの関連付けを kTorrent (KDE4) に追加

/usr/share/applications/kde4/ktorrent.desktop のユーザーコピーを ~/.local/share/applications/kde4/ に作成して、Mimetype= に以下を追加してください:

x-scheme-handler/magnet

~/.config/mimeapps.list を修正して以下を追加:

x-scheme-handler/magnet=kde4-ktorrent.desktop

[6] を見て下さい。

突然終了してしまうのを防ぐ

Disable Ctrl-Q Shortcut 拡張をインストールすることでブラウザを不注意に閉じてしまうことを防止できます。

もしくはウィンドウマネージャの設定ファイルにルールを追加する方法もあります。例えば openbox なら ~/.config/openbox/rc.xml ファイルの <keyboard> セクションに以下を追加してください:

 <keybind key="C-q">
   <action name="Execute">
     <execute>false</execute>
   </action>
 </keybind>
ノート: 上記の設定はグラフィックサーバーで動作する全てのアプリケーションに適用されます。

最新版でプラグインが動作しない

Arch はブリーディングエッジなので、最新の Firefox では動作しないプラグインと互換性の問題が起こることがあります (例: Pentadactyl)。可能であれば、ナイトリー/ベータ版をインストールするか、パッケージのダウングレードを見て下さい。

Disable Add-on Compatibility Checks プラグインは新しいバージョンでもちゃんと動くのにプラグインが無効化される問題を解決します。

スクロールがギクシャクしている

Firefox でのスクロールが"ガタガタ"あるいは"ムラがある"と感じられることがあります。MozillaZine が Gentoo でスクロールを修正する設定を投稿していますが、Arch Linux でも同じように直ることが報告されています:

  1. mousewheel.min_line_scroll_amount を 40 に設定
  2. general.smoothScrollgeneral.smoothScroll.pagesfalse に設定
  3. image.mem.min_discard_timeout_ms を 2100000000 のように大きな値に設定、ただし 2140000000 を超えてはならない。この値よりも上の値に設定してしまうと Firefox は次のエラーを吐きます: "The text you entered is not a number"。
  4. image.mem.max_decoded_image_kb を最低でも 512K に設定

これでスクロールがスムーズになるはずです。

nspawn コンテナの中で Firefox を実行

PID 1 で実行するには:

# systemd-nspawn --setenv=DISPLAY=:0 \
              --setenv=XAUTHORITY=~/.Xauthority \
              --bind-ro=$HOME/.Xauthority:/root/.Xauthority \
              --bind=/tmp/.X11-unix \
              -D ~/containers/firefox \
              firefox

もしくは systemd-networkd を使って systemd でネットワークを設定したコンテナを起動する場合:

# systemd-nspawn --bind-ro=$HOME/.Xauthority:/root/.Xauthority \
              --bind=/tmp/.X11-unix \
              -D ~/containers/firefox \
              --network-veth -b

コンテナを起動したら、以下のように Xorg ライブラリを実行してください:

# systemd-run -M firefox --setenv=DISPLAY=:0 firefox

検索がマッチした箇所をスクロールバーに表示

FindBar Tweak 拡張をインストールすることで表示できます。

WebRTC オーディオのポストプロセス処理を無効化

PulseAudio の module-echo-cancel を使用している場合、Firefox がポストプロセス処理を音声にかけないように設定すると良いでしょう。

オーディオのポストプロセス処理を無効化するには、以下のパラメータを設定
キー 説明
media.getusermedia.aec_enabled false AEC = 音響エコー除去 (Acoustic Echo Cancellation)
media.getusermedia.agc_enabled false AGC = 自動ゲインコントロール (Automatic Gain Control)
media.getusermedia.noise_enabled false ノイズ除去。Firefox のノイズ除去を無効にすると音がミッキーマウスのようになることがあります。

​Fido U2F 認証

​Firefox は Fido U2F 認証プロトコルをサポートしています。​必要な udev ルール用に libfido2 をインストールします。

ALSA に戻す

​Arch が Firefox を ac_add_options --enable-alsa でビルドし続ける限り、Firefox はシステム上で特別な設定なしに、そして (ただし、システムでパルスを使用していて、 Firefox がパルスを使用しないようにしたい場合はこの限りではない。) パルスなしに、正常に動作します。​以前は ioctl の syscall を許可しなければならず、デフォルトでは Firefox のサンドボックスでブロックされ、 about:config のALSA の設定 security.sandbox.content.syscall_whitelist で、正しい ioctl の syscall 番号にする必要がありました。これは x 86-64 では 16 x86-32 では 54 ですが、今ではそうではありません。​詳細については、こちらを参照してください:

[7] [8]

WebGL を強制的に使用可能にする

一部のプラットフォームでは、ユーザが WebGL を使用したい場合でも、 WebGL が無効になります [9] ​WebGL を強制的に有効にするには、webgl.force-enabledtrue に設定し、WebGL アンチエイリアシングも強制的に有効にするには、 webgl.msaa-forcetrue に設定します。

次のようなエラーが表示された場合:

libGL error: MESA-LOADER: failed to retrieve device information
libGL error: image driver extension not found
libGL error: failed to load driver: i915
libGL error: MESA-LOADER: failed to retrieve device information
...

​Firefox のバグ 1480755 で説明されている解決策を試してみてください:

参照. security.sandbox.content.read_path_whitelist to /sys/

Recommended by Pocket を有効にする

​"Recommended by Pocket" (設定 > ホーム > Firefox Home コンテンツ - "トップサイト" と "ハイライト" の間に) が表示されない場合は、browser.newtabpage.activity-stream.feeds.section.topstories および browser.newtabpage.activity-stream.feeds.system.topstories から true。​このオプションは 設定 には表示されませんが、新しく開いたタブ/ウィンドウ (Firefox Home に設定した場合) に Pocket recommendations が表示されるようになりました。

参照