Capturing a rectangular area of the host terminal

When the continuous attribute is false (this is the default value), the macro runtime treats the two pairs of row and column values as the upper left and lower right corners (inclusive) of a rectangular block of text. The rectangular block can be as small as one character or as large as the entire application window.

The macro runtime:
  • Initializes the result string to an empty string
  • Reads the rectangular block of text row by row, concatenating each row to the result string
  • Stores the result string in the specified variable
As an example, suppose that the first 40 characters of rows 16, 17, and 18 of the host terminal are as follows:
.8..Outlist.....Display, delete, or prin
.9..Commands....Create/change an applica
.10.Reserved....This option reserved for
In addition, suppose that the macro runtime is about to perform an Extract action with the following settings:
  • The continuous attribute is false.
  • The row and column pairs are (16, 5) (the 'O' of Outlist) and (18, 12) (the 'd' of 'Reserved').
  • The extraction name is 'Extract1'.
  • The data plane is TEXT_PLANE.
  • The string variable $strTmp$ is the variable in which the result string is to be stored.

Because the continuous attribute is false, the macro runtime treats the row and column pairs as marking a rectangular block of text, with the upper left corner at row 16 and column 5 and the lower right corner at row 18 and column 12.

The macro runtime initializes the result string to an empty string. Then the macro runtime reads the rectangular block of text one row at a time ('Outlist.', 'Commands', 'Reserved'), concatenating each row to the result string. Finally the macro runtime stores the entire result string into the result variable $strTmp$. The variable $strTmp$ now contains the following string:
'Outlist.CommandsReserved'