mruby-io-console
CRubyにあるio/console
というライブラリがあって、この機能をmrubyでも使えるかなあと思って作ってみました。
自分でもio/consoleが何かわかってなかったので、学習のためにも書いてみました。
これでIO#raw
とIO#cooked
とIO#noecho
とIO#winsize
がmrubyでも使えるようになります。
なかでも使いみちがありそうなのはIO#raw
とIO#noecho
で、
IO#raw
はコンソールから一文字ずつ読みこむようなアプリケーションを作りたい場合に使えます。
$stdin.raw do
# この中での$stdinはrawモードになる
while true
ch = $stdin.getc
print ch
end
end
IO#noecho
はパスワード入力時に入力文字を隠したい時に使えます。
password = $stdin.noecho { $stdin.gets }
まだ全てのメソッドが揃ったわけではないし自分の手元のmacマシンでしか動作確認してないデス。。。
PRお待ちしております。