TABS—Define Tabs

The TABS primary command:
  • Turns tabs mode on and off
  • Defines the logical tab character
  • Controls the insertion of attribute bytes at hardware tab positions defined with TABS

Use PROFILE to check the setting of tabs mode and the logical tab character. See Using tabs if you need more information about using tabs.

Syntax

Read syntax diagramSkip visual syntax diagramTABSTABONSTDALLtab_characterOFF
ON
Turns tabs mode on, which means that logical tabs can be used to break up strings of data. This is the default operand. If no other operands are included, all hardware tab positions (asterisks) that contain a blank or null character are activated because STD is also a default operand. The TABS ON STD message is displayed in the profile.
OFF
Turns tabs mode off, which means that logical tabs cannot be used. Attribute bytes are deleted from all hardware tab positions, causing the Tab Forward and Tab Backward keys to ignore hardware tabs defined on the =TABS> line. Blanked-out characters that occupy these positions reappear. The TABS OFF message is displayed in the profile.
STD
Activates all hardware tab positions (asterisks) that contain a blank or null character. The editor inserts attribute bytes, which cannot be typed over, at these positions. STD is the default operand. You can use the Tab Forward and Tab Backward keys to move the cursor one space to the right of the attribute bytes. The TABS ON STD message is displayed in the profile.
ALL
Causes an attribute byte to be inserted at all hardware tab positions. Characters occupying these positions are blanked out and the attribute bytes cannot be typed over. The Tab Forward and Tab Backward keys can be used to move the cursor one space to the right of these attribute bytes. The TABS ON ALL message is displayed in the profile.
tab_character
Defines a single character that is not a number, letter, or command delimiter as the logical tab character. This character is used with hardware tab definitions. The TABS ON tab_character message is displayed in the profile.

You can enclose the character in quotes (' or "), although this is not necessary unless a quote or a comma (,) is used as the tab character.

The tab_character operand causes the data string that follows the logical tab character to align itself one space to the right of the first available hardware tab position when you press Enter. No attribute bytes are inserted.

If no hardware tabs are defined, the editor aligns the data vertically. If software tabs are defined, the first data string is aligned under the first software tab position and the remaining data strings are aligned at the left boundary. If neither software nor hardware tabs are defined, the editor aligns all the data strings at the left boundary.

With the tab_character operand, the Tab Forward and Tab Backward keys ignore hardware tab positions because no attribute bytes are inserted.

You can type the operands in any order, but keep these rules in mind:
  • The tab_character and ALL operands cannot be used together, because the tab_character operand does not allow ISPF to insert attribute bytes at tab positions, while the ALL operand does.
  • The TABS primary command has no effect on software tabs. Whenever software tabs are defined, you can always press Enter to move the cursor to a software tab position in the data, even if tabs mode is off. Attribute bytes are not inserted at software tab positions.

Examples

Define the number sign (#) as a logical tab character by typing this command and pressing Enter:
TAB #
Now, enter the COLS line command by typing COLS in the line command field and pressing Enter. A partial =COLS> line with positions 9 through 45 is shown in the example.
To use the logical tab character you have defined (#), you also need at least one hardware tab. For this example, we will assume that three hardware tabs have already been defined in columns 20, 30, and 40:
=COLS> -1----+----2----+----3----+----4----+
=TABS>            *         *         *
If you then type this information on a line:
#$4237#$ 596#$  81
the data $4237 is repositioned after the first tab column, defined by an * in the =TABS line, when you press Enter. The $ 596 is repositioned after the next tab column and so forth, as follows:
=COLS> -1----+----2----+----3----+----4----+
=TABS>            *         *         *
                   $4237     $ 596     $  81