Firefox高速化のために、アドオンの代替としてuserchrome.jsを導入してみました。
今までは複数タブを開いたとき反応が鈍くなることが多かったのですが、いくつかのアドオンを代替してみたところ、動作が軽くなりました。
ということで今使っている環境が吹っ飛んだときに備えて、導入したアドオン・ユーザスクリプト等をメモがてらここに書いておきます。
カスタマイズしすぎると、共用PC等で素のブラウザを使うときに不自由を感じたり、設定が吹っ飛んだときに再構築時に手間がかかるので、できるだけ素のFirefoxを保ちながら、ちょっとした使い勝手を高めることをコンセプトにしています。
なお特に明記されているもの以外は、日本語化されています。
※2017年11月19日追記
Firefox57 Quantumでの内部仕様の大幅な変更にともない、現在はここに書いたアドオン・ユーザースクリプト・userContent.css・userChrome.cssの大半使用できなくなってしまいました。
※2018年4月30日追記
Firefox57 Quantumに対応した、「Firefox Quantumでのアドオン・userChrome.css・users.js晒し」という記事を公開しました。
テーマ
- Classic Compact
- メニューバー・タブ等の高さを狭くして、コンテンツエリア(ウェブサイトを表示する部分)を広くとる。別配布のアドオンも使うと、もっとコンパクトになる。
アドオン
- Download Statusbar
- ダウンロードマネージャの表示を変更。進捗状況をステータスバーに表示&ウィルススキャンを行うために導入。
- FxIF
- 写真のExif情報を見る。
- InfoLister
- アドオン・テーマ・プラグインの一覧表を生成する。使うときだけ有効にする。
- Live HTTP headers
- HTTPの応答ヘッダを見る。使うときだけ有効にする。
- Mozilla Archive Format(英語版のみ)
- ウェブページをmht・maf形式で保存・閲覧。IEのmht形式のファイルを見るために導入。
- Nightly Tester Tools
- 旧バージョンのFirefoxにしか対応していないアドオン・テーマを、無理やり使用できるようにする。Firefoxのバージョンアップ時、アドオンの対応が間に合わないときに有効にする。
- Pearl Crescent Page Saver Basic
- ウェブサイトのスクリーンショットを撮る。同様のアドオンと比べ、画面外やFLASHも撮れるので導入。
- Popup ALT Attribute
- 画像にマウスカーソルを乗せたとき、ALT属性をポップアップ表示する。使うときだけ有効にする。
- Save File to
- 画像・リンク先等を任意のフォルダに保存。同様のアドオン・ユーザースクリプトと比べて、階層メニューを採用しており、保存先の追加が容易なので導入。
- SQLite Optimizer
- Firefox3内部のデータベースのインデックスを再構築し、動作を高速化。気休め程度に導入。
※ 愛用しているフリーソフト「CCleaner」に同じ機能が搭載されたため、使用を中止しました。
- Tab Mix Lite CE(日本語版)
- タブ関連の機能を拡張。Tab Mix Liteの機能縮小版。Tab Mix Plus・Tab Mix Liteだと私の環境では不具合が出るので、出ないものを導入。
- userChromeJS
- ユーザスクリプトで、ブラウザの機能を拡張。一部アドオンの機能代替のために導入。
- Web Developer
- ウェブページの開発・デバッグツール。お手軽にウィンドウサイズを変更したり、酷く崩れて表示されるサイトを閲覧するときに使う。
- Xmarks BYOS Edition
- ブックマーク・パスワードを自サーバに保存・同期させる。Xmarks(旧Foxmarks)から、専用サーバへのアップロード機能を省いた機能縮小版。Xmarksのアカウントは不要。Bookmark Synchronizerの置き換えとして導入。
- セッションマネージャ
- タブ・ウィンドウのセッション管理機能を拡張。クラッシュ・誤ってブラウザを終了・起動失敗のときに、前回・前々回のウィンドウ状態に復帰させるために導入。
ユーザースクリプト
- userChrome.js、rebuild_userChrome.uc.xul(aliceさん制作の、19番のもの)
- サブスクリプトローダー。同様のものと比べて、ブラウザから個別のユーザースクリプトの入・切が出来るので導入。
- restart.uc.js
- ファイルメニューに[再起動]を追加。
- context-encoding-menu.uc.js
- コンテキストメニューに[文字エンコーディング]を追加。
- CopyUrlLitePlus.uc.js
- 閲覧中のページのリンクタグ等を作る。アドオンのCopy URL+、Make Linkの置き換え。
- adblock#.uc.js
- 広告等を
CSSで非表示にする。2ちゃんねる ソフトウェア板の「Firefox userChrome.js greasemonkeyスクリプトスレ」「【CSS】Mozilla広告ブロック Part5かな【Adblock】」上で公開。 - UserAgentSwitcherLite.uc.js
- ユーザエージェントを切り替える。IE限定のサイトを無理やり見るために導入。アドオンのUserAgentSwitcherの置き換え。
- ieviewModoki2.uc.xul(57番のもの)
- 特定のウェブサイトのみをInternet Explorerで開く。IE View Liteの置き換え。
userContent.css
- userContent.cssで特定リンクのマウスカーソルを変化させる
- リンクにマウスカーソルを乗せると、リンク先のスキーム・拡張子に応じてマウスカーソルの右下にアイコンが表示される。アドオンLink Alertの置き換え。拡張子を追加し、関連付けアイコンも表示できるように改良して使用。
- CSS - ルビ再び
- 未実装のルビを実装する。複雑ルビは崩れるが、そもそもIEですら複雑ルビに未対応なので、特に問題にならないはず。アドオンHTML Ruby、XHTMLルビサポートの置き換え。独自に調整を加えて使用。
userChrome.css
気にする必要のない所ばかりをいじっています。
- ステータスバーの文字を太字にする。
#status-bar {
font-weight: bold !important;
}- コンテキストメニューの誤操作しやすい・邪魔な項目を非表示にする。
/* コンテキストメニューの「戻る」「進む」「このページをブックマーク...」「リンクのURLをメールで送信...」「このリンクをブックマーク...」「リンクのURLをメールで送信...」「背景画像を表示」「画像のURLをメールで送信...」「デスクトップの背景に設定」「〜の画像を表示しない」を非表示に */
#context-back,
#context-forward,
#context-bookmarkpage,
#context-sendpage,
#context-bookmarklink,
#context-sendlink,
#context-viewbgimage,
#context-sendimage,
#context-setDesktopBackground,
#context-blockimage {
display: none !important;
}- ロケーションバーを固定幅フォントにする
#urlbar {
font-family: monospace !important;
}- タブの角の丸みを自分好みにする
.tabbrowser-tab,
.tabs-newtab-button {
-moz-border-radius-topleft: 4px !important;
-moz-border-radius-topright: 4px !important;
}- 各々のタブに「閉じる」ボタンをつける
- 右端のタブの隣の「新しいタブを開く」ボタンを非表示にする
オマケに、ブックマークレットも晒しておきます。
ブックマークレット
これらの他にもいくつか入れてますが、用途が特殊なので割愛します。
- 最終更新日の確認
- そのページがいつ作成されたのかを、手軽に知るために使用。動的に生成されるページの場合は、そのページに表示されている画像ファイルに対して実行するとよい。
javascript:window.alert(document.lastModified); - 画面を黒くする
- 動画配信サイトで視聴する際、サイトの背景が白くて気になるときに使用。出典は失念。
javascript:(function(){var%20newSS,%20styles='*%20{%20background:%20black%20!%20important;%20color:%20grey%20!important%20}%20:link,%20:link%20*%20{%20color:%20#0000EE%20!important%20}%20:visited,%20:visited%20*%20{%20color:%20#551A8B%20!important%20}';%20if(document.createStyleSheet)%20{%20document.createStyleSheet("javascript:'"+styles+"'");%20}%20else%20{%20newSS=document.createElement('link');%20newSS.rel='stylesheet';%20newSS.href='data:text/css,'+escape(styles);%20document.getElementsByTagName("head")[0].appendChild(newSS);%20}%20})(); - ニコニコ動画を、はてなブックマークで見る
- アカウントを持っていない人に動画を紹介する際に使用。
javascript:window.location='http://b.hatena.ne.jp/entry/'+escape(location.href); - Standard bit.ly Bookmarklet
- bit.lyで短縮URLを作成。
- GoogleReaderに追加
- はてなブックマークに追加
- はてなアンテナに追加
(初出:はてなダイアリー「Tech² memo」)