肉とビールとパンケーキ by @sotarok

少し大人になった「肉とご飯と甘いもの」

検索バーの検索エンジンを追加する(ex. はてな人力検索)


ところで,ここにあるxmlファイルですが,ものすごく簡単に記述されているので,ほかの検索エンジンも,xmlファイルを記述するだけで簡単に追加できます.*1
とはいえ,有名な検索エンジンや諸々の検索は http://www.mozilla-japan.org/addons/firefox/search-engines/ に,おいてあるので,こちらから追加できます.

じゃあここにない検索を追加したい場合は,適当にxml書いてみよう〜ということで…はてな人力検索Firefoxの検索バーに追加します.ためしに.w


C:\Program Files\Mozilla Firefox\searchplugins\hatena-q.xml を作成.

<?xml version="1.0" encoding="UTF-8"?>
<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
<ShortName>はてな人力検索</ShortName>
<Description>はてな人力検索h</Description>
<InputEncoding>UTF-8</InputEncoding>
<Image width="16" height="16">data:image/x-icon;base64,AAABAAEAEBAAAAEACABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAAAAAAAAADOQRgA+KSGAOeahABaJBAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQUFBQUFBQUFBQUFBQUFBQUAAwMDAwMDAwMDAwMDAwUFAgAAAAAAAAAAAAAAAAMFBQIAAAAAAAAAAAAAAAADBQUCAAAAAAEBAQEBAQAAAwUFAgAAAAEBAAEBAQAAAAMFBQIAAAEBAAEBAAEBAAADBQUCAAABAQAAAAABAQAAAwUFAgAAAQEAAAAAAQEAAAMFBQIAAAEBAAAAAAEBAAADBQUCAAAAAQEAAAEBAAAAAwUFAgAAAAABAQEBAAAAAAMFBQIAAAAAAAAAAAAAAAADBQUCAAAAAAAAAAAAAAAAAwUFAgICAgICAgICAgICAgAFBQUFBQUFBQUFBQUFBQUFBf//AACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAP//AAA=</Image>
<Url type="text/html" method="GET" template="http://q.hatena.ne.jp/list">
  <Param name="word" value="{searchTerms}"/>
</Url>
<SearchForm>http://www.google.co.jp/firefox</SearchForm>
</SearchPlugin>

これで完成です.まあ簡単に説明すると,

  • おやくそく
<?xml version="1.0" encoding="UTF-8"?>
<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
  • 検索エンジン名とか
<ShortName>はてな人力検索</ShortName>
<Description>はてな人力検索h</Description>
<InputEncoding>UTF-8</InputEncoding>
  • アイコン
<Image width="16" height="16">data:image/x-icon;base64,(略)</Image>

アイコンですが,16x16のアイコンファイルをbase64エンコードした文字列を記述します.iconファイルのエンコーディングは http://www.motobit.com/util/base64-decoder-encoder.asp でやりました.

  • URLとパラメータ
<Url type="text/html" method="GET" template="http://q.hatena.ne.jp/list">
  <Param name="word" value="{searchTerms}"/>
</Url>

ここが一番重要です.ここには,アクセスした検索エンジンのURLとパラメータを記述します.はてなの場合は,検索をすると,「http://q.hatena.ne.jp/list」というURLに,「?word=firefox」といったカンジで検索語がつくので,上記のように,Paramタグで記述します.

  • 最後のおきまり
<SearchForm>http://www.google.co.jp/firefox</SearchForm>
</SearchPlugin>

といったカンジでxmlファイルを作成してFirefoxを再起動すると,その検索エンジンを検索バーに追加することができます.


...とまあ,ここまで書いて気づいたのですが,Firefoxはそのページにある検索窓を自動的に認識して,「”人力検索はてな”を追加」などと出してくれるようです.(図参照)




ちょ,ここまで書いたのにw

でも,いろいろ見てたら,この「追加」が出ない場合もあるっぽいので,そういう検索窓を追加したいときには是非xmlファイル記述を(笑)

*1:まぁそれが簡単と呼べるかは別として