Rubyのリファレンスマニュアルを端末で読むrefe

Rubyのリファレンスマニュアルをmanのように端末上で読むコマンドとしてriがありますが、残念ながらこれで読めるのは英語のマニュアルだけです。

Rubyには日本語でかかれたマニュアル(通称「るりま」)がありますが、いちいちブラウザで読むのも面倒だしネットに繋がってる必要があります。るりまをオフラインで端末上で読めるようにするコマンドがrefeです。

github.com

インストール

要Git

% gem install refe2
% bitclust setup

使う

クラスの説明を表示

% refe String

メソッドの説明を表示

% refe String#gsub

メソッド名だけでも表示

% refe bytesize
String#bytesize
--- bytesize -> Integer

文字列のバイト長を整数で返します。
...

同名のメソッドを持つクラスが複数ある場合は候補を表示

% refe slice
Array#slice Ripper.slice String#slice Symbol#slice 

先頭部分に一致する候補を表示

% refe String#sli
String#slice String#slice! 

クラスも同様

% refe Str       
String StringIO StringScanner StringScanner::Error Struct 
Struct::Group Struct::Passwd Struct::Tms 

便利!

ただ、長いドキュメントもそのまま端末上を流れていってしまうので、自分は次のようなスクリプトを作って pager で読むようにしてます。

#!/bin/bash
refe "$@" 2>&1 | pager