z/OS ISPF Edit and Edit Macros
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Data shift

z/OS ISPF Edit and Edit Macros
SC19-3621-00

Data shifting attempts to shift the body of a program statement without shifting the label or comments, and prevents loss of data. This shift is non-destructive because it stops before it shifts a nonblank character past the bound. This shift is explicitly done with the < and > line commands, and the SHIFT < and SHIFT > macro commands. The CHANGE command can cause an implicit shift of the same nature.

For data shift left attempts that exceed the current BOUNDS setting, text stops at the left bound and PDF marks the shifted lines with ==ERR> flags. If an error occurs in an excluded line, you can find the error with LOCATE, and remove the error flag by using RESET.

Data shifts are designed to work with typical program sources. In doing so, it makes certain general assumptions about the format of the source code. For instance, the editor assumes:
  • Anything beginning at the left bound is a label and should not be shifted.
  • If there are two or more consecutive blanks, one can be added or deleted.
  • Blanks within quotes (' or ") are to be treated as nonblanks.
  • Source statements appear on the left followed by comments on the right.
  • Single blanks are used between source code and comment words. Therefore, the only strings of multiple blanks appear between the source code and the comment, and between the comment and its ending delimiter (if there is one). In this example, LABEL and */ are at the left and right bounds, respectively:
    LABEL: DO I=1 TO 5;          /* The comment...   */
         A=A+B(I);               /* The comment...   */
         END;

Keeping the previous assumptions in mind, the editor attempts to move only the source code statement when shifting data. The label and comments are left unchanged. However, if necessary, it shifts the comment also.

Although the editor always uses these assumptions, data shifting is not language-sensitive. It only makes generalities about syntax and individual code entry style.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014