tabs(1) tabs(1)
NAME
tabs - set tabs on a terminal
SYNOPSIS
tabs [tabspec] [+mn] [-Ttype]
DESCRIPTION
tabs sets the tab stops on the user's terminal according to
the tab specification tabspec, after clearing any previous
settings. The user must have remotely-settable hardware
tabs.
Users of GE TermiNet terminals should be aware that they
behave differently from most other terminals for some tab
settings. The first number in a list of tab settings
becomes the left margin on a TermiNet terminal. Thus, any
list of tab numbers whose first element is other than 1
causes a margin to be left on a TermiNet, but not on other
terminals. A tab list beginning with 1 causes the same
effect regardless of terminal type. It is possible to set a
left margin on some other terminals, although in a different
way (see below).
If no tabspec is given, the default value is -8, i.e., UNIX®
``standard'' tabs. The lowest column number is 1. Note
that for tabs, column 1 always refers to the left-most
column on a terminal, even one whose column markers begin at
0, e.g., the DASI 300, DASI 300s, and DASI 450.
tabspec may be any of the following:
-a 1,10,16,36,72
Assembler, IBM S/370, first format
-a2 1,10,16,40,72
Assembler, IBM S/370, second format
-c 1,8,12,16,20,55
COBOL, normal format
-c2 1,6,10,14,49
COBOL, compact format (columns 1-6 omitted). Using
this code, the first typed character corresponds to
card column 7, one space gets you to column 8, and a
tab reaches column 12. Files using this tab setup
should include a format specification as follows:
<:t-c2 m6 s66 d:>
(see --file flag option).
-c3 1,6,10,14,18,22,26,30,34,38,42,46,50,54,58,62,67
COBOL compact format (columns 1-6 omitted), with
more tabs than -c2. This is the recommended format
for COBOL. The appropriate format specification is:
<:t-c3 m6 s66 d:>
(see --file flag option).
-f 1,7,11,15,19,23
FORTRAN
Page 1 (last mod. 1/16/87)
tabs(1) tabs(1)
-p 1,5,9,13,17,21,25,29,33,37,41,45,49,53,57,61
PL/I
-s 1,10,55
SNOBOL
-u 1,12,20,44
UNIVAC 1100 Assembler
-n A repetitive specification requests tabs at columns
1+n, 1+2*n, etc. Note that such a setting leaves a
left margin of n columns on TermiNet terminals only.
Of particular importance is the value -8: this
represents the UNIX® ``standard'' tab setting, and
is the most likely tab setting to be found at a
terminal. It is required for use with the nroff -h
flag option for high-speed output. Another special
case is the value -0, implying no tabs at all.
n1,n2,...
The arbitrary format permits the user to type any
chosen set of numbers, separated by commas, in
ascending order. Up to 40 numbers are allowed. If
any number (except the first one) is preceded by a
plus sign, it is taken as an increment to be added
to the previous value. Thus, the tab lists
1,10,20,30 and 1,10,+10,+10 are considered
identical.
--file If the name of a file is given, tabs reads the first
line of the file, searching for a format
specification. If it finds one there, it sets the
tab stops according to it, otherwise it sets them as
-8. This type of specification may be used to make
sure that a tabbed file is printed with correct tab
settings, and would be used with the pr(1) command:
tabs --file; pr file
Any of the following may be used also; if a given flag
occurs more than once, the last value given takes effect:
-Ttype tabs usually needs to know the type of terminal in
order to set tabs and always needs to know the type
to set margins. type is a name listed in term(5).
If no -T flag is supplied, tabs searches for the
$TERM value in the environment (see environ(5)). If
no type can be found, tabs tries a sequence that
will work for many terminals.
+mn The margin argument may be used for some terminals.
It causes all tabs to be moved over n columns by
making column n+1 the left margin. If +m is given
without a value of n, the value assumed is 10. For
a TermiNet, the first value in the tab list should
be 1, or the margin will move even further to the
right. The normal (left-most) margin on most
terminals is obtained by +m0. The margin for most
terminals is reset only when the +m flag is given
Page 2 (last mod. 1/16/87)
tabs(1) tabs(1)
explicitly.
Tab and margin setting is performed via the standard output.
EXAMPLE
tabs -c
will send commands to the terminal to set the tabs for COBOL
format remotely.
tabs 6,12,18
will set tabs in columns 6, 12 and 18.
tabs -10
will set tabs in columns 11, 21, 31, 41, 51, 61, and 71.
DIAGNOSTICS
illegal tabs when arbitrary tabs are ordered
incorrectly.
illegal increment when a zero or missing increment
is found in an arbitrary
specification.
unknown tab code when a predefined code cannot be
found, where predefined codes
include:
-a-a2-c-c2-c3-f-p -s-u
can't open if --file option is used, and
file can't be opened.
file indirection if --file option is used and the
specification in that file points
to yet another file. Indirection
of this form is not permitted.
FILES
/usr/bin/tabs
SEE ALSO
nroff(1), pr(1), environ(5), term(5), tset(1).
BUGS
There is no consistency among different terminals regarding
ways of clearing tabs and setting the left margin.
It is generally impossible to change the left margin
usefully without also setting tabs.
tabs clears only 20 tabs (on terminals requiring a long
sequence), but is willing to set 64.
Page 3 (last mod. 1/16/87)