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

提供: ArchWiki
ナビゲーションに移動 検索に移動
(→‎パフォーマンス: 情報を更新)
16行目: 16行目:
   
 
{{Note|かならず最新版の Firefox を使って下さい。}}
 
{{Note|かならず最新版の Firefox を使って下さい。}}
  +
  +
このセクションには、パフォーマンスを調整するための Firefox の高度なオプションが含まれています。詳細については、[http://kb.mozillazine.org/Category:Tweaking_preferences これらの MozillaZine 記事] を参照してください。
   
 
=== パフォーマンス設定の変更 ===
 
=== パフォーマンス設定の変更 ===

2023年8月9日 (水) 20:00時点における版

関連記事

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

目次

パフォーマンス

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

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

このセクションには、パフォーマンスを調整するための Firefox の高度なオプションが含まれています。詳細については、これらの MozillaZine 記事 を参照してください。

パフォーマンス設定の変更

Firefox は、コンピューターのハードウェア仕様 [1] に基づいた設定を自動的に使用します。

これらの設定を調整するには、環境設定で dom.ipc.processCount の値を 1-8 に、browser.preferences.defaultPerformanceSettings.enabled の値を false に変更するか、about:config で手動で行います。

しかし、この設定を手動で調整することで、パフォーマンスをさらに向上させたり、ローエンドデバイスのメモリ使用量を減らしたりすることができます。

この場合、現在の ユーザーコンテンツプロセス制限4 に増加します。

$ ps -e | grep 'Web Content'
13991 tty1     00:00:04 Web Content
14027 tty1     00:00:09 Web Content
14031 tty1     00:00:20 Web Content
14040 tty1     00:00:26 Web Content

WebRender

WebRender は、Rust で書かれた高性能な GPU 加速 2D レンダリングエンジンです。Firefox と Servo ブラウザエンジンプロジェクトを動かすコンポジターです。Firefox 93 では、すべてのユーザに対してデフォルトで有効化されており、少なくとも OpenGL 3.0 または OpenGL ES 3.0 (2021-04 現在) をサポートしている ハードウェアで動作し、最低限のドライバ要件を満たしている 場合には、デフォルトでハードウェアレンダリングを使用します。システムがこれらの要件を満たしていない場合は、Software Webrender を使用してソフトウェアレンダリングにフォールバックします。

マシンのドライバが最新でレンダリングに問題がある場合、about:configgfx.webrender.software 環境設定を true に設定することで、Software Webrender を強制的に有効にすることができます。

警告: WebRender のハードウェアレンダリングは 安定性、レンダリング出力、パフォーマンスに関する重大な問題 のため、多くの GPU とドライバで無効になっています。お使いのハードウェアで無効になっている場合、ハードウェアレンダリングを強制することは推奨されません

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

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

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

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

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

読み込まれたすべてのオブジェクト (HTML ページ、JPEG 画像、CSS スタイルシート、GIF バナー) は、将来使用できるように Firefox キャッシュに保存され、再度ダウンロードする必要はありません。これらのオブジェクトの一部のみ (通常は約 30%) が再利用されると推定されます。これは、オブジェクトの有効期限が非常に短いこと、または単にユーザーの動作 (すでにアクセスしたページに戻るのではなく、新しいページを読み込むこと) が原因です。Firefox のキャッシュはメモリとディスクキャッシュに分割されており、後者ではディスクへの書き込みが頻繁に発生します。新しく読み込まれたオブジェクトはメモリに書き込まれ、古いオブジェクトは削除されます。

別のアプローチは、about:config 設定を使用することです。

  • browser.cache.disk.enablefalse に設定する。
  • このオプションの詳細については、browser.cache.memory Mozilla article を参照してください。
  • エントリ (右クリック > 新規作成 > 整数) browser.cache.memory.capacity を追加し、余裕を持たせたい KB 量を設定するか、自動 キャッシュサイズ選択の場合は -1 を設定します (このステップをスキップしても -1 に設定するのと同じ効果があります)
    • "自動" サイズ選択は、システム・メモリが 8 GB 以下のシステム用の設定を含む 10 年前のテーブルに基づいています。以下の式はこの表に非常に近いもので、Firefox キャッシュをより動的に設定するために使用できます: 41297 - (41606 / (1 + ((RAM / 1.16) ^ 0.75))) ここで、RAM は GB で、結果は KB 単位で表示されます。

この方法にはいくつかの欠点があります。

  • ブラウザがクラッシュした場合や再起動した場合、現在閲覧しているウェブページのコンテンツが失われますが、anything-sync-daemonbや同様の定期的な同期スクリプトを使用することで、キャッシュが定期的にドライブにコピーされるようにすることで回避できます。
  • 設定は各ユーザに個別に設定する必要があります。

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

別の方法は、"ディスク" キャッシュを RAM ディスクに移動することです。これにより、上記 2 つの中間の解決策が得られます。 キャッシュは Firefox の実行間 (Firefox のクラッシュ回復を含む) に保存されるようになりましたが、再起動時に (OS のクラッシュを含む) 破棄されます。

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

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

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

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

たとえば、保存間隔を 10 分 (600000 ミリ秒) に増やすには、about:config で browser.sessionstore.interval の設定を 600000 に変更します。

この機能を完全に無効にするには、browser.sessionstore.resume_from_crashfalse に変更します。

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

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

Firefox はブックマーク、履歴、パスワードを SQLite データベースに保存します。SQLite データベースは時間の経過とともに断片化し、あちこちに空きスペースが現れます。ただし、データベースをチェックして最適化する管理プロセスがないため、これらの要因により最終的にパフォーマンスが低下します。起動やその他のブックマークや履歴関連のタスクを改善する良い方法は、これらのデータベースから未使用の領域をデフラグしてトリミングすることです。

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 の応答性が向上する可能性があります。

Pocket の無効化

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

その他の設定

このセクションでは 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つ存在します [2]。推奨される設定を以下の行で説明します。

推奨値
キー 推奨 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 を強制的に有効化することもできますが [3]、問題が起こる可能性があるため基本的には推奨されません。

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 の計算は [4] を見てください。

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;
}

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

タイトルバーをタブバーに置き換えるには、about:configbrowser.tabs.drawInTitlebar を有効にします。

または、"メニュー"、"カスタマイズ" の順に進み、左下隅に "タイトルバー" という名前のチェックボックスを見つけます。 チェックを外します。 チェックボックスがない場合は、XDG_CURRENT_DESKTOP 環境変数が正しく設定されているか、MOZ_GTK_TITLEBAR_DECORATION 環境変数が "client" に設定されていることを確認してください。

KDE でタイトルバーのみを非表示にする

上記の設定では、Firefox は KDE で最小化/最大化/閉じるボタンをタブバーに追加しますが、タイトルバーはそのまま残ります。

それを右クリックし、"More Actions > Configure Special Application Settings" を選択して削除できます。そこに "タイトルバーとフレームなし" の新しいプロパティを追加し、それを有効にすることを忘れないでください。"はい" を選択する必要があります。 (タイトルバーがなくなった後でルールを変更するには、System settings > Window Management > Window Rules に移動します。)

ただし、それではフレームも消えてしまいますので、基本的にウィンドウサイズの変更はできません。 別の方法として、System settings > Application Style > Window Decorations に移動し、Breeze を選択して設定を変更します。 最後のタブ Window-Specific Overrides で、新しいものを追加します。 名前を取得するには、Detect Window Properties ボタンを使用します。または、Firefox だけでなく、すべてのウィンドウに対してこのオーバーライドを設定する場合は、正規表現フィールドにドット (.) を入力できます。 その後、Decoration Options を設定して、タイトル バーのみを非表示にします。

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

~/.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;
}

ダーク GTK テーマの時に入力フィールドが読めない

ダーク GTK テーマを使用すると、入力フィールドとテキストフィールドが読めないインターネットページに遭遇することがあります (たとえば、白い背景に白いテキスト、暗い背景に黒いテキストのテキスト入力フィールド) これは、サイトが背景色またはテキスト色のいずれかのみを設定し、Firefox がテーマからもう一方を取得するために発生する可能性があります。 Firefox が Web ページでテーマの色と暗いテーマをそれぞれ使用しないようにするには、browser.display.use_system_colorswidget.content.allow-gtk-dark-themefalse に設定されていることを確認します。 about:config

または、以前の変更で問題が解決しなかった場合は、widget.content.gtk-theme という名前の新しい文字列を about:config に追加することで、Firefox をライト GTK テーマで起動することができます。 -override に設定し、Breeze:lightAdwaita:light などのライト テーマに設定します。

入力フィールドの色を CSS でオーバーライドする
ノート: 関連するバグは 68 から解決されています。[5]

拡張機能 Text Contrast for Dark Themes は、コントラストを維持するために必要に応じて他の色を設定します。

userContent.css または stylus アドオン を使用して、すべての Web ページに標準の色を明示的に設定します。 スタイル シートは通常、chrome/userContent.css のプロファイル フォルダー (パスについては about:profiles にアクセスしてください) にありますが、そうでない場合はそこに作成できます。

以下は、入力フィールドを標準の黒のテキスト/白の背景に設定します。色が意図したとおりに表示されるように、表示されているサイトで両方をオーバーライドできます。

ノート: urlbarsearchbarwhite にしたい場合は、最初の 2 つの :not css セレクターを削除してください。
input:not(.urlbar-input):not(.textbox-input):not(.form-control):not([type='checkbox']):not([type='radio']), textarea, select {
    -moz-appearance: none !important;
    background-color: white;
    color: black;
}

#downloads-indicator-counter {
    color: white;
}
GTK テーマを変更する

Web コンテンツと UI の両方にライト テーマ (Adwaita など) を使用するよう Firefox に強制するには、GTK#テーマの基本設定 を参照してください。

コンテンツ処理のみの GTK テーマを変更する

Web コンテンツのみにライト テーマ (Adwaita など) を使用するように Firefox を強制するには:

  1. アドレスバーで about:config を開きます。
  2. (マウスの右ボタン > New > String) から新しい widget.content.gtk-theme-override 文字列タイプのエントリを作成します。
  3. レンダリング目的で使用するライトテーマの値を設定します (例:Adwaita:light)
  4. Firefox を再起動します。

ウェブコンテンツの 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]";
}

広告のブロック

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

マウスとキーボード

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

マウスホイールによるスクロール速度のデフォルト値を修正するには (例: スピードアップ)、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 ブラウザと同様のより高速な動作をエミュレートします。​構成をより迅速に行うには、次の行を ~/.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 キーバインド を参照してください。

その他

ハードウェアビデオデコーディングを強制的に有効にする

media.hardware-video-decoding.enabled はデフォルトで有効になっていますが、media.hardware-video-decoding.force-enabled を設定してハードウェアビデオデコードを強制的に有効にする必要がある場合があります。 true にして下さい。

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

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

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 クライアントを選択してください。他のプロトコルも同じように設定できます。

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

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

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

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

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

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

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 ですが、今ではそうではありません。​詳細については、こちらを参照してください:

[6] [7]

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

一部のプラットフォームでは、ユーザが WebGL を使用したい場合でも、 WebGL が無効になります [8] ​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 が表示されるようになりました。

ダウンロードパネルを自動的に開かないようにする

Firefox 98 以降では、ダウンロードが開始されるたびに、ダウンロードパネル (進行中/最近のダウンロード) が常に開きます。

この動作を無効にするには、about:configbrowser.download.alwaysOpenPanel 設定を false に設定します。

参照