annotate googleがgoogle.co.jpでも使えるようにする
http://ash1no0to.dyndns.org/htdocs/archives/2005/05/greasemonkey_1.htmlで,Firefoxで今一番熱い拡張機能であるgreasemonkeyの解説がでています。greasemonkeyは,ウェブサイトを動的に書き換える機能を提供する拡張機能で,ユーザがJavaScriptでgreasemonkey用のスクリプトを書くことができます(これをUserScriptと呼んでます)。
ueBLOGでは,googleの検索結果に以下の機能を追加するannotate googleというUserScriptが紹介されています。
- サイトにRSS(またはAtom)があるとき,アイコンとリンクを表示する
- 検索ページがdel.icio.usに登録されている場合,そのリンクを表示する
- 検索ページがdel.icio.usに登録されている場合,タグの一覧を表示する
この画像を見ると雰囲気が分かります。
この画像はhttp://radar.oreilly.com/archives/2005/05/google_has_deli.htmlからのものですが,Oreilly Radarの中の人は,自分でインストールしたこの機能を忘れて"googleがdel.icio.usへのリンクを実装した"と思い込んじゃったみたいですね。まあgreasemonkeyを使っているとどこが書き換えられた(あるいは消去された)部分か分かりませんから,「自分の見ているサイトはいったい何か」という疑問に直面したりします。
で,残念なことにこのスクリプトはgoogle.comにしか対応していない。悔しいのでgoogle.co.jpで動作するようにしてみました。
- ueBLOGの記事を参考にしてgreasmonkeyとannotate googleをインストールする
- このとき"Included Pages"に「http://google.co.jp/*」「http://www.google.co.jp/*」を追加しておく
- 「ツール」メニューの「Manage User Script..」を選択
- "annotate google"を選択して,「Edit」ボタンを押す
- 拡張子.jsに関連づけたエディタが起動する(関連づけていないと親切な警告ダイアログがでます)
- スクリプトの一番下の方にある以下の行を修正する
if (node.text && node.text.substr(0, 14) == 'Google Search:') { isSERP = 1; break; }
if (node.text && node.text.indexOf('Google ')==0) { isSERP = 1; break; }
- 保存しておしまい
ここは表示中のページが本当にgoogleの検索結果なのかどうかをチェックするページなので,本当はこんなにチェックを緩くするといけないのかもしれませんが,とりあえずこれで動作します。