ターミナルのインタラクティブな使用法
この章では、インタラクティブ・モードでターミナルを操作する基本的な方法について説明します。
コマンドの入力
ターミナルでコマンドを入力するには、ObjectScript コマンドとその引数を入力します。または、シェルを使用している場合、そのシェルに適用できるコマンドを入力します。
ObjectScript の場合、コマンドの前にスペースを入力する必要はありません (ルーチンやメソッドを定義する場合とは対照的です)。
また、Tab キーを押してターミナルで行を開始する場合、その行の残りは、ルーチン・バッファに入力され、実行されません。この動作は以前に定義され、ルーチンを作成する便利な方法です (同じ目的で機能する ZINSERT コマンドも参照してください)。誰もこの方法でルーチンを定義しなくなったため、このドキュメントではこの機能について詳しく説明しません。
スクロール
アクティブなテキストが到着したときは常に、ターミナルによって、ウィンドウが新しく到着したテキストにスクロールされます。右のスクロール・バーを使用して、上下にスクロールします。
以下のように、キーボードを使用して、ターミナル内をスクロールすることもできます。
キーの組み合わせ | 結果 |
---|---|
Ctrl-Home | バッファの先頭にスクロールします。 |
Ctrl-End | カーソルまで下方にスクロールします。 |
Ctrl-PageUp | 1 ページ単位で上方にスクロールします。 |
Ctrl-PageDown | 1 ページ単位で下方にスクロールします。 |
Ctrl-LineUp | 1 行ごとに上方にスクロールします。 |
Ctrl-LineDown | 1 行ごとに下方にスクロールします。 |
ターミナルのスクロールの一時停止と再開
ターミナルのスクロールを一時停止するには、Ctrl-S を押します。スクロールが一時停止されている間、ターミナルは、コマンドを受け入れて処理しますが、画面にコマンドや出力を書き込むことはありません (そのため、応答しないように見えます)。
再開するには、Ctrl-Q を押します。
前のコマンドの繰り返し
前のコマンドを繰り返すには、そのコマンドが表示されるまで上矢印キーを繰り返し押します。コマンドを入力するには、通常どおり Enter キーを押します。
または、コマンド :history (または :h) を発行すると、現在のターミナル・セッションで発行したコマンドの番号付きリストを取得できます。このリストからコマンドを繰り返すには、コマンド :<number> を発行します。<number> はリスト上のコマンドに対応する番号です。
コマンド :clear を実行すると履歴バッファがクリアされます。したがって、上記の方法で前のコマンドを呼び出すことができなくなります。
頻繁に使用するコマンドのエイリアス作成
コマンドを発行するためのショートカットを定義するには、:alias コマンドに続けて、コマンドに割り当てる別名 (エイリアス)、そのエイリアスに割り当てるコマンドの順に入力します。ここから以降の現在のターミナル・セッションでは、: 文字の後にエイリアスを入力することで該当のコマンドを発行できます。
次のセッション例では、1 行目で :alias コマンドを発行することにより、2 行目で文字列 :u を入力するだけで、ネームスペースを USER ネームスペースに切り替えることができます。
%SYS>:alias u set $namespace="USER"
%SYS>:u
USER>
エイリアスを使用してコマンドに引数を渡すこともできます。エイリアス定義の一部として、先頭に $ 文字を使用した番号付きのホスト変数を、コマンドの各引数のプレースホルダとして指定します。エイリアスに続けてホスト変数の番号の順序で引数の値を指定し、エイリアスを起動します。
例えば、以下のコマンドを発行すると、ファイルをロードするショートカット (load) が作成されます。ファイルのある場所を 1 番目の引数 ($1) で指定し、2 番目の引数 ($2) でフラグを指定します。
USER>:alias load Do $System.OBJ.Load("$1","$2")
このエイリアスを使用して、パス /directory/foobar.xml にある、c と k のフラグを設定したファイルをロードするには以下を入力します。
USER>:load /directory/foobar.xml ck
コマンドのプレースホルダ変数に ObjectScript 式の一部を使用することもできます。例えば、以下のコマンドでは $SELECT 関数を使用して、2 番目の引数を指定しない場合の既定の 2 番目の引数として "ck" を設定します。
USER>:alias load Do $System.OBJ.Load("$1", $S("$2"="":"ck", 1:"$2"))
エイリアス定義を削除するには、:unalias コマンドを、それに続けてエイリアス名を指定して入力します。引数を指定せずに :alias を入力すると、現在のターミナル・セッションで定義されているエイリアスが一覧表示されます。
UNIX® または Linux のシステムを使用している場合は、セッションの開始ごとにターミナルで自動的に設定されるエイリアス定義を列挙したリストを指定できます。ホーム・ディレクトリにあるファイル .iris_init に、これらのエイリアスを 1 行に 1 つずつ定義します。
テキストのコピーと貼り付け
ターミナルでテキストをコピーして貼り付けることができます。この操作を実行するには、コンテキスト・メニュー (右クリック・メニュー)、[編集] メニュー、または各種のキーボード・ショートカットを使用できます。以下のオプションを使用できます。
-
コピー— 選択されているテキストを、クリップボードにコピーします。
-
貼り付け— クリップボードのコンテンツをカーソルの現在位置 (ターミナルのスクロールバック・バッファの最後) に行ごとに貼り付けます。このテキストは、エコーが無効にされていない限り、ターミナル・ウィンドウに表示されます。
-
コピー + 貼り付け— 選択したテキストをクリップボードにコピーして、カーソルの現在位置に行ごとに貼り付けます。
キーボードによるショートカット
使用できるキーボードによるショートカットは、以下のとおりです。
アクション | 基本のショートカット | Windows のショートカット |
---|---|---|
コピー | Ctrl-Insert | Ctrl-C |
貼り付け | Shift-Insert | Ctrl-V |
コピーと貼り付け | Ctrl-Shift-V |
“基本のショートカット” 列に示したショートカットは、常に有効です。
“Windows のショートカット” 列に示したショートカットは、[Windows edit accelerators] オプションを [はい] に設定した場合にのみ有効になります。この設定の詳細は、“ターミナルの外観および動作の制御” の章の “ユーザ設定” のセクションを参照してください。
コピーと貼り付けに関する注記
-
前述のように、[Windowsエディットアクセラレータ] オプションを [はい] に設定すると、Ctrl-C によって、選択したテキストが Windows クリップボードにコピーされます。ターミナルを中断するには、代わりに Ctrl-Shift-C を押す必要があります。
-
ホストに処理中のマウス・リクエストがあるときに、切り取りおよび貼り付けをローカルで実行したい場合は、対象領域を選択しながら Ctrl キーを押すと、マウスのアクションがホストに報告されなくなります。
-
コピーされたテキストに行の境界が含まれる場合は、キャリッジ・リターンと改行としてクリップボードに保存されます。改行を貼り付けない場合は、“ユーザ設定” を参照してください。
-
ターミナルのデータ貼り付け速度が、ホストのデータ受信速度よりも速い場合がしばしばあります。貼り付け速度を制御するための設定は、“ユーザ設定” を参照してください。また、貼り付けコマンドの実行時に、改行を破棄することもできます。
印刷
ターミナルから印刷するには、[ファイル] メニューの以下のオプションを使用します。
-
プリンタを選択して、ターミナルでそのプリンタを使用するように設定するには、[ファイル]→[印刷設定] を選択します。
-
ターミナル画面の内容を印刷するには、[ファイル]→[印刷] を選択します。
-
ログ・ファイル (または他の ASCII ファイル) を印刷するには、[ファイル]→[ログの印刷] を選択します。このオプションでは印刷するファイルを選択でき、改ページ文字を適切に処理する以外は、特別な操作は必要ありません。印刷中は、マウスおよびキーボード入力がメイン・ウィンドウからロック・アウトされ、キャンセル用のダイアログ・ボックスが表示されます。印刷はドラフト・モードで実行されます。
画面のクリア
[編集] メニューには、画面をクリアするための 2 つの異なるオプションが用意されています。
-
画面をリセットするには、[編集]→[リセット] を選択します。このオプションを使用すると、現在のページ上のマージン、スクロール領域、およびその他の処理がリセットされ、ターミナルでウィンドウが再描画されます。
-
画面を再初期化するには、[編集]→[削除] を選択するか、Ctrl-Del を押します。このオプションは、ターミナル・ウィンドウを再初期化し、すべてのセッション・データを消去し、スクロールバック領域を 0 にリセットします。
ターミナル・セッションのログへの記録
ターミナル・セッションのログ記録を開始するには、以下の手順を実行します。
-
[ファイル]→[ログ] を選択するか、Alt-L を押します。
ターミナルは、ログ・ファイルの場所と名前の入力を促すダイアログ・ボックスを表示します。既定のディレクトリは、install-dir/mgr です。既定のファイル名は TERMINAL.LOG です。
パスとファイル名の合計長は 126 文字を超える長さにはできません。
-
必要な場合は、別のディレクトリとファイル名を指定します。
-
[OK] をクリックします。
ログ・ファイルが存在する場合は、ターミナルでログ・ファイルを上書きするかどうか尋ねるメッセージが表示され、次の 3 つの選択肢が提示されます。
-
[はい] は、新しいログ・データでファイルを上書きします。
-
[いいえ] は、新しいログ・データをファイルに追加します。
-
[キャンセル] は、ファイルをそのまま残します (ロギングは行われません)。
-
その後、ログへの記録を終了するには、[ファイル]→[ログ] を選択するか、Alt-L を押します。ログ・ファイルが閉じられたことを示すダイアログ・ボックスがターミナルに表示されます。[OK] を選択します。
ログ・ファイルには、接続からの出力のみが記録されます (現行のラップ・モードには関係ありません)。
このドキュメントで後述するように、ターミナル・スクリプトからもロギングを実行できます。[ファイル]→[ログ] によりロギングを開始した場合、ロギングも実行するスクリプトは開始できないことに注意してください。そのようにした場合の動作は不確定です。
“ターミナル使用に関するその他のトピック” の章の “学習モード” のセクションも参照してください。