col - reverse line-feeds filter
The col utility reads from the standard input and writes to
the standard output. It performs the line overlays implied
by reverse line-feeds, and by forward and reverse half-
line-feeds. Unless -x is used, all blank characters in the
input will be converted to tab characters wherever possible.
col is particularly useful for filtering multi-column output
made with the .rt command of nroff(1) and output resulting
from use of the tbl(1) preprocessor.
The ASCII control characters SO and SI are assumed by col to
start and end text in an alternative character set. The
character set to which each input character belongs is
remembered, and on output SI and SO characters are generated
as appropriate to ensure that each character is written in
the correct character set.
On input, the only control characters accepted are space,
backspace, tab, carriage-return and newline characters, SI,
SO, VT, reverse line-feed, forward half-line-feed and
reverse half-line-feed. The VT character is an alternative
form of full reverse line-feed, included for compatibility
with some earlier programs of this type. The only other
characters to be copied to the output are those that are
The ASCII codes for the control functions and line-motion
sequences mentioned above are as given in the table below.
ESC stands for the ASCII escape character, with the octal
code 033; ESC- means a sequence of two characters, ESC fol-
lowed by the character x.
reverse line-feed ESC-7
reverse half-line-feed ESC-8
forward half-line-feed ESC-9
vertical-tab (VT) 013
start-of-text (SO) 016
end-of-text (SI) 017
-b Assume that the output device in use is not capable of
backspacing. In this case, if two or more characters
are to appear in the same place, only the last one
read will be output.
-f Although col accepts half-line motions in its input,
it normally does not emit them on output. Instead,
text that would appear between lines is moved to the
next lower full-line boundary. This treatment can be
suppressed by the -f (fine) option; in this case, the
output from col may contain forward half-line-feeds
(ESC-9), but will still never contain either kind of
reverse line motion.
-p Normally, col will ignore any escape sequences unknown
to it that are found in its input; the -p option may
be used to cause col to output these sequences as reg-
ular characters, subject to overprinting from reverse
line motions. The use of this option is highly
discouraged unless the user is fully aware of the tex-
tual position of the escape sequences.
-x Prevent col from converting blank characters to tab
characters on output wherever possible. Tab stops are
considered to be at each column position n such that n
modulo 8 equals 1.
See environ(5) for descriptions of the following environment
variables that affect the execution of col: LC_CTYPE,
LC_MESSAGES, and NLSPATH.
The following error values are returned:
0 Successful completion.
>0 An error occurred.
See attributes(5) for descriptions of the following attri-
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
| Availability | SUNWesu |
| CSI | enabled |
nroff(1), tbl(1), ascii(5), attributes(5), environ(5)
The input format accepted by col matches the output produced
by nroff with either the -T37 or -Tlp options. Use -T37 (and
the -f option of col) if the ultimate disposition of the
output of col will be a device that can interpret half-line
motions, and -Tlp otherwise.
col cannot back up more than 128 lines or handle more than
800 characters per line.
Local vertical motions that would result in backing up over
the first line of the document are ignored. As a result, the
first line must not have any superscripts.
Man(1) output converted with