hatebu IncSearch - はてなブックマークをインクリメンタルサーチ(Bookmarklet版)

【お知らせ】
Firefox の 拡張(アドオン)版 を作りました。Firefoxの拡張版の方が、数倍良いものとなっておりますので、Firefoxを使ってらっしゃる方は、ぜひ下記をお使いください。


はてなブックマークのサイト上で、所定のブックマークレットを起動することにより、表示しているユーザの全ブックマークをインクリメンタルサーチ出来るUIを生成します。

del.icio.us IncSearchをもとに、はてなブックマークに対応するよう作り直しました。

del.icio.usだと、認証が必要&自分のブックマークのみ取得可能でしたが、はてなブックマークでは、他のユーザのブックマークを取得可能(認証不要)なので、他人のブックマーク一覧をインクリメンタルサーチすることも可能です。

 

Greasemonkey版を作りましたので、Greasemonkey使える方は、下記からどうぞ。はてなブックマークのサイトを一旦開く…といった手順が不要になるので、こっちの方がさらに使い勝手が良いと思います。

使い方

  1. 下記のブックマークレットをブラウザのブックマークに登録します。
  2. はてなブックマークの各ユーザ毎のサイトを表示します。(http://b.hatena.ne.jp/ユーザID 配下ならどこでもOK)
  3. 登録したブックマークレットを実行します。
    該当ユーザの全ブックマークの読み込みが行われ、インクリメンタルサーチを行うためのUIが描画されます。
    テキストボックスに文字を入力(スペース区切りで複数語入力可能)することにより、一致するブックマークを表示します。

動作確認ブラウザ

下記のブラウザで動作確認を実施しています。

  • IE 6.0
  • FireFox 1.5
  • Opera 8.5

Safariについては、確認出来ていない(Macが無い)だけです。(動かないはずは無いと思ってます…)

はてなブックマークへの対応方法

はてなブックマークでは、del.icio.usのような、全ブックマークを一括取得できるAPIがありません。

そのかわり、20件ごとにページを指定して過去のブックマークをAtomフィードとして取得できるAPIがありますので、prototype.jsのAjax.Request使ってそのAPIからAtomフィードを取得しXMLを解析、、というのを繰り返し全ページ分実行し、全ブックマークを取得するようにしました。

ブックマークの件数が増えると、それに応じてAPIの呼び出し回数が増え、取得処理にかかる時間が大きくなってしまいます。

そこで、ユーザに進行状況がわかるように、取得済みの件数を表示するようにしました。

変更履歴

  • 2006/03/26
    初回公開
  • 2006/05/08
    20件を超えた場合、複数ページにて表示するよう変更しました。(前ページ、次ページに遷移可)
  • 2006/05/15
    ホットキー(CTRL+カーソルキーの左右)で、ページ遷移するようにしました。

その他

コメント等は、下記でお願いします。