web-dev-qa-db-ja.com

外部の.batファイルを介してFirefoxのabout:config設定を変更するにはどうすればよいですか?

Firefoxの外部のスクリプトを介して特定のabout:configプロパティの値を変更したいと思います。

以前にこれを試した人はいますか? 「prefs.js」を変更できることを読みましたが、もっと簡単で正しいアプローチがあるのではないかと思っていました。たとえば、次のようになります。

  • firefox実行可能ファイルへのコマンドライン引数(この場合、バッチファイルが機能します)
  • レジストリ設定(.regファイルが機能します)
2
Matt Refghi

Prefs.jsファイルのコメント:

# Mozilla User Preferences

/* Do not edit this file.
 *
 * If you make changes to this file while the application is running,
 * the changes will be overwritten when the application exits.
 *
 * To make a manual change to preferences, you can visit the URL about:config
 * For more information, see http://www.mozilla.org/unix/customizing.html#prefs
 */

そうは言っても、アプリケーションclosedでファイルを編集できるはずであり、新しい設定は起動時に有効になります。

ただし、変更する設定によっては、レジストリまたはコマンドラインオプションで同じ設定が得られるとは思いません。レジストリ設定はシステム固有であり、ユーザーごとではありません。および コマンドラインパラメータ は、ウィンドウサイズやロードするプロファイルなど、アプリケーションの特定のインスタンススイッチを提供します。

変更したい特定の設定がわかっている場合は、正規表現を使用してprefs.jsファイルで検索し(VBScriptを使用するのが私の選択です)、置換設定を使用して新しいファイルを書き込み、ファイルの名前を変更/削除して、新しいprefs.jsが以前のものを置き換えます。

6
JYelton

1つまたは複数のLinuxコンピューター用にFireFoxのカスタマイズをスクリプト化する方法は次のとおりです

  1. ファイル〜/ .mozilla/firefox/mr8jxm35.default /prefs.jsのバックアップコピーを作成します
  2. About:configでFirefoxをカスタマイズする
  3. バックアップを実際のprefs.jsと比較します
  4. 必要なカスタマイズに基づいてスクリプトを作成します

CustFireFox.sh

#!/bin/sh   
function SetFirefoxPref() {
  for PropName in "$@"; do
    LINE=$(grep -n "$PropName" ~/.mozilla/firefox/mr8jxm35.default/prefs.js | cut -f1 -d:)
    sed -i $LINE"s/true/false/" ~/.mozilla/firefox/mr8jxm35.default/prefs.js
    echo $PropName
  done
unset PropName
unset LINE
}

SetFirefoxPref \
    "browser.download.useDownloadDir" \
    "browser.fixup.alternate.enabled" \
    "browser.urlbar.trimURLs" \
    "general.warnOnAboutConfig" \
    "keyword.enabled"

/ etc/profileからスクリプトを呼び出して、現在または新規のすべてのユーザーが同じカスタマイズを行うようにすることができます。プロキシの設定などを含めることもできます。

0
user212544