Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

newform(1)

pr(1)

tput(1)

fspec(4)

terminfo(4)

environ(4)

term(4)



  tabs(1)                             CLIX                             tabs(1)



  NAME

    tabs - Sets tabstops on a terminal

  SYNOPSIS

    tabs [tabspec] [-code] [-Ttype] [+mn]

  FLAGS

    -code    The codes parameter specifies a canned set of tabs.  The
             applicable codes and their meanings are as follows:

             -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 corresponds to column 8, and a tab
                   reaches column 12.  Files using this tab setup should
                   include a format specification as follows (see fspec()):

                   <:t-c2 m6 s66 d:>


             -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 (see fspec()):

                   <:t-c3 m6 s66 d:>


             -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

             In addition, any of the following flags may also be used; if a
             given flag occurs more than once, the last given value takes
             effect:

    -Ttype   The tabs command needs to know the type of terminal in order to
             set both tabs and margins.  The arguments and parameters for type
             are listed in term(4).  If no -T flag is supplied, the tabs



  2/94 - Intergraph Corporation                                              1






  tabs(1)                             CLIX                             tabs(1)



             command uses the value of the environment variable $TERM.  If
             $TERM is not defined in the environment (see environ(4)), the
             tabs command will use a default sequence which will usually work
             with most 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
             (leftmost) margin on most terminals is obtained by +m0.  The
             margins for most terminals are reset only when the +m flag is
             given explicitly.

  DESCRIPTION

    The tabs command sets tabstops on the user's terminal according to the tab
    specification (tabspec) parameter, after first clearing any previous
    settings.  The user's terminal must have remotely-settable hardware tabs.
    When using the tabs command, users can select one of the following types
    of tab specifications:

    ⊕  canned (-code)

    ⊕  repetitive (-n)

    ⊕  arbitrary (n1,n2,...)

    ⊕  file (--file)

    If no tabspec is given, the default value is -8 (that is, UNIX system
    standard tabs).  The lowest column number is 1.  Note that for the tabs
    command, column 1 always refers to the leftmost column on a terminal, even
    one whose column markers begin at 0 (for example, the DASI 300, DASI 300s,
    and DASI 450).

    -n          This flag represents a repetitive specification which requests
                tabs at columns 1+n, 1+2*n, and so on.  Of particular
                importance is the value 8 (this represents the UNIX system
                ``standard'' tab setting, and is usually the tab setting found
                at most terminals).  Another special case is the value 0,
                implying no tabs at all.

    n1,n2,...   This string sets an arbitrary format flag permitting 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.  Therefore,
                the formats 1,10,20,30, and 1,10,+10,+10 are considered
                identical.




  2                                              Intergraph Corporation - 2/94






  tabs(1)                             CLIX                             tabs(1)



    --file      If the name of a file is given, the tabs command reads the
                first line of the file, searching for a format specification
                (see fspec()).  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
                displayed with correct tab settings, and would be used with
                the pr(1) command:

                tabs --file
                pr file


    Tab and margin settings are performed with stdout.

  EXAMPLES

    1.  An example using the -code (canned specification) to set tabs to the
        settings required by the IBM assembler:  columns 1, 10, 16, 36, 72.

        tabs -a


    2.  An example using the -n (repetitive specification), where n is 8,
        which causes tabs to be set every eighth position:  (1+(1*8), 1+(2*8),
        ... which evaluate to columns 9, 17, ...

        tabs -8


    3.  An example of using n1,n2,... (arbitrary specification) to set tabs at
        columns 1, 8, and 36.

        tabs 1,8,36


    4.  See fspec() for an example of using the --file (file specification)
        when indicating that tabs are to be set according to the first line of
        $HOME/fspec.list/att4425.

        tabs --$HOME/fspec.list/att4425


  NOTES

    There is no consistency among different terminals regarding ways of
    clearing tabs and setting the left margin.

    The tabs command clears only 20 tabs (on terminals requiring a long
    sequence), but is capable of setting 64.

  CAUTIONS



  2/94 - Intergraph Corporation                                              3






  tabs(1)                             CLIX                             tabs(1)



    The tabspec argument, which is used with the tabs command, is different
    from the one used with the newform command.  For example, tabs -8 sets
    every eighth position; whereas, newform -i-8 indicates that tabs are set
    every eighth position.

  DIAGNOSTICS

    The following diagnostic messages are issued for the tabs command:

    illegal tabs
           Indicates that an arbitrary tab(s) string was input incorrectly.

    illegal increment
           Indicates that a zero or missing increment was found in an
           arbitrary specification.

    unknown tab code
           Indicates that the canned code could not be found.

    can't open
           The system issues this message when the --file option is used, and
           the file cannot be opened.

    file indirection
           This message is issued when the --file option is used and the
           specification in that file points to yet another file.  This type
           of redirection is not permitted.

  EXIT VALUES

    The tabs command returns a 0 when tabs are successfully set and returns a
    1 when an error occurs.

  RELATED INFORMATION

    Commands:  newform(1), pr(1), tput(1)

    Functions:  fspec(4), terminfo(4)

    Miscellany: environ(4), term(4)














  4                                              Intergraph Corporation - 2/94




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