(追記)del.icio.us bookrollも作りました
JavaScriptでblogウィジェットを作ってみた。
以前Flashで作って重すぎたので、JavaScriptでリベンジ。
小さい本棚です。はてなブックマークでNowReadingタグの付いてる本を表示しています。同時に何冊も読むので、ぐるぐる回るようにしてみた。
一応Firefox1.5とIE6で動くのを確認しました。
このblogのメインページの右側にも張り付いてます
(学校のサーバがエラー出すのでトラックバックできない。移転しようかな)
いま作ってます。 – ライブブックマークを使って、はてブとブラウザを一体化させる
簡単にまとめると
Firefoxのライブブックマーク(RSSを読み込めるブックマーク)を使って、はてなブックマークの特定のタグをツールバーに読み込むとかなり便利に使える
という技がわかりやすく説明されている。
これに、
CMS researcher – Greasemonkey: W!ボタンで快適はてなブックマーク生活
というGreasemonkeyを組み合わせると、さらに便利。
はてブのエントリの左側にW!ボタンがでて、これを押すと「workspace」というタグに入れたり出したりできる。
俺は何か作業する時に、まず参考資料をこのタグでまとめている。
で、今俺のFirefoxのツールバーはこんな感じ。
?B → 最近ブックマークしたページ
!W → ワークスペース
あとで → 「あとでやる」「あとで書く」「あとで読む」タグをまとめたRSS
「あとで」は、こういうCGIを適当なサーバに置いて、はてなのRSSを合体させて読み込んでる。
画面が小さくて、ブックマークツールバーがあまり広くないので。
atode.cgi
#!/usr/bin/perl-w
usestrict;
useCGI;
useCGI::Carpqw(fatalsToBrowser);
my$cgi=newCGI;
useXML::FeedPP;
my$feed;
$feed=XML::FeedPP::RDF->new();
#feedsを何個でも混ぜれる
$feed->merge(“http://b.hatena.ne.jp/shokai/rss?tag=%e3%81%82%e3%81%a8%e3%81%a7%e3%82%84%e3%82%8b”);
$feed->merge(“http://b.hatena.ne.jp/shokai/rss?tag=%e3%81%82%e3%81%a8%e3%81%a7%e6%9b%b8%e3%81%8f”);
$feed->merge(“http://b.hatena.ne.jp/shokai/rss?tag=%e3%81%82%e3%81%a8%e3%81%a7%e8%aa%ad%e3%82%80”);
print$cgi->header(-type=>”application/xml”);
print$feed->to_string(“UTF-8”);
RSS・Atomを何個でも混ぜられる。
使い方は、XML::FeedPPとXML::TreePPをCPANからインストールするか、XML/FeedPP.pmとXML/TreePP.pmを同じフォルダに入れれば多分動くはず
俺が使ってるGreasemonkeyのuserScriptで、AmazonのURL変更に対応してないのがあったので直した。
Greasemonkeyを使うと、Amazonの検索結果のページから他の書店・図書館へ検索出来るようになる。
Amazonから慶應大学メディアセンターへリレー検索
→ 修正版
直したのはここだけ。
varindex=href.indexOf(‘product’);
varasin=href.substring(index+8,index+18);
ASIN(Amazon内のISBNみたいな奴)をパースする部分だけ直した。
最近AmazonのURLが変わって、Amazletのbookmarkletが動かなくなったので直した。
これをjavascript:var%20afid=’shokai-22′;var%20u=document.location.href;javascript:var%20ai=u.indexOf(‘ASIN’);var%20asin=u.substring(ai+5,ai+15);void(window.open(‘http://app.bloghackers.net/amazlet/?__mode=asinsearch&asin=’+asin+’&affiliate_id=’+afid,’_blank’,’width=440,height=600,resizable=1,scrollbars=1,status=1′))
こう直したら対応した。javascript:var%20afid=’shokai-22′;var%20u=document.location.href;javascript:var%20ai=u.indexOf(‘product’);var%20asin=u.substring(ai+8,ai+18);void(window.open(‘http://app.bloghackers.net/amazlet/?__mode=asinsearch&asin=’+asin+’&affiliate_id=’+afid,’_blank’,’width=440,height=600,resizable=1,scrollbars=1,status=1′))
shokai-22の部分が俺のアフィリエイトのIDなので、そこだけ直してコピペでいいと思う