読者です 読者をやめる 読者になる 読者になる

rlwrap - readline ラッパー

http://utopia.knoware.nl/~hlub/rlwrap/
今の今まで知らなかったんですが、rlwrap という readline ラッパーがかなり便利ちっくです。
これを使うと Readline によるコマンドライン入力に対応してないようなプログラムでも対応させてしまうことが可能です。
例えば ruby インタプリタを引数無しで起動して、カーソルキーの↑や←や ^H を押すと

$ ruby
^[[A^[[D^H

なことになってしまうのですが、この rlwrap でラップして起動すると

$ rlwrap ruby

カーソルキーや ^H はもちろん、↑や C-p によるヒストリーバック、C-r による入力履歴のインクリメンタルサーチまでできてしまいます。すげー。入力した履歴はデフォルトだと ~/.プログラム名_history, ruby なら ~/.ruby_history に記録してくれるようなので、もう一度プログラムを起動しても履歴がきちんと使えます!
これからは readline に対応してなかったり、履歴使いたいのに記録してくれなかったりするようなプログラムでは、このラッパーを通して利用することが増えそうです。