termのLINESとCOLSとSIGWINCH

x端末などの大きさを変えると、SIGWINCHが飛んでくる。
変わった後のLINESとCOLSの取得は、terminfoでなくてioctlでできる。

http://www.a-k-r.org/ruby-terminfo/rdoc/classes/TermInfo.src/M000029.html

前回作ったtermutilにも実装してみた。

var TERMUTIL=require('termutil');
var term=new TERMUTIL.Term();

process.on('SIGWINCH', function(){
    console.log(term.size()+"\r");
});

term.on('keyinput', function(code){
    if(code==0x71){
        process.exit();
    }
});
term.listen();
console.log("press [q] to quit\r");