それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

node.js の node コマンドが CTRL+R効かない

node で ctrl+R が効かない。

ctrl+r 無いと不便だよね。irb は数年前に解決した、sqlite3 は先日解決させた。 今度はnode もなんとかしたいなと調べた。

sqlite のときのように readline ライブラリで解決するかと思ったら解決しない。

node REPL をどうするか問題

node の REPL を使うことで、アレコレできるようになっていて、今まで見たものと根本的に設計思想が違うようですね。

const repl = require('repl');

rlwrap を使うと楽になるようで。

rlwrap / readline wrapper を使って nodeで reverse-increment-search 何とかすると動くようです。

alias node="env NODE_NO_READLINE=1 rlwrap node"

無理やり動いた

rlwrap で無理やり動いた

takuya@~$ node
> const takuya={}
undefined
> takuya
{}
(reverse-i-search)`':

rlwrap は何をしているのか。

rlwrap はヒストリファイルを別途作って rlwrap が node にptsをパイプしてる感じ。

もし、readline非対応でもコレを使ったら強引に使えるようになるので便利そう。

参考資料

https://nodejs.org/api/repl.html

https://github.com/hanslub42/rlwrap

https://linux.die.net/man/1/rlwrap