端末タイプがコマンドラインで指定されない時は、 -m オプションのマッピングはその後に適用されます (詳細は下を参照)。 その後、もし端末タイプの前に ``?'' がついていたならば、端末タイプの確認用のプロンプトが出ます。空行を 与えるとその端末タイプになりますが、別の新しい端末タイプを入力することも 可能です。いったん端末タイプが決定すれば、その端末用の termcap エントリが 検索されます。termcap エントリが見つからない場合は、もう一度プロンプトが 出ます。
いったん termcap エントリが見つかれば、(他にもたくさんある中で) 画面サイズ、バックスペース、インタラプト、行消去のキャラクタがセットされ、 端末の初期化およびタブの初期化の文字列が標準エラー出力に送られます。 最後に、もし、消去、インタラプト、行削除のキャラクタが変更される、もしくは そのデフォルト値が未設定であれば、その値が標準エラー出力に表示されます。
が reset として起動された時は、上で述べた端末初期化が行なわ れる前に、端末を cooked モード、echo モードにセットし、cbreak モード、 raw モードをオフにし、newline 変換を有効にし、 未設定の特殊キャラクタをデフォルト値でリセットします。 これは、プログラムが端末を異常な状態にしたまま死んだ時に有用です。 端末が異常な状態にあるときにはキャリッジリターンが働かないことがあるので、 端末を正常に戻すためには ``<LF>reset<LF> '' (ラインフィードキャラクタは通常 コントロール-J です) とタイプしなければいけないかもしれないということに 注意して下さい。また、端末がコマンドのエコーを行なわなくなっているかも しれません。
オプションは以下のものがあります:
-e -i -k オプションの引数は、実際のキャラクタを 書くか、もしくは ``ハット記号'' を使って (すなわち コントロール-h なら ``^H '' もしくは ``^h '' ) 記述して下さい。
-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
-m オプションの引数は、ポートタイプ、オペレータ、ボーレート、コロン(``:'') と端末タイプからなります。 ポートタイプは (オペレータ或はコロン文字によって区切られた) 文字列で表し ます。オペレータは、 ``> '' ``< '' ``@ '' ``! '' の組合せになります。 ``> '' は「より大きい」を意味し、 ``< '' は「より小さい」を意味し、 ``@ '' は「等しい」を意味し、 そして ``! '' は「test の評価結果の反対」を意味します。 ボーレートは数値として表され、 (コントロール端末である べき) 標準エラー出力のスピードと比較されます。 端末タイプは文字列です。
もし端末タイプがコマンドラインで示されなければ、 -m マッピングが端末タイプに適用されます。 もしポートタイプとボーレートがマッピングと一致すると、マッピングで示された端 末タイプでカレントタイプを置き換えます。もし、一つ以上のマッピングが示さ れた場合には、最初に適合したマッピングを使います。
例えば、 ``dialup>9600:vt100 '' というマッピングを考えます。 ポートタイプは ``dialup '' 、オペレータは ``> '' 、ボーレートは ``9600 '' 、そして端末タイプは ``vt100 '' です。 このマッピングの結果、ターミナルタイプが ``dialup '' で、ボーレートが 9600 ボーより大きければ、端末タイプ ``vt100 '' が使われます。
ポートタイプがない場合は、端末タイプは任意のポートタイプに一致します。 例えば、 ``-m dialup:vt100 -m :?xterm '' では、任意のダイヤルアップポートにおいて、 ボーレートを無視してターミナルタイプを ``vt100 '' に一致させます。そして、ダイヤルアップ以外のポートをターミナルタイプ ``?xterm '' に一致させます。 ?xterm はクエスチョンマークが先頭に付いているので、実際に xterm ターミナルを使っているかどうかについてデフォルトポートで 確認を求められことに注意して下さい。
-m オプションでの引数に空白は許されません。 メタキャラクタの問題を避けるために、 -m オプションの引数全体はシングルクォーテーションで囲むこと、そして csh を使っている場合は、すべてのイクスクラメーションマーク (``!'') の前に バックスラッシュ (``\'') をいれることを推奨します。
reset として を実行する場合には、 -Q オプションは使いません。 の幾つかの歴史的な実装上での - オプションと 引数 terminal の間の干渉は排除されています。
最後に, の実装は ( St -p1003.1-88 に従うシステムへの追加の一部として ) 完全にやり直されました。 もはや古い端末インタフェースのシステムの上では コンパイルはされないでしょう。