userChrome_readme.txt LastUpdate: 2026/03/01 01:00 各種設定ファイルの置き場所: C:\Program Files\Mozilla Firefox各リビジョン\config.js C:\Program Files\Mozilla Firefox各リビジョン\defaults\pref\config-prefs.js C:\Program Files\Mozilla Firefox各リビジョン\distribution\policies.json C:\Users\USER_NAME\AppData\Roaming\Mozilla\Firefox\Profiles\各プロファイルフォルダ\user.js C:\Users\USER_NAME\AppData\Roaming\Mozilla\Firefox\Profiles\各プロファイルフォルダ\Chrome\userChrome.js C:\Users\USER_NAME\AppData\Roaming\Mozilla\Firefox\Profiles\各プロファイルフォルダ\Chrome\userChrome.css C:\Users\USER_NAME\AppData\Roaming\Mozilla\Firefox\Profiles\各プロファイルフォルダ\Chrome\userContent.css userChrome.js導入・作成に関して https://w.atwiki.jp/fxext/pages/55.html https://github.com/alice0775/userChrome.js/blob/master/README ・config.js, config-prefs.js  usrChrome.jsのローダー機能、カスタムCSSの有効化  上記WikiやaliceさんのGithubから導入して色々出来るようにしても良いですが沢山の .uc.js を利用するような  場合を除いてuserChrome.jsだけ動けば良い人は簡易版でも十分です ・policies.json  自動更新の抑止など、about:configで制限しきれない動作を変更 ・user.js  user_prefにてabout:config設定項目の設定(ブラウザの再インストールや移行が楽になるのでここに記述) ・userChrome.js  ブラウザ自身の動作に関するスクリプト ・userChrome.css  ブラウザ自身の表示に関するCSS ・userContent.css  サイト別の表示に関するCSS(Stylebotで指定しても良いが滅多に変更しない定義はこちらへ) ---------------------------------------- config.js 例(簡易ローダーのみ実装) ---------------------------------------- try { let { classes: Cc, interfaces: Ci, utils: Cu } = Components; //let { Services } = Cu.import('resource://gre/modules/Services.jsm'); //Cu.import('resource://gre/modules/osfile.jsm'); function UserChrome_js() { Services.obs.addObserver(this, 'domwindowopened', false); }; UserChrome_js.prototype = { observe: function (aSubject, aTopic, aData) { aSubject.addEventListener('load', this, true); }, handleEvent: function (aEvent) { let document = aEvent.originalTarget; if (document.location && document.location.protocol == 'chrome:') { const ios = Cc["@mozilla.org/network/io-service;1"].getService(Ci.nsIIOService); const fph = ios.getProtocolHandler("file").QueryInterface(Ci.nsIFileProtocolHandler); const ds = Cc["@mozilla.org/file/directory_service;1"].getService(Ci.nsIProperties); let file = ds.get("UChrm", Ci.nsIFile); file.append('userChrome.js'); let fileURL = fph .getURLSpecFromActualFile(file) + "?" + file.lastModifiedTime; Cc["@mozilla.org/moz/jssubscript-loader;1"].getService(Ci.mozIJSSubScriptLoader) .loadSubScript(fileURL, document.defaultView, 'UTF-8'); } }, }; if (!Cc['@mozilla.org/xre/app-info;1'].getService(Ci.nsIXULRuntime).inSafeMode) new UserChrome_js(); } catch(ex) {}; try { pref("toolkit.legacyUserProfileCustomizations.stylesheets", true); } catch(e) {} ---------------------------------------- config-prefs.js 例(簡易ローダーのみ実装) ---------------------------------------- pref("general.config.obscure_value", 0); pref("general.config.filename", "config.js"); pref("general.config.sandbox_enabled", false); ---------------------------------------- policies.json 例(更新を手動で行う) ---------------------------------------- { "policies": { "DisableAppUpdate": false, "AppAutoUpdate": false, "BackgroundAppUpdate": false, "DontCheckDefaultBrowser": true }, "Preferences": { "extensions.htmlaboutaddons.recommendations.enabled": { "Value": "false", "Status": "locked" }, "browser.urlbar.suggest.feature": { "Value": "false", "Status": "locked" } } } ---------------------------------------- user.js 例(各種about:config設定) ---------------------------------------- user_pref("app.update.interval", 10800); user_pref("app.update.promptWaitTime", 10800); user_pref("extensions.update.interval", 10800); user_pref("app.update.background.scheduling.enabled", false); user_pref("app.update.background.interval", 0); user_pref("app.update.service.enabled", false); user_pref("toolkit.zoomManager.zoomValues", "0.3,0.45,0.5,0.55,0.6,0.65,0.7,0.75,0.8,0.85,0.9,0.95,1,1.05,1.1,1.15,1.2,1.25,1.33,1.4,1.5,1.7,2,2.4,3,4,5"); ---------------------------------------- userChrome.js 例 ---------------------------------------- http://coltpythonkingcobra.g1.xrea.com/pseudoTweetdeck/userChrome_js.txt ※UTF8形式でuserChrome.jsにリネームして保存して下さい ---------------------------------------- userChrome.css 例 ---------------------------------------- http://coltpythonkingcobra.g1.xrea.com/pseudoTweetdeck/userChrome_css.txt ※UTF8形式でuserChrome.cssにリネームして保存して下さい ---------------------------------------- userContent.css 例 ---------------------------------------- http://coltpythonkingcobra.g1.xrea.com/pseudoTweetdeck/userContent_css.txt ※UTF8形式でuserContent.cssにリネームして保存して下さい ---------------------------------------- copyAllBrowser.bat (各インストール先にコピー) ※同じフォルダに下記のファイルおよびフォルダ config.js config-pref.js user.js Chrome\ userChrome.css userContent.css userChrome.js distribution\ policies.json が置いてある状態から各ブラウザに一気にインストールできます ※INST[n]とPROF[n]は実際のフォルダ名に書き換えて下さい ※定義数を増減したら MAXRWC= の値を変えます このバッチファイルはShift-JISで保存して下さい ---------------------------------------- @echo off cd /d %~dp0 rem //変数のforループ内遅延展開を有効にする setlocal ENABLEDELAYEDEXPANSION set MAXREC=6 rem //各更新チャネル別のインストール先フォルダ名 rem //(C:\Program Files\ の下のフォルダ名) rem //※このテキストの一番上で「Mozilla Firefox各リビジョン」としたところ set INST[0]=Mozilla Firefox ESR set INST[1]=Mozilla Firefox set INST[2]=Mozilla Firefox Beta set INST[3]=Mozilla Firefox Aurora set INST[4]=Mozilla Firefox Nightly set INST[5]=Waterfox set INST[6]=Floorp rem //各更新チャネル別のプロファイルのフォルダ名 rem //(C:\Users\USER_NAME\AppData\Roaming\ の下、aaa... bbb... で表現した乱数部は環境ごとに違う) rem //※このテキストの一番上で「各プロファイルフォルダ」としたところ set PROF[0]=Mozilla\Firefox\Profiles\aaaaaaaa.default-esr set PROF[1]=Mozilla\Firefox\Profiles\bbbbbbbb.default-release set PROF[2]=Mozilla\Firefox\Profiles\cccccccc.default-beta set PROF[3]=Mozilla\Firefox\Profiles\dddddddd.dev-edition-default set PROF[4]=Mozilla\Firefox\Profiles\eeeeeeee.default-nightly set PROF[5]=Waterfox\Profiles\ffffffff.default-release set PROF[6]=Floorp\Profiles\gggggggg.default-release rem //各プロファイルに設定をコピー rem //(途中のフォルダが無いとcopyはエラーになるがxcopy /iでは無ければ生成) for /L %%p in (0,1,%MAXREC%) do ( echo ----------------------------------- echo 【Copy to !INST[%%p]!】 copy /y "config.js" "%ProgramFiles%\!INST[%%p]!\" if !errorlevel! equ 0 ( copy /y "config-prefs.js" "%ProgramFiles%\!INST[%%p]!\defaults\pref\" copy /y "user.js" "%APPDATA%\!PROF[%%p]!\" xcopy /y /i "Chrome\userChrome.*" "%APPDATA%\!PROF[%%p]!\Chrome\" xcopy /y /i "Chrome\userContent.*" "%APPDATA%\!PROF[%%p]!\Chrome\" xcopy /y /i "distribution\policies.json" "%ProgramFiles%\!INST[%%p]!\distribution\" ) ) endlocal timeout /t 5