sbase/cols.1
sin 9355d88aae Add COLUMNS support to cols(1)
First attempt to see if COLUMNS is set, if that fails an ioctl()
is issued to find the width of the output device.  If that fails
as well, we default to 65 chars per line.
2015-02-19 11:25:51 +00:00

58 lines
1.1 KiB
Groff

.Dd February 19, 2015
.Dt COLS 1
.Os sbase
.Sh NAME
.Nm cols
.Nd columnize output
.Sh SYNOPSIS
.Nm
.Op Fl c Ar num
.Op Ar file ...
.Sh DESCRIPTION
.Nm
reads each
.Ar file
in sequence and writes them to stdout, in as many vertical
columns as will fit in
.Ar num
character columns. If no
.Ar file
is given,
.Nm
reads from stdin.
.Pp
By default
.Nm cols
tries to figure out the width of the output
device. If that fails, it defaults to 65 chars.
.Sh OPTIONS
.Bl -tag -width Ds
.It Fl c Ar chars
Set the maximum number of character columns to use
(unless the input contains lines longer than
.Ar num
characters).
.El
.Sh ENVIRONMENT
.Bl -tag -width COLUMNS
.It COLUMNS
If this variable is set, the value is used as the
width of the output device.
.El
.Sh HISTORY
.Nm
is similar to
.Xr mc 1
in Plan 9. It was renamed to
.Nm
to avoid the name collision with the popular file manager
Midnight Commander.
.Sh CAVEATS
This implementation of
.Nm
assumes that each UTF-8 code point occupies one character cell,
and thus mishandles TAB characters (among others).
.Pp
.Nm
currently mangles files which contain embedded NULs.