Node.js のリファレンスをコマンドラインから検索するツールを作ってみた

ruby には ri や refe, bitclust (http://www.ruby-lang.org/ja/documentation/ からダウンロードできます) という便利なツールがあり、コマンドラインからリファレンスを引くことが簡単にできます。コマンドラインツールとして実装されているため、EmacsやVimなどのエディタと組み合わせるのも容易で、例えば、カーソル下のメソッドのリファレンスを瞬時に検索して表示するなんていうことが簡単にできまして、プログラミングをする上では非常に助けになります。

そういうツールのNode.js用の物が欲しかったので、週末ハックということで作ってみました。 yukihr/nore になります。

添付のelisp (misc/nore.el) を使うと、下のような感じでEmacsからNode.jsのリファレンスを引けるようになります(npmに登録してないので、インストールがちょっと面倒ですが・・・)。

nore-emacs

Node.js のリファレンス自体HTML1ページに収まってしまうので、インデックスをつくるなど仕組みとしてはちょっと大げさかもしれません。あと、今のところ完全一致検索にしか対応してないので手でクエリを入力しての検索は頼りにならないかも、とか、HTMLの出力がいい加減で読みづらい、とか、日本語にしか対応してないとか有るんですが、後々何とかするかもしれません(適当ですみません・・)。

良かったら使ってみてください。

追記)

これを作っていて、インストールしているnpmモジュール全部のドキュメント、例えば、doc/ 以下にあるMarkdown形式のドキュメントを一括して検索できるツールがあってもいいのかなー、なんて思いました。まあ、npm docsコマンドでもリファレンスのURLをブラウザで開けるのでそれだけで事足りるし、検索しなくても全体を把握できるような小さなモジュールを組み合わせるのがいわゆるNode (npm)らしさなのかもしれません(個人的に、こういう生態系ができたのはJSがクラスベースでなくプロトタイプベースであることが影響しているんじゃないかと思ってますが)。