Node.js v0.11.11 マニュアル & ドキュメンテーション


TTY#

Stability: 2 - Unstable

tty モジュールは tty.ReadStreamtty.WriteStream クラスを持ちます。 多くのケースでは、これらを直接使う必要はありません。

node は TTY コンテキストの中にいるかどうかを検出し、 process.stdintty.ReadStream のインスタンスに、 process.stdouttty.WriteStream のインスタンスになります。 もし node が TTY のコンテキストで実行されているかどうかをチェックしたければ、 process.stdout.isTTY を使うことができます:

$ node -p -e "Boolean(process.stdout.isTTY)"
true
$ node -p -e "Boolean(process.stdout.isTTY)" | cat
false

tty.isatty(fd)#

fd が端末に関連づけられているかどうかを true または false で返します。

tty.setRawMode(mode)#

Deprecated. 代わりに tty.ReadStream#setRawMode() (すなわち、process.stdin.setRawMode()) を使用してください。

Class: ReadStream#

net.Socket のサブクラスで、tty の入力側を表現します。 一般的な状況では、どんなプログラムでも (isatty(0) が true の場合に限り) process.stdin が唯一の tty.ReadStream のインスタンスとなります。

rs.isRaw#

Boolean 値で false に初期化されます。 tty.ReadStream インスタンスの現在の "raw" 状態を表現します。

rs.setRawMode(mode)#

modetrue または false のどちらかです。 これは tty.ReadStream がローデバイスかデフォルトのどちらで振る舞うかを 設定します。 結果のモードは isRaw に設定されます。

Class: WriteStream#

net.Socket のサブクラスで、tty の出力側を表現します。 一般的な状況では、どんなプログラムでも (isatty(1) が true の場合に限り) process.stdout が唯一の tty.WriteStream のインスタンスとなります。

ws.columns#

TTY の現在のカラム数を保持する Number 値です。 このプロパティは 'resize' イベントで更新されます。

ws.rows#

TTY の現在の行数を保持する Number 値です。 このプロパティは 'resize' イベントで更新されます。

Event: 'resize'#

function () {}

columns または rows プロパティが変更された場合に refreshSize() によって生成されます。

process.stdout.on('resize', function() {
  console.log('screen size has changed!');
  console.log(process.stdout.columns + 'x' + process.stdout.rows);
});