Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ tabs(1) — A/UX 2.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

nroff(1)

pr(1)

tset(1)

term(4)

environ(5)




tabs(1) tabs(1)
NAME tabs - set tabs on a terminal SYNOPSIS tabs [tabspec] [+m[n]] [-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 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(Reg.) 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 April, 1990 1



tabs(1) tabs(1)
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 -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 termi- nal. 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 as-
cending 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 identi-
cal.
--file If the name of a file is given, tabs reads the first
line of the file, searching for a format specifica-
tion. 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 oc-
curs more than once, the last value given takes effect:
2 April, 1990



tabs(1) tabs(1)
-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. +m[n] 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 termi- nals is obtained by +m0. The margin for most termi- nals is reset only when the +m flag is given expli- citly. Tab and margin setting is performed via the standard output. EXAMPLES 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 specifi- cation. unknown tab code when a predefined code cannot be found, where predefined codes in- clude: -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. April, 1990 3



tabs(1) tabs(1)
FILES /usr/bin/tabs SEE ALSO nroff(1), pr(1), tset(1), term(4), environ(5). 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 useful- ly without also setting tabs. tabs clears only 20 tabs (on terminals requiring a long se- quence), but is willing to set 64. 4 April, 1990

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026