     LS(1)                                                                 LS(1)

     NAME
          colm - columnate lines of text

     SYNOPSIS
          colm [ -cglnstvwLT ] name ...

     DESCRIPTION
          colm produces multi-column output from single-column input.  It is
          sort of a cross between pr -<n> (which prints multi-column output
          sorted across) and the column-sorting function of ls (1) (which sorts
          down, but only if given no filename arguments).  It can produce fixed
          or variable width columns, and it figures out any options not
          explicitly specified.

          colm uses getopt(3C) to parse its options, so options may be strung
          together, as in -vw, and values may either adhere to their option
          letters or follow as the next argument.  The options are as follows:

          -v   Produce variable-width columns.  colm uses an iterative algorithm
               to find the maximum number of columns that allows at least the
               gutter-width between the widest element and the next column.  The
               -v option is incompatible with -c.

          -cn  Use fixed-width columns of width n.  Data will be truncated if
               necessary to fit the specified column width.  If -c is not used,
               colm expands the column width(s) to fit the output width.

          -gn  Use a "gutter" of n characters between columns.  The default is
               1.

          -nn  Use n fixed-width columns.  Without -n, colm fits as many columns
               in the given output width as it can.

          -s   Spread the columns to fit the output width.  Otherwise columns
               are made as narrow as possible, while leaving the gutter space
               between columns.  With fixed-width columns, the columns will be
               spread as far as possible while keeping their widths even.  WIth
               variable-width columns, the columns will be spread so that there
               is an even amount of white space between them.

          -wn  Sets the output width to n characters.  The output lines may be
               shorter, but cannot be longer than n.

          -ln  Sets the page length to n lines.  This option is not implemented.
               An error message will result if you try to use it.

          -Lc  Sets the leader character to c.  This character is used
               repeatedly to fill in the space between columns.  The default is
               to use as many spaces and tabs as are needed.  -L ' ' will cause
               colm not to use tabs.  Watch out for shell metacharacters.

                                        - 1 -       Formatted:  December 6, 2000

     LS(1)                                                                 LS(1)

          -ts  Use the literal string "s" to separate the columns, rather than a
               repeated leader character.  Watch out for shell metacharacters.
               There are two main differences between -L and -t: -L only allows
               a single character, while -t allows a string; and the leader
               character specified by -L is repeated to fill the space, whereas
               the string specified with -t is used only once between columns.
               Generally, -t will not produce even columns, while -L always
               will.

          -Tn  Specifies the output tab width as n characters.  The default is
               eight.

     DIAGNOSTICS
          Several errors and warnings can be produced by colm:
          A usage message is produced for illegal options.
          If any single input line is longer than the output width, colm
          terminates with an error.
          Illegal combinations of arguments and impossible conditions, such as
          20 columns of 30 characters in an output width of 79 columns, or
          selecting spreading with a fixed separator string, cause errors.
          Certain combinations of total number of lines and specified number of
          columns cannot produce balanced columns, even with the last column
          allowed to be short.  If this occurs, colm prints an explanatory
          message on stderr and uses a smaller number of columns than were
          specified.
          Attempting to do multi-page columnation (with -l) produces an error.
          Nonexistent or unreadable files produce an error.

     SEE ALSO
          pr(1), ls(1)

     BUGS
          Multi-page columnation is not implemented.

                                        - 2 -       Formatted:  December 6, 2000