infocmp(1M) - phpMan

Command: man perldoc info search(apropos)  


infocmp(1M)                                                                           infocmp(1M)



NAME
       infocmp - compare or print out terminfo descriptions

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

DESCRIPTION
       infocmp  can  be  used to compare a binary terminfo entry with other terminfo entries, re-
       write 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 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 vari-
       ables.

       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 different
       people, for the same or similar terminals.

       The -c option produces a list of each capability  that  is  common  between  two  or  more
       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 none of the given entries.  If
       no  termnames  are  given,  the  environment  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>
                      -C   use the termcap names
                      -r   when using -C, put out all capabilities in termcap form
                      -K   modifies the -C option, improving BSD-compatibility.

       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 con-
       vert most of the parameterized information, and anything not  converted  will  be  plainly
       marked in the output and commented out.  These should be edited by hand.

       For  best  results when converting to termcap format, you should use both -C and -r.  Nor-
       mally a termcap description is limited to 1023 bytes.  infocmp trims away  less  essential
       parts  to make it fit.  If you are converting to one of the (rare) termcap implementations
       which accept an unlimited size of termcap, you may want to add the -T option.  More  often
       however,  you must help the termcap implementation, and trim excess whitespace (use the -0
       option for that).

       All padding information for strings will be collected together and placed at the beginning
       of  the  string  where  termcap expects it.  Mandatory padding (padding information 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 normally be output.   Specifying  the
       -r  option will take off this restriction, allowing all capabilities to be output in term-
       cap form.  Normally you would use both the -C and -r  options.   The  actual  format  used
       incorporates  some  improvements  for  escaped  characters  from  terminfo  format.  For a
       stricter BSD-compatible translation, use the -K option rather than -C.

       Note that because padding is collected to the beginning of the capability, not  all  capa-
       bilities are output.  Mandatory 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 differences between the first termname and the
       other 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 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 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 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 descrip-
       tion 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 compi-
       lation time, is specifying extra use= fields that are superfluous.  infocmp will flag  any
       other termname use= fields that were not needed.

   Changing Databases [-A directory] [-B directory]
       Like  other  ncurses  utilities,  infocmp  looks  for the terminal descriptions in several
       places.  You can use the TERMINFO and TERMINFO_DIRS environment variables to override  the
       compiled-in default list of places to search (see curses(3X) for details).

       You  can also use the options -A and -B to override the list of places to search when com-
       paring terminal descriptions:

       o   The -A option sets the location for the first termname

       o   The -B option sets the location for the other termnames.

       Using these options, it is possible to compare descriptions for a terminal with  the  same
       name  located in two different databases.  For instance, you can use this feature for com-
       paring descriptions for the same terminal created by different people.

   Other Options
       -0   causes the fields to be printed on one line, without wrapping.

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

       -a   tells  infocmp  to  retain  commented-out  capabilities  rather than discarding them.
            Capabilities are commented by prefixing them with a period.

       -D   tells infocmp to print the database locations that it knows about, and exit.

       -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 versions 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  sup-
            port  for extended names required making the arrays of terminal capabilities separate
            from the TERMTYPE structure.

       -e   Dump the capabilities of the given terminal as a C initializer for a TERMTYPE  struc-
            ture  (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.

       -F   compare terminfo files.  This assumes that two  following  arguments  are  filenames.
            The files are searched for pairwise matches between entries, with two entries consid-
            ered 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.  Normally, to  reduce
            the  volume of the report, use references are not resolved before looking for differ-
            ences, but resolution can be forced by also specifying -r.

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

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

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

       -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 special 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 print-
            able expansion of the capability string with  sections  matching  recognized  actions
            translated  into  {}-bracketed  descriptions.  Here is a list of the DEC/ANSI special
            sequences recognized: i.



                                  Action        Meaning
                                  -----------------------------------------
                                  RIS           full reset
                                  SC            save cursor
                                  RC            restore cursor
                                  LL            home-down
                                  RSR           reset scroll region
                                  -----------------------------------------
                                  DECSTR        soft reset (VT320)
                                  S7C1T         7-bit controls (VT220)
                                  -----------------------------------------
                                  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
                                  -----------------------------------------
                                  ECMA[+-]AM    keyboard action mode
                                  ECMA[+-]IRM   insert replace mode
                                  ECMA[+-]SRM   send receive mode
                                  ECMA[+-]LNM   linefeed 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 Ren-
            dition,  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}).

       -l   Set output format to terminfo.

       -p   Ignore padding specifications when comparing strings.

       -q   Make the comparison listing shorter by omitting subheadings, and using "-" for absent
            capabilities, "@" for canceled rather than "NULL".

       -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 do not support  the  full  set  of
            SVR4/XSI  Curses  terminfo;  and  variants such as AIX that have their own extensions
            incompatible with SVr4/XSI.  Available terminfo subsets are "SVr1",  "Ultrix",  "HP",
            and  "AIX";  see terminfo(5) for details.  You can also choose the subset "BSD" which
            selects only capabilities with termcap equivalents recognized by 4.4BSD.

       -s [d|i|l|c]
            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  vari-
            able name, respectively.

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

       -t   tells tic to discard commented-out capabilities.  Normally when translating from ter-
            minfo to termcap, untranslatable capabilities are commented-out.

       -U   tells infocmp to not post-process the data after parsing the source file.  This  fea-
            ture  helps when comparing the actual contents of two source files, since it excludes
            the inferences that infocmp makes to fill in missing data.

       -V   reports the version of ncurses which was used in this program, and exits.

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

       -x   print  information  for  user-defined capabilities.  These are extensions to the ter-
            minfo repertoire which can be loaded using the -x option of tic.

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

EXTENSIONS
       The -0, -1, -E, -F, -G, -R, -T, -V, -a, -e, -f, -g, -i, -l, -p, -q and -t 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.

BUGS
       The -F option of infocmp(1M) should be a toe(1M) mode.

SEE ALSO
       captoinfo(1M), infotocap(1M), tic(1M), toe(1M), curses(3X), terminfo(5).

       http://invisible-island.net/ncurses/tctest.html

       This describes ncurses version 5.9 (patch 20130511).

AUTHOR
       Eric S. Raymond <esr AT snark.com> and
       Thomas E. Dickey <dickey AT invisible-island.net>



                                                                                      infocmp(1M)

Generated by $Id: phpMan.php,v 4.55 2007/09/05 04:42:51 chedong Exp $ Author: Che Dong
On Apache/2.4.6 (CentOS)
Under GNU General Public License
2024-12-23 11:16 @127.0.0.1 CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0!Valid CSS!