ホスト端末からのテキスト・シーケンスのキャプチャー

continuous 属性が true の場合、 マクロ・ランタイムは、2 組の行と列の値を、テキストの連続シーケンスの 開始位置と終了位置 (これらの位置を範囲に含む) として扱います。 テキストは、開始位置から終了位置にいたるまでに必要ならば行間で折り返します。テキストのシーケンスは、最小で 1 文字、最大でアプリケーション・ウィンドウ全体 にすることができます。

マクロ・ランタイムは、次の処理を行います。
  • 結果ストリングを空ストリングに初期化する。
  • テキストの長方形ブロックを最初から最後まで読み取り、 必要な場合は行の最後から次の行の最初まで折り返す。
  • 結果ストリングを指定された変数に格納する。
例えば、ホスト端末の行 21 と 22 に次のテキストがあるとします (各行は 80 文字)。
........Enter / on the data set list command field for the command prompt pop-up
or ISPF line command............................................................
さらに、マクロ・ランタイム が次の設定値を指定して抽出アクションを実行するとします。
  • continuous 属性は true。
  • 行と列の組は (21, 9) ('Enter' の 'E') と (22, 20) ('command' の 'd')。
  • 抽出名は 'Extract1'。
  • データ・プレーンは TEXT_PLANE。
  • ストリング変数 $strTmp$ が結果ストリングの格納先の変数。

continuous 属性が true のため、マクロ・ランタイムは行と列の組をテキスト・シーケンスの開始と終了のマーキングとして扱い、開始位置は (21, 9)、終了位置は (22, 20) とします。

マクロ・ランタイムは、結果ストリングを空ストリングに初期化します。その後マクロ・ランタイムは、テキスト・シーケンスを 最初から最後まで読み取り、行 21 の最後の文字から行 22 の 最初の文字に折り返します。最後に、マクロ・ランタイムは結果ストリング全体を結果変数 $strTmp$ に 格納します。変数 $strTmp$ には、次に示す 92 文字のストリングが格納 されます (次に示すテキストは、本書のページに収めるために行末ハイフン 付けが行われていますが、実際にはハイフンなしの 1 つのストリングを 表します)。
'Enter / on the data set list command field for the com-
mand prompt pop-up or ISPF line command'

これに対し、この例で continuous 属性を false に 設定した場合、$strTmp$ には 24 文字のストリング 'Enter / on tline command' が格納されます。