icon Top 9 categories map      RocketAware >

infocmp(1)

Tips: Browse or Search all pages for efficient awareness of more than 6000 of the most popular reusable and open source applications, functions, libraries, and FAQs.


The "RKT couplings" below include links to source code, updates, additional information, advice, FAQs, and overviews.


Home

Search all pages


Subjects

By activity
Professions, Sciences, Humanities, Business, ...

User Interface
Text-based, GUI, Audio, Video, Keyboards, Mouse, Images,...

Text Strings
Conversions, tests, processing, manipulation,...

Math
Integer, Floating point, Matrix, Statistics, Boolean, ...

Processing
Algorithms, Memory, Process control, Debugging, ...

Stored Data
Data storage, Integrity, Encryption, Compression, ...

Communications
Networks, protocols, Interprocess, Remote, Client Server, ...

Hard World
Timing, Calendar and Clock, Audio, Video, Printer, Controls...

File System
Management, Filtering, File & Directory access, Viewers, ...

    

RocketLink!--> Man page versions:






infocmp(1)                                             infocmp(1)


NAME
       infocmp - compare or print out terminfo descriptions



SYNOPSIS
       infocmp [-dceEGgnpILCuV1] [-v n] [-s d| i| l| c]
             [-w width] [-A directory] [-B directory]
             [termname...]

DESCRIPTION
       infocmp  can  be  used  to compare a binary terminfo entry
       with other terminfo entries, rewrite a  terminfo  descrip-
       tion  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
       terminal  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.

       The -d option 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.

       The  -c  option 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.

       The -n option produces a list of each capability  that  is
       in neither 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
      -L   use the long C variable name listed in <term.h>




                                                                1





infocmp(1)                                             infocmp(1)


      -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 parameterized strings can
       be changed to the termcap format.  infocmp will attempt to
       convert  most  of  the parameterized information, and any-
       thing not converted will be plainly marked in  the  output
       and commented 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 (padding informa-
       tion with a trailing '/') will become optional.

       All termcap variables no longer supported by terminfo, but
       which are derivable from other terminfo variables, will be
       output.  Not all terminfo capabilities will be translated;
       only  those variables which were part of termcap will nor-
       mally 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 collected to the beginning of
       the  capability,  not all capabilities are output.  Manda-
       tory padding is not supported.   Because  termcap  strings
       are  not as flexible, it is not always possible to convert
       a terminfo 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                          %iq       ANSI standard, vt100
     %p1%?%'x'%>%t%p1%'y'%+%;    %>xy      concept
     %p2 is printed before %p1   %r        hp

   Use= Option [-u]
       The  -u  option  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  dif-
       ferences   between   the  first  termname  and  the  other



                                                                2





infocmp(1)                                             infocmp(1)


       termnames and producing a description with use= 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 rel-
       ative 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 contains 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 capabil-
       ity  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 con-
       tain differing entries for the same capabilities will pro-
       duce different results depending on  the  order  that  the
       entries  are  given in.  infocmp will flag any such incon-
       sistencies 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 speci-
       fication  to  be  ignored.   Using  infocmp  to recreate a
       description can be a useful check to make sure that every-
       thing  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 speci-
       fying extra use= fields  that  are  superfluous.   infocmp
       will  flag  any  other  termname use= fields that were not
       needed.

   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 loca-
       tion,  the  system  terminfo  database, in /usr/share/ter-
       minfo, 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 useful for
       comparing descriptions for the same  terminal  created  by
       different people.




                                                                3





infocmp(1)                                             infocmp(1)


   Other  Options  [-s d|i|l|c] [-1FTVefip] [-Rsubset] [-v n] [-w
       width]
       The -s option 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 be done by the
            termcap name or the long  C  variable  name,  respec-
            tively.

       -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.

       -F   compare  terminfo  files.  This assumes that two fol-
            lowing  arguments  are  filenames.   The  files   are
            searched  for  pairwise matches between entries, with
            two entries considered to match if any of their names
            do.   The  report  printed  to  standard output lists
            entries with  no  matches  in  the  other  file,  and
            entries  with  more than one match.  For entries with
            exactly one match it includes a difference report.

       -G   Display constant literals in decimal form rather than
            their character equivalents.

       -Rsubset
            Restrict  output  to  a given subset.  This option is
            for use with archaic versions of terminfo like  those
            on SVr1, Ultrix, or HP/UX that don't support the full
            set of SVR4/XSI Curses terminfo; and outright  broken
            ports  like AIX that have their own extensions incom-
            patible with SVr4/XSI.   Available  terminfo  subsets
            are  "SVr1",  "Ultrix",  "HP",  and  "AIX";  see ter-
            minfo(5) for details.  You can also choose the subset
            "BSD"  which  selects  only capabilities with termcap
            equivalents recognized by 4.4BSD.

       -T   eliminates size-restrictions on the  generated  text.
            This is mainly useful for testing and analysis, since
            the compiled descriptions are limited (e.g., 1023 for
            termcap, 4096 for terminfo).




                                                                4





infocmp(1)                                             infocmp(1)


       -V   prints out the version of the program in use on stan-
            dard error and exits.

       -e   Dump the capabilities of the given terminal  as  a  C
            initializer  for  a  TERMTYPE structure (the terminal
            capability structure in the <term.h>).   This  option
            is  useful  for  preparing  versions  of  the  curses
            library hardwired for a given terminal type.

       -E   Dump  the  capabilities  of  the  given  terminal  as
            tables,  needed  in  the C initializer for a TERMTYPE
            structure (the terminal capability structure  in  the
            <term.h>).   This option is useful for preparing ver-
            sions of the curses library  hardwired  for  a  given
            terminal  type.   The tables are all declared static,
            and are named according to the type and the  name  of
            the corresponding terminal entry.

            Before  ncurses  5.0, the split between the -e and -E
            options was not  needed;  but  support  for  extended
            names required making the arrays of terminal capabil-
            ities separate from the TERMTYPE structure.

       -f   Display  complex  terminfo  strings   which   contain
            if/then/else/endif expressions indented for readabil-
            ity.

       -g   Display constant character literals  in  quoted  form
            rather than their decimal equivalents.

       -i   Analyze the initialization (is1, is2, is3), and reset
            (rs1, rs2, rs3), strings  in  the  entry.   For  each
            string,  the code tries to analyze it into actions in
            terms of the other capabilities in the entry, certain
            X3.64/ISO  6429/ECMA-48 capabilities, and certain DEC
            VT-series private modes (the set of  recognized  spe-
            cial  sequences  has  been  selected for completeness
            over the existing terminfo  database).   Each  report
            line  consists  of the capability name, followed by a
            colon and space, followed by a printable expansion of
            the  capability  string with sections matching recog-
            nized actions translated into  {}-bracketed  descrip-
            tions.   Here  is  a  list  of  the  DEC/ANSI special
            sequences recognized:

                  Action        Meaning
                  -----------------------------------------
                  RIS           full reset
                  SC            save cursor
                  RC            restore cursor
                  LL            home-down
                  RSR           reset scroll region





                                                                5





infocmp(1)                                             infocmp(1)


                  ISO DEC G0    enable DEC graphics for G0
                  ISO UK G0     enable UK chars for G0
                  ISO US G0     enable US chars for G0
                  ISO DEC G1    enable DEC graphics for G1
                  ISO UK G1     enable UK chars for G1
                  ISO US G1     enable US chars for G1

                  DECPAM        application keypad mode
                  DECPNM        normal keypad mode
                  DECANSI       enter ANSI mode

                  DEC[+-]CKM    application cursor keys
                  DEC[+-]ANM    set VT52 mode
                  DEC[+-]COLM   132-column mode
                  DEC[+-]SCLM   smooth scroll
                  DEC[+-]SCNM   reverse video mode
                  DEC[+-]OM     origin mode
                  DEC[+-]AWM    wraparound mode
                  DEC[+-]ARM    auto-repeat mode

            It also recognizes  a  SGR  action  corresponding  to
            ANSI/ISO  6429/ECMA  Set Graphics Rendition, with the
            values NORMAL, BOLD, UNDERLINE, BLINK,  and  REVERSE.
            All  but NORMAL may be prefixed with `+' (turn on) or
            `-' (turn off).

            An  SGR0  designates  an  empty  highlight   sequence
            (equivalent to {SGR:NORMAL}).

       -p   Ignore padding specifications when comparing strings.

       -v n prints out tracing information on standard  error  as
            the  program runs.  Higher values of n induce greater
            verbosity.

       -w width
            changes the output to width characters.

FILES
       /usr/share/terminfo Compiled     terminal      description
                           database.

EXTENSIONS
       The -E, -F, -G, -R, -T, -e, -f, -g, -i, and -p options are
       not supported in SVr4 curses.

       The -r option's notion of `termcap' capabilities is System
       V  Release  4's.   Actual  BSD curses versions will have a
       more restricted set.  To see only the 4.4BSD set,  use  -r
       -RBSD.

SEE ALSO
       captoinfo(1), tic(1), curses(3), terminfo(5).




                                                                6





infocmp(1)                                             infocmp(1)


AUTHOR
       Eric  S.  Raymond  <esr@snark.thyrsus.com>  and  Thomas E.
       Dickey <dickey@clark.net>






















































                                                                7



Source: OpenBSD 2.6 man pages. Copyright: Portions are copyrighted by BERKELEY
SOFTWARE DESIGN, INC., The Regents of the University of California, Massachusetts
Institute of Technology, Free Software Foundation, FreeBSD Inc., and others.



(Corrections, notes, and links courtesy of RocketAware.com)


[Detailed Topics]


[Overview Topics]



RocketLink!--> Man page versions:






Rapid-Links: Search | About | Comments | Submit Path: RocketAware > infocmp.1/
RocketAware.com is a service of Mib Software
Copyright 1999, Forrest J. Cavalier III. All Rights Reserved.
We welcome submissions and comments