livedoor Reader のフィード検索で、タイトルだけじゃなく URL も対象にする Greasemonkey スクリプトを作りました

読みたいフィードを検索しようとする時、タイトルよりも先に URL が浮かんでしまうことが多いので作りました。URL に含まれているユーザ名で検索したい時とか、あるサービスのフィードだけを検索したい時にも便利だと思います。


次のサイトを参考にしました。


インストールにはこの Greasemonkey スクリプトがとても便利です。

ldr_add_linkfilter_to_finder.user.js

// ==UserScript==
// @name          LDR: add "link filter" to "Finder"
// @namespace     http://d.hatena.ne.jp/satoship/
// @include       http://reader.livedoor.com/reader/*
// @version       0.1
// ==/UserScript==

(function(){
	var w = unsafeWindow;
	var _onload = w.onload;

	var onload = function(){with(w){

		Subscribe.Controller.prototype.add_filter = function(q){
			var filter = function(item){
				return contain(item.title,q) || contain(item.link,q)
			};
			this.filter = function(model){
				return model.filter(filter)
			}
		}

	}}
	w.onload = function(){
		_onload();
		onload();
	}
})();


livedoor ReaderJavaScriptソースコードは、いつか読んでみようと思いつつも量がたくさんあるので、まとまった時間が取れる時に読もうと後回しにしていましたが、いざ読み始めると、とてもきれいに書かれていて読み易かった。低レベルの部分はそうでもないかもしれませんが、このような機能を追加したいだけなら、割とすぐに該当箇所が見つかるのではないでしょうか。「まるごとPerl! Vol.1」の記事を読んだので、ある程度知っていたというのもありますが。


高度なことをしているのに、読み手には易しいといのが、とてもすばらしいと思いました。インデントもされているし、コメントも少し入ってるし、ファイル名にバージョン番号が付いているので、変更されたら分かり易いし。