私的 Firefox拡張&カスタマイズめも

2021.4.1 移転しました...
  • このページの旧URLは
    • http://www10.plala.or.jp/palm84/fx_extension.html

はてなブックマーク

2011.05.14 未対応拡張をムリヤリ使うには 追記
最終更新日 2012.2.1

私的リンク集です。ちょこちょこ気まぐれに校正更新

Firefox 最新バージョン未対応拡張について

開発版が“一応”使えたり、対応バージョン書き換えの強制インストールで“一応”使えたりする場合も多いですが、“一応”使えるからといってもバグがないわけではないのでご注意。安全を期すには正式対応を待った方がよろしきかと。または代替を探しませう。

また、正式版でない実験版などは自動アップデートチェックがされないので手動で確認する必要があります。

※()内は安定版の対応Firefoxバージョン

ダウンロード 3

カスタマイズ版など

Tab Mix Plus 関連 4

Tab Mix Plus

Tab Mix Plus でできること
  • 新規タブの開き方の制御
  • タブの外観のカスタマイズ
  • マウス操作のカスタマイズ
  • タブの保護&ロック
  • タブバーの多段表示

他いろいろ。

Tab Mix Plus を使わない場合の代替策

タブをロック
最後のタブを閉じてもウィンドウは閉じない

※ デフォルト = true。ウィンドウを閉じなくするには false

  • user.js
// 最後のタブを閉じた時ウィンドウも閉じるか
user_pref("browser.tabs.closeWindowWithLastTab", false);
タブの閉じるボタンを非表示
  • user.js
// tabの閉じるボタンを非表示
user_pref("browser.tabs.closeButtons", 2);
タブのスクロールを禁止

※ 4.0 ではだめ?。

Tab Mix Plus ではタブ・バーの多段表示が可能。

  • user.js
// タブの横スクロール無効にする
user_pref("browser.tabs.tabMinWidth", 0);
タブを閉じた時、直前の選択タブへ移動

※ 新しいタブを背面で開いた場合は動作しない(初期設定)。

  • user.js
// タブを閉じた時、直前の選択タブへ移動
user_pref("browser.tabs.selectOwnerOnClose", true);

Firefox 3.5以降では browser.tabs.selectOwnerOnClose が true で且つそのタブが「新しいフォアグラウンドのタブ」として開かれた時にだけ「このタブの親はこのタブですよ」という情報が保持される。また、JavaScriptではwindow.openerでオープン元のウィンドウを辿ることができる。このアドオンは、これらの情報を手がかりにして「親のタブ」を検索するようになってる(ツリー型タブがあるならツリーの構造から親のタブを検出する)。

Latest topics - outsider reflex
新しいタブの開き方

こんなかんじかな?

  • 「貼り付けて移動」 - 初期設定では現在のタブ、前面で開くかな
  • URL入力後に Enter - 現在のタブ、前面で開く
  • URL入力後に移動ボタンを左クリック - 現在のタブ、前面で開く
  • URL入力後に移動ボタンを中クリック - (設定次第では)背面で開く

はぁー、Tab Mix Plus 入れる方がかなり楽かと。

リンクを中クリックで新しいタブをバックグラウンドで開く
  • user.js
// リンクを中クリックで新しいタブをバックグラウンドで開くか
user_pref("browser.tabs.loadInBackground", true);
ブックマークを中クリックで新しいタブをバックグラウンドで開く
  • user.js
// ブックマークを中クリックで新しいタブをバックグラウンドで開くか。 
user_pref("browser.tabs.loadBookmarksInBackground", true);
外部アプリから新しいタブをバックグラウンドで開く
  • user.js
// target="_blank" や外部アプリケーションから新しいタブをバックグラウンドで開くか。 
user_pref("browser.tabs.loadDivertedInBackground", true);
ロケーションバーでURL入力 Enter で新しいタブを開く
  • user.js
// ロケーションバーでURL入力 Enter で新しいタブを開くか
user_pref("browser.tabs.opentabfor.urlbar", true);
ロケーションバーから新しいタブを開く

Goボタンを中クリック

新規タブを現在のタブの隣に挿入するか

※ デフォルト = true。常に右にするには false

  • user.js
// 新規タブを現在のタブの隣に挿入するか
user_pref("browser.tabs.insertRelatedAfterCurrent", false);
検索バーから新しいタブを開く

※ 4.x ではだめ?

  • user.js
// 検索バーから新しいタブを開く
user_pref("browser.search.openintab", true);

ミニ拡張を使う手もありかな。

カスタマイズ 5

プロファイルフォルダの開き方 (Firefox 4)

【ヘルプ】【トラブルシューティング情報】【アプリケーション基本情報】「プロファイルディレクトリ」欄の「フォルダを開く」

ロケーションバーに about:support 入力でも。

user.js

about:config の設定をカスタマイズ

about:config での設定は pref.js に保存される。この設定を Firefox 起動時に user.js 上書きすることが可能。注意点は user.js はあくまで「上書き」なので user.js 側で設定消去しても pref.js 側は変更されないということ。設定変更ではなく設定「消去」するには about:config でリセットする(※ または pref.js 内の記述を直接消去)

文字コードは UTF-8NUTF-8 BOM無し)で プロファイル フォルダ直下に保存するべし

// windows_open でメニューバーを表示
user_pref("dom.disable_window_open_feature.menubar", true);
// クラッシュ時にセッション Cookie を復元するか
user_pref("browser.sessionstore.resume_from_crash", false);
// セッション Cookie を復元しない
user_pref("browser.sessionstore.privacy_level", 2);
// ブラウザ終了時に全Cookieを削除する
user_pref("network.cookie.enableForCurrentSessionOnly", true);

userChrome.css

Firefoxの外観を設定

文字コードは UTF-8NUTF-8 BOM無し)で プロファイル\chrome フォルダに保存するべし

@charset "utf-8";
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
/* 検索バーの右側に履歴を出すボタンを表示 */
#searchbar .autocomplete-history-dropmarker {
    display: -moz-box !important;
    -moz-binding: url("chrome://global/content/bindings/autocomplete.xml#history-dropmarker");}
/* リンクURL表示幅 */
statuspanel {
max-width: 100% !important;
}
/* URLバーのフォント */
#urlbar {
font-family: 'MS ゴシック' !important;
}
/* ブックマークツールバーのフォントサイズ */
#personal-bookmarks {
font-size : 95%;
} 
/* ブックマークツールバーにあるブックマークアイコンを消す */
toolbarbutton.bookmark-item > .toolbarbutton-icon {
 display: none;
}
不要な右クリックメニューを非表示に

Menu Editor 使う方が安全かも。

/*コンテキストメニューの不要項目を非表示に*/
#context-back, /* 戻る */
#context-forward, /* 進む */
#context-reload, /* 更新 */
#context-stop, /* 中止 */
#context-sep-stop,   /* 中止の下の区切り線 */
#context-bookmarkpage, /* このページをブックマーク */
#context-savepage, /* 名前を付けてページを保存 */
#context-sendpage, /* リンクを送信 */
#context-viewbgimage, /* 背景画像を表示 */
#context-openlink, /*リンクを新しいウィンドウで開く*/
#context-openlinkintab, /* リンクを新しいタブで開く */
#context-sep-open, /* リンクを新しいタブで開くの下の区切り線 */
#context-sendlink, /*リンクURLをメールで送信*/
#context-sendpage, /*ページを送信*/
#context-sendimage, /*画像をメールで送信*/
#context-bookmarklink, /* このリンクをブックマーク */
#context-sendlink, /* リンクURLをメールで送信 */
#context-viewimage, /* 画像を表示 */
#context-copyimage, /* 画像のURLをコピー */
#context-copyimage-contents, /* 画像をコピー */
#context-sep-copyimage, /* 画像のURLをコピーの下の区切り線 */
#context-sendimage, /* 画像をメールで送信 */
#context-setWallpaper, /* デスクトップの背景に設定 */
#context-blockimage, /* ****の画像を表示しない */
#context-sep-viewbgimage, /* ****の画像を表示しないの下の区切り線 */
#context-undo, /* 元に戻す */
#context-sep-undo, /* 元に戻すの下の区切り線 */
#context-cut, /* 切り取り */
#context-delete, /* 削除 */
#context-sep-paste /* 削除の下の区切り線 */
{
    display: none !important;
}

userContent.css

サイト毎のCSS設定

文字コードは UTF-8NUTF-8 BOM無し)で プロファイル\chrome フォルダに保存するべし

@charset "utf-8";

Google Reader

/* Google Reader に適用 (特定のURLで始まるページ)*/
@-moz-document url-prefix(https://www.google.com/reader/view/) {
body {
    font-size : 0.8em;
/*    font-family: 'VL Pゴシック','VL PGothic',sans-serif ! important;*/
}

p {
/*    font-family: 'VL Pゴシック','VL PGothic',sans-serif ! important;*/
}

pre {
    font-size:0.9em;
    padding:0.5em;
    background-color:#f1f1f1 !important;
    margin:1em;
    font-family:monospace;
    overflow: auto;
}

code {
    font-family:monospace;
    background-color:#f1f1f1 ! important;
}

blockquote {
    padding:0.5em;
    font-size:0.9em;
    border:2px ridge #009;
}

dt {
    text-decoration: underline ;
}

dd {
    margin-bottom: 1em;
}

h4 {
    font-size: 100%;
    border-bottom: 1px solid #ccc;
}

h5 {
    font-size: 100% ! important;
    border-left: 10px double #ccc;
    padding: 0 0.5em;
}
}

私的必須拡張 6

マウスジェスチャ

カスタマイズすればタブ動作などいろいろ設定可能。「右側のタブを閉じる」とか「タブの復元」「タブの複製」とかとか。

FireGestures

設定画面の【スクリプトを入手】表示ページのリンクを設定画面へドラッグ&ドロップでジェスチャの追加可能です。

All-in-One Gesture

以前はこっちが定番だったかな?

ツールバーにボタン追加

「Flash禁止」は大変便利。禁止にしていても Flash Player の画面をクリックすれば再生可能です。

JavaScript のオン・オフ / 信頼済みサイト設定

NoScript

2chビューア

Chaika

bbs2chreader の後継版

bbs2chreader のログの流用は無理みたいですが、URLは同じなのでブックマークについてはそのまま使えました。

http://127.0.0.1:8823/thread/http://

html作成支援

title要素とURLのコピー。li,a,blockquote要素作成など。

Make Link
  • 私的カスタマイズ - user.js
// Make Link format
user_pref("net.soylentred.makelink.order", "0,1,2,3,4,5,6,7,8,9");
user_pref("net.soylentred.makelink.types.0.format", "%text%\r\n%url%\r\n");
user_pref("net.soylentred.makelink.types.0.title", "URL + Title");
user_pref("net.soylentred.makelink.types.0.useentities", false);
user_pref("net.soylentred.makelink.types.1.format", "<li><a href=\"%url%\">%text%</a></li>\r\n");
user_pref("net.soylentred.makelink.types.1.title", "List (a href)");
user_pref("net.soylentred.makelink.types.1.useentities", false);
user_pref("net.soylentred.makelink.types.2.title", "a href");
user_pref("net.soylentred.makelink.types.2.useentities", false);
user_pref("net.soylentred.makelink.types.3.format", "<a href=\"%url%\">%text% - %title%</a>");
user_pref("net.soylentred.makelink.types.3.title", "a href (Select - Title)");
user_pref("net.soylentred.makelink.types.3.useentities", false);
user_pref("net.soylentred.makelink.types.4.format", "%title%\r\n%text%\r\n%url%\r\n");
user_pref("net.soylentred.makelink.types.4.title", "Title + Select + URL");
user_pref("net.soylentred.makelink.types.4.useentities", false);
user_pref("net.soylentred.makelink.types.5.format", "<blockquote cite=\"%url%\" title=\"%title%\">\r\n<p>%text%</p>\r\n</blockquote>\r\n");
user_pref("net.soylentred.makelink.types.5.title", "blockquote (Hetena)");
user_pref("net.soylentred.makelink.types.5.useentities", false);
user_pref("net.soylentred.makelink.types.6.format", "<div class=\"quote small\">\r\n<blockquote cite=\"%url%\" title=\"%title%\">\r\n<p>%text%</p>\r\n</blockquote>\r\n<cite><a href=\"%url%\">%title%</a></cite>\r\n</div>\r\n");
user_pref("net.soylentred.makelink.types.6.title", "div blockquote");
user_pref("net.soylentred.makelink.types.6.useentities", false);
user_pref("net.soylentred.makelink.types.7.format", "twitter:%url%:detail\r\n");
user_pref("net.soylentred.makelink.types.7.title", "Twitter hatena diary");
user_pref("net.soylentred.makelink.types.7.useentities", false);
user_pref("net.soylentred.makelink.types.8.format", "\"%text%\"");
user_pref("net.soylentred.makelink.types.8.title", "Search");
user_pref("net.soylentred.makelink.types.8.useentities", false);
user_pref("net.soylentred.makelink.types.9.format", "<blockquote cite=\"%url%\" title=\"%title%\">\r\n<pre class=\"kuma\">\r\n%text_n%\r\n</pre>\r\n</blockquote>\r\n");
user_pref("net.soylentred.makelink.types.9.title", "blockquote AA");
user_pref("net.soylentred.makelink.types.9.useentities", false);
Copy URL +(※ 2.0 以降非対応)
  • Copy URL +(※ 2.0非対応 開発停止?)

開発停止してますが、バージョンチェックごまかしてごにょごにょすれば使えるみたいです。

【追記】リメイク版が出てます
  • 私的 user.js
// CopyURL+ a href(タイトル)
user_pref("copyurlplus.menus.1.label", "a href(title)");
user_pref("copyurlplus.menus.1.copy", '<a href="%URL%">%TITLE%</a>');
// CopyURL+ a href(選択+タイトル)
user_pref("copyurlplus.menus.2.label", "a href(Sel+TITLE)");
user_pref("copyurlplus.menus.2.copy", '<a href="%URL%">%SEL% - %TITLE%</a>');
// CopyURL+ li a href
user_pref("copyurlplus.menus.3.label", "List (a href)");
user_pref("copyurlplus.menus.3.copy", '<li><a href="%URL%">%TITLE%</a></li>%EOL%');
// CopyURL+ blockquote(hatena)
user_pref("copyurlplus.menus.4.label", "blockquote(hatena)");
user_pref("copyurlplus.menus.4.copy", '<blockquote cite="%URL%" title="%TITLE%">%EOL%<p>%SEL%</p>%EOL%</blockquote>%EOL%');
// CopyURL+ div.quote + blockquote
user_pref("copyurlplus.menus.5.label", "blockquote");
user_pref("copyurlplus.menus.5.copy", '<div class="quote">%EOL%<blockquote cite="%URL%" title="%TITLE%">%EOL%<p>%SEL%</p>%EOL%</blockquote>%EOL%<cite><a href="%URL%">%TITLE%</a></cite>%EOL%</div>%EOL%');
// CopyURL+ view-source(選択)
user_pref("copyurlplus.menus.6.label", "view-source(SEL)");
user_pref("copyurlplus.menus.6.copy", 'view-source:%SEL%');
// CopyURL+ view-source(RLINK)
user_pref("copyurlplus.menus.7.label", "view-source(RLINK)");
user_pref("copyurlplus.menus.7.copy", 'view-source:%RLINK%');
// CopyURL+ Search
user_pref("copyurlplus.menus.8.label", "Search");
user_pref("copyurlplus.menus.8.copy", '"%SEL%"');
// CopyURL+ Twitter_Hatena_Di
user_pref("copyurlplus.menus.9.label", "Twitter_Hatena_Di");
user_pref("copyurlplus.menus.9.copy", 'twitter:%URL%:detail%EOL%');
My CopyFixer

Ctrl-c でURLなどをコピー。設定の書き換えも簡単なので連続コピーしたい場合など便利。

ソースの表示 / 他のブラウザで表示

Launchy

テキストエディタなど複数登録できるので便利

※ 文字コードはUTF-8(N)で保存します。

  • launchy.xml (プロファイル\chrome に保存)
<?xml version="1.0" encoding="UTF-8"?>
<configurations xmlns="http://launchy.mozdev.org/configurations">
	<application>
		<label>Opera</label>
		<type>1</type>
		<command>%ProgramFiles%\Opera\Opera.exe</command>
		<arguments></arguments>
	</application>
	<application>
		<label>Safari</label>
		<type>1</type>
		<command>%ProgramFiles%\Safari\Safari.exe</command>
		<arguments></arguments>
	</application>
	<application>
		<label>Sleipnir</label>
		<type>1</type>
		<command>%ProgramFiles%\Fenrir &#038; Co\Sleipnir\bin\Sleipnir.exe</command>
		<arguments></arguments>
	</application>
	<application>
		<label>unDonut</label>
		<type>1</type>
		<command>D:\etc\unDonut\unDonut\unDonut.exe</command>
		<arguments></arguments>
	</application>
	<application>
		<label>EdTex</label>
		<type>7</type>
		<command>%ProgramFiles%\EdTex\edtex.exe</command>
		<arguments></arguments>
	</application>
	<application>
		<label>Hidemaru</label>
		<type>7</type>
		<command>%ProgramFiles%\Hidemaru\Hidemaru.exe</command>
		<arguments></arguments>
	</application>
</configurations>

【追記】下記ページにて自動記述してくれますね。

メニューのカスタマイズ

Menu Editor

コンテキストメニューのカスタマイズ。使わないメニュー項目を非表示に

リンク(URL)をコピーしてジャンプ

pastego

貼り付けて新しいタブで開く。検索バー用アイコンもあり。

開発停止かな?古いやつ

サイドバーで翻訳

Search Station (検索ステーション)

※ なくなったかな?

メニューをコンパクト表示

4.0 以降では不要かな?これではなくFirefox 4 UI Fixerでメニューボタンを移動させる方がいいかも。

メニューバーをコンパクト表示にして検索バーやボタンを配置。

Compact Menu 2

ブックマークサイドバー

ブックマークサイドバーで選択していないフォルダを自動的に閉じる。

Autoclose Bookmark & History Folders

その他

McAfee SiteAdvisor

危険URLのチェック

Status Buttons

※ 4.0 では不要ですね。

ステータスバーにボタンを配置。3.0には対応するかな?したみたい?

開発停止? 7

代替手段を考える

Sage

GoogleリーダーなどWebベースのものに変更したので今は使ってませぬが。

ResizeSearchBox(※2.0非対応)

3.0では要らないかな。

その他便利な拡張 8

PDF Download

Adobe Reader の脆弱性を利用し、いきなりPDFファイルを開かせる受動的攻撃が出回ってるのでこれ入れといた方が安心かも。予期せずに画面が表示された場合はキャンセルしませう。

All-in-One Sidebar

Status ButtonsとBXの代替になる?

Live HTTP Headers
ViewSourceWith

表示中ページのソース・CSS・jsなどを指定エディタで開く

prefbar

設定ボタンのバーを表示

Pref Buttons(※2.0非対応)

設定ボタン表示

Open Profile Folder

Nightly Tester Toolsにもあるけど。

IE View

表示中ページをIEで開く

FirefoxView

IEからFirefoxを開く

Dr.Web anti-virus link checker

リンク先を右クリックからウイルススキャン

参考リンク 9

未整理

4.0 カスタマイズ
HTML/CSS関連

ブックマークレット

JavaScriptわかってないので内容未保証です...

body要素に適用なのでCSSで指定されてる要素には効きません。

未対応拡張をムリヤリ使うには

※ あくまで「ムリヤリ有効化」なのでまともに動作する保証はないので注意して実行するべし。

Firefox 側で対応バージョンを無効にする方法と、拡張自身のファイルの対応バージョンを書き換える方法の2種類があります。

Firefox 側で対応

手動設定するか、拡張機能を利用するか?

拡張を利用する

下記拡張にて非対応拡張が使えました。やってることは下記の about:config での設定同様、Firefox 側の設定変更(チェック無効化設定追加)してる様です。

下記2点の拡張が有名ですが、前者はウチの環境ではだめ、後者は 4.0 未対応です。

about:config (user.js) で設定変更

拡張の対応バージョンチェックを無効にします。アドオンマネージャにて警告が常に表示されます。

  1. about:config 画面を開く
  2. 右クリックで新規作成 真偽値 下記設定名 false
extensions.checkCompatibility.4.0

※ Firefox 4.0.x の場合です。

  • user.js なら
user_pref("extensions.checkCompatibility.4.0", false);

拡張自身のファイルを編集

install.rdf を編集します。

Firefox 4.0.x にインストールする場合は、下記を 4.1 などとします。

<em:maxVersion>4.1</em:maxVersion>
インストール済でファイルが展開されている場合

プロファイル\extensions 以下に対象拡張の install.rdf がある場合はそのファイルを直接編集。ない場合・うまく行かない場合は次の手段で。

xpi ファイルを再作成
  1. 拡張子を zip に変更(※ 解凍ソフトで直接展開でもおk)
  2. すべて展開
  3. install.rdf を編集
  4. 展開ファイルをすべて選択して【送る】【圧縮 (zip 形式) フォルダ】
  5. 作成されたファイルの拡張子を xpi に変更(念の為ファイル名も元に戻した方がいいかな)
  6. Firefox 画面にドラッグ&ドロップしてインストール
Written by yassy