Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ infocmp(1M) — Amiga System V Release 4 Version 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

curses(3X)

captoinfo(1M)

terminfo(4)

tic(1M)



infocmp(1M)       MISC. REFERENCE MANUAL PAGES        infocmp(1M)



NAME
     infocmp - compare or print out terminfo descriptions

SYNOPSIS
     infocmp [-d] [-c] [-n] [-I] [-L] [-C] [-r] [-u] [-s d|i|l|c]
     [-v] [-V]
           [-1] [-w width] [-A directory] [-B directory] [term-
     name ...]

DESCRIPTION
     infocmp can be used to compare a binary terminfo entry  with
     other  terminfo  entries,  rewrite a terminfo description to
     take advantage of the use= terminfo field, or  print  out  a
     terminfo  description  from  the  binary  file  (term)  in a
     variety of formats.  In all cases, the boolean  fields  will
     be  printed  first, followed by the numeric fields, followed
     by the string fields.

  Default Options
     If no options are specified and zero or  one  termnames  are
     specified,  the -I option will be assumed.  If more than one
     termname is specified, the -d option will be assumed.

  Comparison Options [-d] [-c] [-n]
     infocmp compares the terminfo description of the first  ter-
     minal  termname  with  each of the descriptions given by the
     entries for the other terminal's termnames.  If a capability
     is defined for only one of the terminals, the value returned
     will depend on the type of the capability:   F  for  boolean
     variables,  -1  for  integer  variables, and NULL for string
     variables.

     -d      produces a list of each capability that is different
             between  two entries.  This option is useful to show
             the difference between two entries, created by  dif-
             ferent people, for the same or similar terminals.

     -c      produces a list of each capability  that  is  common
             between  two entries.  Capabilities that are not set
             are ignored.  This option can be  used  as  a  quick
             check to see if the -u option is worth using.

     -n      produces a list of each capability that is  in  nei-
             ther entry.  If no termnames are given, the environ-
             ment variable TERM will be  used  for  both  of  the
             termnames.  This can be used as a quick check to see
             if anything was left out of a description.

  Source Listing Options [-I] [-L] [-C] [-r]
     The -I, -L, and -C options will produce a source listing for
     each terminal named.
     -I      use the terminfo names



           Last change: Terminal Information Utilities          1





infocmp(1M)       MISC. REFERENCE MANUAL PAGES        infocmp(1M)



     -L      use the long C variable name listed in <term.h>
     -C      use the termcap names
     -r      when using -C, put out all capabilities  in  termcap
             form  If  no  termnames  are  given, the environment
             variable TERM will be used for  the  terminal  name.
             The  source  produced  by  the -C option may be used
             directly as a termcap entry,  but  not  all  of  the
             parameterized  strings may be changed to the termcap
             format.  infocmp will attempt to convert most of the
             parameterized  information,  but  anything  not con-
             verted will be plainly marked in the output and com-
             mented  out.   These  should be edited by hand.  All
             padding information for strings  will  be  collected
             together  and  placed at the beginning of the string
             where termcap expects it.  Mandatory  padding  (pad-
             ding  information  with  a trailing '/') will become
             optional.  All termcap variables no longer supported
             by terminfo, but which are derivable from other ter-
             minfo variables, will be output.  Not  all  terminfo
             capabilities  will  be  translated; only those vari-
             ables which were part of termcap  will  normally  be
             output.  Specifying the -r option will take off this
             restriction, allowing all capabilities to be  output
             in  termcap form.  Note that because padding is col-
             lected to the beginning of the capability,  not  all
             capabilities  are  output.  Mandatory padding is not
             supported.  Because termcap strings are not as flex-
             ible,  it  is  not always possible to convert a ter-
             minfo string capability into an  equivalent  termcap
             format.  A subsequent conversion of the termcap file
             back  into  terminfo  format  will  not  necessarily
             reproduce the original terminfo source.  Some common
             terminfo   parameter   sequences,   their    termcap
             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

  Use= Option [-u]
     -u      produces a terminfo source description of the  first
             terminal  termname  which  is relative to the sum of
             the descriptions given by the entries for the  other
             terminals  termnames.  It does this by analyzing the
             differences between the first termname and the other
             termnames  and  producing  a  description  with use=



           Last change: Terminal Information Utilities          2





infocmp(1M)       MISC. REFERENCE MANUAL PAGES        infocmp(1M)



             fields for the other terminals.  In this manner,  it
             is  possible  to  retrofit  generic terminfo entries
             into a terminal's description.  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 infocmp will show what can
             be done to change one description to be relative  to
             the  other.   A  capability will get printed with an
             at-sign (@) if it no  longer  exists  in  the  first
             termname, but one of the other termname entries con-
             tains a value for it.   A  capability's  value  gets
             printed  if  the  value in the first termname is not
             found in any of the other termname  entries,  or  if
             the    first   of   the   other   termname   entries
             that has this capability gives a different value for
             the capability than that in the first termname.  The
             order of the other termname entries is  significant.
             Since the terminfo compiler tic does a left-to-right
             scan  of  the  capabilities,  specifying  two   use=
             entries  that contain differing entries for the same
             capabilities will produce different results
             depending on the order that the  entries  are  given
             in.   infocmp  will  flag  any  such inconsistencies
             between the  other  termname  entries  as  they  are
             found.  Alternatively, specifying a capability after
             a use= entry  that  contains  that  capability  will
             cause the second specification to be ignored.  Using
             infocmp to recreate a description can  be  a  useful
             check  to  make  sure  that everything was specified
             correctly  in  the  original   source   description.
             Another error that does not cause incorrect compiled
             files, but will slow down the compilation  time,  is
             specifying  extra  use= fields that are superfluous.
             infocmp will flag any  other  termname  use=  fields
             that were not needed.

  Other Options [-s d|i|l|c] [-v] [-V] [-1] [-w width]
     -s      sorts the fields within each type according  to  the
             argument below:

             d    leave fields in the order that they are  stored
                  in the terminfo database.

             i    sort by terminfo name.

             l    sort by the long C variable name.

             c    sort by the termcap name.  If the -s option  is
                  not  given,  the  fields  printed  out  will be
                  sorted  alphabetically  by  the  terminfo  name
                  within  each type, except in the case of the -C
                  or the -L options, which cause the  sorting  to



           Last change: Terminal Information Utilities          3





infocmp(1M)       MISC. REFERENCE MANUAL PAGES        infocmp(1M)



                  be done by the termcap name or the long C vari-
                  able name, respectively.

     -v      prints out tracing information on standard error  as
             the program runs.

     -V      prints out the version of  the  program  in  use  on
             standard error and exit.

     -1      causes the fields to be printed out one to  a  line.
             Otherwise,  the  fields will be printed several to a
             line to a maximum width of 60 characters.

     -w      changes the output to width characters.

  Changing Databases [-A directory] [-B directory]
     The location of the compiled terminfo database is taken from
     the  environment variable TERMINFO .  If the variable is not
     defined, or the terminal is not found in that location,  the
     system       terminfo       database,       usually       in
     /usr/share/lib/terminfo, will be used.  The options  -A  and
     -B  may  be  used  to override this location.  The -A option
     will set TERMINFO for the first termname and the  -B  option
     will set TERMINFO for the other termnames.  With this, it is
     possible to compare descriptions for  a  terminal  with  the
     same  name located in two different databases.  This is use-
     ful for comparing descriptions for the same terminal created
     by different people.

FILES
     /usr/share/lib/terminfo/?/*    Compiled terminal description
     database.

SEE ALSO
     curses(3X), captoinfo(1M), terminfo(4), tic(1M).




















           Last change: Terminal Information Utilities          4



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026