Manual page for INFOCMP(8V)
infocmp - compare or print out terminfo descriptions
[ -cdnILCruvV1 ]
[ -sd ]
[ -si ]
[ -sl ]
[ -sc ]
are the same as those for
The System V version of this command is available with the
software installation option. Refer to
[a manual with the abbreviation INSTALL]
for information on how to install optional software.
compares a binary
entry with other terminfo entries, rewrites a
description to take advantage of the
or prints out a
description from the corresponding binary file in a variety of formats.
It displays boolean fields first, then
numeric fields, then string fields.
It can also convert a
entry to a
to perform this conversion.
variables are not supported by
but those that can be derived from
variables are displayed. Not all
capabilities are translated either;
only those that are allowed in a
entry are normally displayed.
option eliminates this restriction, allowing all capabilities to be
Because padding is collected at the beginning of a capability,
not all capabilities are displayed. Since
mandatory padding is not supported by
strings are not as flexible, it is not always possible to convert a
string capability into an equivalent working
capability. Also, a subsequent conversion of the
file back into
format will not necessarily reproduce the original source;
attempts to convert parameterized strings, and
comments out those that it can not.
parameter sequences, their
equivalents, and some
terminal types which commonly have such sequences, are:
Terminfo Termcap Representative Terminals
%p1%c %. adm
%p1%d %d hp, ANSI standard, vt100
%p1%'x'%+%c %+x concept
%i %i ANSI standard, vt100
%p1%?%'x'%>%t%p1%'y'%+%; %>xy concept
%p2 is printed before %p1 %r hp
arguments are given, the environment variable
is used for all expected
If no options are specified and either zero or one
is specified, the
option is assumed to be in effect.
If more than one
is specified, the
option is assumed.
compares the description of the first terminal
with each of the descriptions for terminals listed in subsequent
If a capability is defined for only one of the terminals,
the value returned will depend on the type of the capability:
for boolean variables,
for integer variables,
for string variables.
Produce a list of capabilities common to both entries.
Capabilities that are not set are ignored.
This option can be used as a quick check to see if the
option is worth using.
Produce a list of capabilities that differ between descriptions.
Produce a list of capabilities in neither entry.
Source Listing Options
options produce a source listing for each terminal named.
Use the long C variable name listed in
Display only those capabilities that have
equivalents, using the
names and displaying them in
form whenever possible.
The source produced by the
option may be used directly as a
entry, but not all of the
parameterized strings may be changed to the
All padding information for strings is collected together and placed at
the beginning of the string where
Mandatory padding (padding information with a trailing
will become optional.
display all capabilities, not just those capabilities that have
source description for the first named terminal
which is relative to the descriptions given by the entries for all
terminals named subsequently on the command line, by
analyzing the differences between them, and
producing a description with
fields for the other terminals.
In this manner, it is possible to retrofit generic terminfo entries into a
Or, if two similar terminals exist, but were coded at different times or by
different people so that each description is a full description, using
will show what can be done to change one description to be relative to the
A capability is displayed with an at-sign
if it no longer exists in
the first terminal, but one of the other terminal
entries contains a value for it.
A capability's value gets printed if the value in the first
is not found in any of the other
entries, or if the first of the other
entries has a different value for that capability.
The order of the other
entries is significant.
Since the terminfo compiler
does a left-to-right scan of the capabilities, specifying two
entries that contain differing entries for the same capabilities will
produce different results, depending on the order in which they are
flags any such inconsistencies between the other
entries as they are found.
Alternatively, specifying a capability
entry that contains it, will cause the second specification to
to recreate a description can be a useful check to make sure that
everything was specified correctly in the original.
slows down the comparison, but is not fatal;
Sort fields in the order that they are
stored in the
Sort fields by
Sort fields by the long C variable name.
Sort fields by the
If no sorting option is given,
fields are sorted alphabetically by the
name within each type, except in the case of the
options, which cause the sorting to be done by the
name or the long C variable name, respectively.
The location of the compiled
database is taken from the environment variable
If the variable is not defined, or if the terminal is not found in that
location, the system
database, usually in
may be used to override this location. With these options, it is
possible to compare descriptions for a terminal with the same name
located in two different databases. This is useful for comparing
descriptions for the same terminal created by different people.
for the first
for the remaining
Print out tracing information on the standard error.
Print out the version of the program in use on the standard error
Print fields out one to a line.
Otherwise, fields are printed several to a line to a maximum width
of 60 characters.
- -w width
Change the output to
compiled terminal description database
- malloc is out of space!
There was not enough memory available to process
all the terminal descriptions requested.
in several smaller stages (with fewer
- use= order dependency found:
A value specified in one relative terminal specification was different from
that in another relative terminal specification.
- `use=term' did not add anything to the description.
A relative terminal name did not contribute anything to the final
must have at least two terminal names for a comparision to be done.
options require at least two terminal names.
Created by unroff & hp-tools.
© by Hans-Peter Bischof. All Rights Reserved (1997).
Last modified 21/April/97