TSET(1)

名称
tset - 端末を初期化する

書式
tset [-IQrSs] [-] [-e ch] [-i ch] [-k ch] [-m mapping] [terminal]
reset [-IQrSs] [-] [-e ch] [-i ch] [-k ch] [-m mapping] [terminal]

解説
tset は端末を初期化します。まず最初に tset は使用中の端末タイプを判別 します。判別方法は、以下の値を順番に調べ、最初に見つかった端末タイプを 利用するという方法です。

•   コマンドライン上で指定した terminal 引数
•   環境変数 TERM の値
•   利用中の標準エラー出力デバイスに対応する、 /etc/ttys 内のエントリで定義している端末タイプ
•   デフォルトの端末タイプである ``unknown''

端末タイプがコマンドラインで指定されない時は、 -m オプションのマッピングはその後に適用されます (詳細は下を参照)。 その後、もし端末タイプの前に ``?'' がついていたならば、端末タイプの確認用のプロンプトが出ます。空行を 与えるとその端末タイプになりますが、別の新しい端末タイプを入力することも 可能です。いったん端末タイプが決定すれば、その端末用の termcap エントリが 検索されます。termcap エントリが見つからない場合は、もう一度プロンプトが 出ます。

いったん termcap エントリが見つかれば、(他にもたくさんある中で) 画面サイズ、バックスペース、インタラプト、行消去のキャラクタがセットされ、 端末の初期化およびタブの初期化の文字列が標準エラー出力に送られます。 最後に、もし、消去、インタラプト、行削除のキャラクタが変更される、もしくは そのデフォルト値が未設定であれれば、その値が標準エラー出力に表示されます。

tset が reset として起動された時は、上で述べた端末初期化が行われる前に、 端末を cooked モード、echo モードにセットし、cbreak モード、 raw モードをオフにし、未設定の特殊キャラクタをデフォルト値でリセットします。 これは、プログラムが端末を異常な状態にしたまま死んだ時に有用です。 端末が異常な状態にあるときにはキャリッジリターンが働かないことがあるので、 端末を正常に戻すためには “<LF>reset<LF>” (ラインフィードキャラクタは通常 コントロール-J です) とタイプしなければいけないかもしれないということに 注意して下さい。また、端末がコマンドのエコーを行わなくなっているかも しれません。

オプションは以下のものがあります:

-   端末タイプが標準出力に表示されます。端末は初期化されません。

-e  erase キャラクタを ch にします。

-I  端末初期化文字列もしくはタブ初期化文字列を端末に送りません。

-i  インタラプトキャラクタを ch にします。

-k  行削除のキャラクタを ch にします。

-m  ポートタイプから端末へのマッピングを指定します。詳細は下を参照して下さい。

-Q  消去、インタラプト、行削除の値を表示しません。

-r  端末タイプを標準エラー出力に表示します。

-S  端末タイプと termcap エントリを標準出力に表示します。 環境設定についての詳細は以下のセクションを参照して下さい。

-s  環境変数 TERM と TERMCAP を初期化する shell コマンド列を標準出力に書きます。 環境変数の設定についての詳細は以下のセクションを参照して下さい。

-e, -i, -k オプションの引数は、実際のキャラクタを 書くか、もしくは “ハット記号” を使って (すなわち コントロール-h なら “^H” もしくは “^h” )記述して下さい。

環境設定
しばしば、端末タイプと端末の能力についての情報を shell の環境変数に設定する 必要がでてきます。これは -S と -s のオプションで行います。 -S オプションが指定された時、端末タイプと termcap エントリが 標準出力に表示されます。この出力はスペースで区切られており、最後に 改行がつきません。また、この出力は csh, ksh やその他の shell の配列に 代入できます。

-s オプションが指定された場合は shell の環境変数を設定するための コマンドが標準出力に書かれます。このコマンドは、環境変数 SHELL の設定値が ``csh'' で終っていれば csh 用の、それ以外は sh 用のものとなります。 csh 用のコマンドの場合は “noglob” シェル変数の set と unset が行われ、 unset したままになることに注意して下さい。以下の行を .login や .profile に記述すれば環境変数を正しく初期化できます:

    eval `tset -s options ... `

-S オプションの使い方を簡単に説明すると、 .login に以下のような記述をすると上と同じような効果が得られます:

    set noglob
    set term=(`tset -S options ...`)
    setenv TERM $term[1]
    setenv TERMCAP "$term[2]"
    unset term
    unset noglob

環境変数
tset コマンドは、環境変数 SHELL および TERM を利用します。

関連ファイル
/etc/ttys
    システムポート名から端末タイプへのマッピングを記述したデータベース
/usr/share/misc/termcap
    termcap データベース

関連項目
csh(1), sh(1), stty(1), tty(4), termcap(5), ttys(5), environ(7)

歴史
tset は 3.0BSD から現れました。