2006-10-31

Firefoxの新しいSearchPlugin(検索プラグイン)

Firefoxが2.0になったので、今まで使ってた検索プラグインを入れてみようと、いつものようにインストールフォルダを開いてみると、あれれ?xmlファイルしかないよ?
画像ファイルはどこさ。

で、ためしにテキストエディタで開いてみると、
<?xml version="1.0" encoding="UTF-8"?>
<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
<ShortName>Google</ShortName>
<Description>Google Search</Description>
<InputEncoding>UTF-8</InputEncoding>
<Image width="16" height="16">data:image/x-icon;base64,R0lGODlhEAAQAPfLAAATVikwdA8SnxUfgAsWpAAilholjxw4jBc7kwAlvQQ2sRMsoBUqqhMzuhY/vxw4tSgmiyM1mSUztiQ6sTE3sQ4qyxMxxRoyxiAuxR1CtBxJsBxasSJuuTFguBte0Rlf2xVc9h9W9xVjzxVr0gdj6BRh4R1o5yBcyiZbyydT1i9b2Ddb1iFY6CJg2Vpor1dzvEJu20Z0yi23QDy1REi2OUy0O1WzOVC4PU+tVUe5Sk2xQU2zRUO4UE21Ula2SmKEqWWF2HyPx2+a6X6e6Xqk1m+s78sUDs4UGdEQB9YfDdwaANEfHd0YEscjAM4mAM0qANIoD9IkGdslGswuItYgL4aP0ImP2YGZ36Opzaq2wq/S+rzX/7/e8MrS1MLO/sTb48rT8snX/83c89PZ+crq+cH1/9Dl/9Ln/93r/9fy/+Hf7P/42eDm/O7u/+T29uX2/eT2/+f4/+f5/+j/9u//8+3/9u7/9ur5/+j//+n//+v//u3//+7//e7//+////b66/T/6vX/6/f/7f/07fj/4fv/4Pj/5v/45v7/4/r+7/3/6fDw+Pfx//D/9/X/8fT/8/f/8ff/8/D///H///L8/fL///P///X7//b6/ff/+/T///b9//f///v19//w9v/09P/29v/x+f/y///z///1+v/1///2///3//j79P/58/z/8/z99/z/9v7/9P7/9vn7//v6//j9//n9//j///n///v//vv////4+v/5+//6+P/4///6/P/6/v/6///7///9+P/8+v/9+v7/+Pz////8/f/9/f79///8///9//7//////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAMsALAAAAAAQABAAAAj/AEn4oIFjBw8bOnrMuJGjhowZM1T8UdYJUZ5ZcNRYWjSrVK5QU0DMmtUnzRAXEy4o6FCEy6NDTkQIq1MmRgM0eZTlCXMgQJtRSE4gmgUkwh1EiZTNUiamy6NUUExcuoJgDCdDjQg9KgVL2SNFT1hwEvKglLBWuixZ+jSrlSBdRlL04bBBkTBdpZTpIqWsFaBcTEr0QaEhl6dWlswKW6poDRUPlmAUQKWMkTJLc76QMQNGUZMWgIgkCFJnlq5WXigwkFClVZQQyuRgELAlk7JBymCZGYAF0ZEPrQixgUDAihxVdPpoAZAFUZIRfThxgvPCwAILDipk+OFG2ZIVoxApERtPfvwlvZ+kQFzPvv0MJQEBADs=</Image>
<Url type="application/x-suggestions+json" method="GET" template="http://suggestqueries.google.com/complete/search?output=firefox&client=firefox&hl=ja&qu={searchTerms}"/><!-- suggestqueries.google.co.jp is not exist and suggestqueries.google.com can treat Japanese too -->
<Url type="text/html" method="GET" template="http://www.google.co.jp/search">
<Param name="q" value="{searchTerms}"/>
<Param name="lr" value="lang_ja"/>
<!-- <Param name="num" value="100"/> -->
<Param name="ie" value="utf-8"/>
<Param name="oe" value="utf-8"/>
<!-- Dynamic parameters -->
<Param name="rls" value="{moz:distributionID}:{moz:locale}:{moz:official}"/>
<!-- <Param name="hl" value="ja"/> -->
<MozParam name="client" condition="defaultEngine" trueValue="firefox-a" falseValue="firefox"/>
</Url>
<SearchForm>http://www.google.co.jp/firefox</SearchForm>
</SearchPlugin>

ほほうなるほど、画像もbase64エンコードで埋め込みなわけですな。
こういうのを「dataスキーム」というらしいです。

自分で検索プラグインを作成したい場合、画像の変換はここのサイトが便利ですよ。

[JavaScript] dataスキームURI生成(画像データのBase64変換)

もし、サイトには上がってないローカルの画像をbase64にエンコードしたい場合は、メールの下書きを利用するのが一番手っ取り早いです。
メールに画像を添付して、下書き保存します。
後はメールのソースをコピペすれば完了。なかなかお手軽です。

suggestの仕組みも見えます。
「application/x-suggestions+json」で指定してる!
ふううんふううん。

[その他の参考サイト]

Creating OpenSearch plugins for Firefox - MDC (日本語)
※「検索バーの管理」の「検索エンジンの追加」をクリックしたらここに飛ぶといいのにね...
まあ検索プラグインを作ろうって言う人はそれくらいすぐ見つかるかな。

Creating OpenSearch plugins for Firefox - MDC(英語)

searchplugins.net - search plugins for ie7 and firefox2 - Search Plugin List(自作Pluginの公開サイト)

Specifications/OpenSearch - OpenSearch

ひとりごと:
Search Engines ってなってるけど Search Plugin とはもう言わないのかな...

14:04 追記:
コードの貼り付け失敗してました(-_-;)
修正しました。
コメントを投稿