Files
funkpower 74a684c269 ansi: show ANSI art in a UTF-8 terminal, or as plain or shaded text
Draws an .ans file into a grid the way an ANSI-BBS terminal would (cursor
moves, the wrap at the SAUCE width, iCE colours) and writes it out as UTF-8:
in colour, --plain, or --mono with coloured areas shaded by brightness. info
prints the SAUCE record. One C99 file with no dependencies.
2026-10-22 19:30:17 -04:00

70 lines
1.9 KiB
Groff

.TH ANSI 1 "October 2026" "ansi 1.0.0" "User Commands"
.SH NAME
ansi \- show ANSI art in a UTF-8 terminal, or turn it into plain text
.SH SYNOPSIS
.B ansi
[\fB\-p\fR | \fB\-m\fR] [\fB\-w\fR \fIwidth\fR] [\fIfile\fR ...]
.br
.B ansi info
\fIfile\fR ...
.SH DESCRIPTION
ANSI art, the art of the BBS scene, is CP437 text with ANSI escape codes for
colour and cursor movement, laid out for a terminal of a fixed width, usually
80 columns, that wraps it.
.B ansi
draws each
.I file
into a grid the way an ANSI-BBS terminal would, following the cursor moves and
the wrap, and writes the grid out as UTF-8 lines a modern terminal shows as
the artist drew them.
.PP
The SAUCE record at the end of a file, when there is one, gives the width; a
background with the blink attribute is shown bright, as iCE colour. With no
.IR file ,
or when
.I file
is
.BR \- ,
.B ansi
reads standard input.
.SH OPTIONS
.TP
.BR \-p ", " \-\-plain
Write the characters only, without colour.
.TP
.BR \-m ", " \-\-mono
Write without colour, redrawing each coloured area as shading by how bright
its colour looks: bright areas as full blocks, dark ones as light shade or
space, and half blocks where the top and bottom of a cell differ. Art built
from coloured spaces keeps its shape this way, where
.B \-\-plain
would leave it blank. Useful for newsgroups and mail, which show no colour.
.TP
.BR \-w ", " \-\-width " " \fIwidth\fR
Lay the art out
.I width
columns wide instead of the SAUCE width (or 80).
.TP
.B info
Print each file's SAUCE record: title, artist, group, date and size.
.TP
.BR \-h ", " \-\-help
Show a summary of usage.
.TP
.BR \-V ", " \-\-version
Show the version.
.SH EXAMPLES
.nf
ansi piece.ans | less \-R
ansi \-\-mono piece.ans > piece.txt
ansi info *.ans
curl \-s https://16colo.rs/pack/<pack>/raw/<piece>.ans | ansi
.fi
.SH EXIT STATUS
0 on success, 1 for a usage error, 2 when a file could not be read.
.SH SEE ALSO
.BR less (1),
.BR iconv (1)
.SH AUTHOR
funkpower <[email protected]>