X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=doc%2Fhtml%2Fman%2Finfocmp.1m.html;h=2ddec2dbb302b39739433161cc0dfbae8efcc9b7;hp=cee761d94b92d3a1a089ab73a0b44c81c34d94c2;hb=HEAD;hpb=b5be26931d6488adcb1ff8bc07df9de378ce0d27 diff --git a/doc/html/man/infocmp.1m.html b/doc/html/man/infocmp.1m.html index cee761d9..505de42e 100644 --- a/doc/html/man/infocmp.1m.html +++ b/doc/html/man/infocmp.1m.html @@ -1,7 +1,8 @@ - - -infocmp 1m - - + +infocmp 1m 2024-03-16 ncurses 6.4 User commands + + -

infocmp 1m

+

infocmp 1m 2024-03-16 ncurses 6.4 User commands

-infocmp(1m)                                                        infocmp(1m)
+infocmp(1m)                      User commands                     infocmp(1m)
 
 
 
@@ -51,35 +52,35 @@
 
 
 

SYNOPSIS

-       infocmp [-1CDEFGIKLTUVWcdegilnpqrtux]
+       infocmp [-1cCdDeEFgGiIKlLnpqrtTuUVWx]
              [-v n] [-s d| i| l| c] [-Q n] [-R subset]
              [-w width] [-A directory] [-B directory]
-             [termname...]
+             [terminal-type ...]
 
 
 

DESCRIPTION

-       infocmp  can be used to compare a binary terminfo entry with other ter-
-       minfo 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
+       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.
+       If no  options  are  specified  and  zero  or  one  terminal-types  are
+       specified,  the  -I option will be assumed.  If more than one terminal-
+       type is specified, the -d option will be assumed.
 
 
-

Comparison Options [-d] [-c] [-n]

+

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 depends on the type of the capabil-
-       ity:
+       terminal-type  with  each  of the descriptions given by the entries for
+       the other terminal's terminal-types.  If a capability  is  defined  for
+       only  one  of  the terminals, the value returned depends on the type of
+       the capability:
 
-       o   F for missing boolean variables
+       o   F for missing Boolean variables
 
        o   NULL for missing integer or string variables
 
@@ -95,12 +96,12 @@
 
        -c   produces a list of each capability that is common between  two  or
             more entries.  Missing capabilities are ignored.  Each item in the
-            list shows "=" after the capability name, followed by the capabil-
-            ity value.
+            list  shows  "="  after  the  capability  name,  followed  by  the
+            capability value.
 
-            The  -u option provides a related output, showing the first termi-
-            nal description rewritten to use the second as  a  building  block
-            via the "use=" clause.
+            The  -u  option  provides  a  related  output,  showing  the first
+            terminal description rewritten to use the  second  as  a  building
+            block via the "use=" clause.
 
        -n   produces  a  list  of each capability that is in none of the given
             entries.  Each item in the list shows "!"  before  the  capability
@@ -110,22 +111,22 @@
             option to add the BSD-compatibility capabilities  (names  prefixed
             with "OT").
 
-            If  no  termnames are given, infocmp uses the environment variable
-            TERM for each of the termnames.
+            If  no  terminal-types  are  given,  infocmp  uses the environment
+            variable TERM for each of the terminal-types.
 
 
-

Source Listing Options [-I] [-L] [-C] [-r]

-       The -I, -L, and -C options will produce a source listing for each  ter-
-       minal named.
+

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.
+                   -I   use terminfo capability codes
+                   -L   use "long" capability names
+                   -C   use termcap capability codes
+                   -r   with -C, include nonstandard capabilities
+                   -K   with -C, improve BSD compatibility
 
-       If  no  termnames are given, the environment variable TERM will be used
-       for the terminal name.
+       If  no  terminal-types 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
@@ -142,94 +143,96 @@
        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.  Manda-
-       tory padding (padding information with  a  trailing  "/")  will  become
+       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  ter-
-       minfo  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
-       termcap form.  Normally you would use both the -C and -r options.   The
-       actual  format  used incorporates some improvements for escaped charac-
-       ters 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 capabil-
-       ity, not all capabilities are output.  Mandatory padding  is  not  sup-
-       ported.   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.
+       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 termcap 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 capabilities 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  ter-
-       minal  termname  which is relative to the sum of the descriptions given
-       by the entries for the other terminals termnames.  It does this by ana-
-       lyzing  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 ter-
-       minfo compiler tic does a left-to-right scan of the capabilities, spec-
-       ifying  two  use=  entries  that contain differing entries for the same
+                 terminfo                   termcap   Terminal Types
+                 ----------------------------------------------------
+                 %p1%c                      %.        ansi-m
+                 %p1%d                      %d        ansi, vt100
+                 %p1%' '%+%c                %+x       vt52
+                 %i                         %iq       ansi, vt100
+                 %p1%?%'x'%>%t%p1%'y'%+%;   %>xy      annarbor4080
+                 %p2...%p1                  %r        hpgeneric
+
+
+

Use= Option [-u]

+       The -u option produces a  terminfo  source  description  of  the  first
+       terminal terminal-type which is relative to the sum of the descriptions
+       given by the entries for the other terminal-types.   It  does  this  by
+       analyzing  the  differences  between  the  first terminal-types and the
+       other terminal-types 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 be printed with an at-sign (@) if it no longer exists
+       in  the first terminal-type, but one of the other terminal-type entries
+       contains a value for it.  A capability's value will be printed  if  the
+       value  in  the  first  terminal-type  is  not found in any of the other
+       terminal-type entries, or if  the  first  of  the  other  terminal-type
+       entries  that  has  this  capability  gives  a  different value for the
+       capability than that in the first terminal-type.
+
+       The order of the other terminal-type 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.
+       the entries are given in.  infocmp will flag any  such  inconsistencies
+       between the other terminal-type 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
+       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.
+       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 terminal-type use= fields
+       that were not needed.
 
    Changing Databases [-A directory] [-B directory]
-       Like  other  ncurses utilities, infocmp looks for the terminal descrip-
-       tions 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).
+       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), as well as the Fetching
+       Compiled Descriptions section in terminfo(5).
 
        You can also use the options -A and -B to override the list  of  places
        to search when comparing terminal descriptions:
 
-       o   The -A option sets the location for the first termname
+       o   The -A option sets the location for the first terminal-type
 
-       o   The -B option sets the location for the other termnames.
+       o   The -B option sets the location for the other terminal-types.
 
-       Using  these options, it is possible to compare descriptions for a ter-
-       minal with the same name  located  in  two  different  databases.   For
+       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 comparing descriptions for the
        same terminal created by different people.
 
@@ -249,114 +252,114 @@
             and exit.
 
        -E   Dump  the  capabilities of the given terminal as tables, needed in
-            the C initializer for a TERMTYPE structure (the terminal  capabil-
-            ity structure in the <term.h>).  This option is useful for prepar-
-            ing 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  support  for extended names required making the
-            arrays of terminal capabilities separate from the TERMTYPE  struc-
-            ture.
+            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 support 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 structure (the terminal  capability  structure  in  the
-            <term.h>).   This  option  is useful for preparing versions of the
+            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.
 
        -F   compare terminfo files.  This assumes that two following 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.  Normally, to reduce the volume of the  report,
-            use  references  are  not resolved before looking for differences,
+            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.  Normally, to reduce the volume of the report,
+            use references are not resolved before  looking  for  differences,
             but resolution can be forced by also specifying -r.
 
-       -f   Display complex terminfo strings which contain  if/then/else/endif
+       -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 char-
-            acter equivalents.
+       -G   Display constant  literals  in  decimal  form  rather  than  their
+            character equivalents.
 
-       -g   Display constant character literals in  quoted  form  rather  than
+       -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, as  well  as  those  used  for  start-
-            ing/stopping  cursor-positioning  mode  (smcup,  rmcup) as well as
-            starting/stopping keymap mode (smkx, rmkx).
+       -i   Analyze the initialization (is1, is2, is3), and reset  (rs1,  rs2,
+            rs3),   strings   in   the  entry,  as  well  as  those  used  for
+            starting/stopping cursor-positioning mode (smcup, rmcup)  as  well
+            as starting/stopping keymap mode (smkx, rmkx).
 
-            For each string, the code tries to  analyze  it  into  actions  in
-            terms  of  the  other capabilities in the entry, certain X3.64/ISO
+            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 printable expansion of the capability  string
-            with   sections   matching   recognized  actions  translated  into
+            (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 printable 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:
 
-                         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  Rendition, with the values NORMAL, BOLD,
-            UNDERLINE, BLINK, and REVERSE.  All but  NORMAL  may  be  prefixed
-            with
-
-            o   "+" (turn on) or
-
-            o   "-" (turn off).
-
-            An  SGR0  designates  an  empty  highlight sequence (equivalent to
-            {SGR:NORMAL}).
+                      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 Rendition, with the values NORMAL, BOLD, UNDERLINE, BLINK, and
+       REVERSE.  All but NORMAL may be prefixed with
+
+              o   "+" (turn on) or
+
+              o   "-" (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 n Rather than show source in terminfo (text) format, print the  com-
-            piled  (binary) format in hexadecimal or base64 form, depending on
-            the option's value:
+       -Q n Rather than show source  in  terminfo  (text)  format,  print  the
+            compiled  (binary) format in hexadecimal or base64 form, depending
+            on the option's value:
 
                1  hexadecimal
 
@@ -364,41 +367,53 @@
 
                3  hexadecimal and base64
 
+            For example, this prints the compiled terminfo value as  a  string
+            which could be assigned to the TERMINFO environment variable:
+
+                infocmp -0 -q -Q2
+
        -q   This makes the output a little shorter:
 
-            o   Make the comparison listing shorter by  omitting  subheadings,
+            o   Make  the  comparison listing shorter by omitting subheadings,
                 and using "-" for absent capabilities, "@" for canceled rather
                 than "NULL".
 
-            o   However, show differences between absent and  cancelled  capa-
-                bilities.
+            o   However,   show   differences  between  absent  and  cancelled
+                capabilities.
 
             o   Omit the "Reconstructed from" comment for source listings.
 
        -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
+            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.
 
-            o   Available  terminfo  subsets  are  "SVr1", "Ultrix", "HP", and
+            o   Available terminfo subsets are  "SVr1",  "Ultrix",  "HP",  and
                 "AIX"; see terminfo(5) for details.
 
-            o   You can also choose the subset "BSD" which selects only  capa-
-                bilities  with  termcap equivalents recognized by 4.4BSD.  The
-                -C option sets the "BSD" subset as a side-effect.
+            o   You  can  also  choose  the  subset  "BSD"  which selects only
+                capabilities with termcap equivalents recognized by 4.4BSD.
 
             o   If you select any other value for -R, it is  the  same  as  no
-                subset,  i.e., all capabilities are used.  The -I option like-
-                wise selects no subset as a side-effect.
+                subset, i.e., all capabilities are used.
+
+            A  few  options  override the subset selected with -R, if they are
+            processed later in the command parameters:
+
+            -C   sets the "BSD" subset as a side-effect.
+
+            -I   sets the subset to all capabilities.
+
+            -r   sets the subset to all capabilities.
 
        -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 ter-
-                 minfo database.
+            d    leave  fields  in  the  order  that  they  are  stored in the
+                 terminfo database.
 
             i    sort by terminfo name.
 
@@ -414,26 +429,26 @@
 
        -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  ter-
-            minfo).
+            descriptions  are  limited  (e.g.,  1023  for  termcap,  4096  for
+            terminfo).
 
        -t   tells  tic  to  discard commented-out capabilities.  Normally when
             translating from terminfo to termcap, untranslatable  capabilities
             are commented-out.
 
        -U   tells  infocmp  to  not  post-process  the  data after parsing the
-            source file.  This feature helps when comparing  the  actual  con-
-            tents  of  two source files, since it excludes the inferences that
-            infocmp makes to fill in missing data.
+            source  file.   This  feature  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
+       -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.
 
             The optional parameter n is a number  from  1  to  10,  inclusive,
-            indicating the desired level of detail of information.  If ncurses
+            indicating the desired level of detail of information.  If ncurses
             is built  without  tracing  support,  the  optional  parameter  is
             ignored.
 
@@ -443,49 +458,80 @@
        -w width
             changes the output to width characters.
 
-       -x   print information for user-defined capabilities.  These are exten-
-            sions  to the terminfo repertoire which can be loaded using the -x
-            option of tic.
+       -x   print information for user-defined capabilities (see user_caps(5).
+            These  are  extensions  to  the  terminfo  repertoire which can be
+            loaded using the -x option of tic.
 
 
 

FILES

-       /usr/share/terminfo Compiled terminal description database.
+       /usr/share/terminfo
+              compiled terminal description database
 
 
 

EXTENSIONS

        The -0, -1, -E, -F, -G, -Q, -R, -T, -V, -a, -e, -f, -g, -i, -l, -p,  -q
        and -t options are not supported in SVr4 curses.
 
-       SVr4 infocmp does not distinguish between absent and cancelled capabil-
-       ities.  Also, it shows missing integer capabilities as -1 (the internal
-       value  used  to represent missing integers).  This implementation shows
-       those as "NULL", for consistency with missing strings.
+       SVr4   infocmp  does  not  distinguish  between  absent  and  cancelled
+       capabilities.  Also, it shows missing integer capabilities as  -1  (the
+       internal   value   used   to   represent   missing   integers).    This
+       implementation shows those as  "NULL",  for  consistency  with  missing
+       strings.
 
-       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
+       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.
+

PORTABILITY

+       X/Open  Curses,  Issue  7 (2009) provides a description of infocmp.  It
+       does not mention the options used for converting to termcap format.
 
 
-

SEE ALSO

-       captoinfo(1m),  infotocap(1m),  tic(1m),  toe(1m),   curses(3x),   ter-
-       minfo(5).
+

HISTORY

+       Although System V Release 2 provided a  terminfo  library,  it  had  no
+       documented tool for decompiling the terminal descriptions.  Tony Hansen
+       (AT&T) wrote the first infocmp in early 1984, for System V Release 3.
+
+       Eric Raymond  used  the  AT&T  documentation  in  1995  to  provide  an
+       equivalent  infocmp  for  ncurses.   In  addition,  he  added a few new
+       features such as:
 
-       http://invisible-island.net/ncurses/tctest.html
+       o   the  -e  option,  to  support   fallback   (compiled-in)   terminal
+           descriptions
 
-       This describes ncurses version 6.0 (patch 20171028).
+       o   the -i option, to help with analysis
+
+       Later,  Thomas  Dickey added the -x (user-defined capabilities) option,
+       and the  -E  option  to  support  fallback  entries  with  user-defined
+       capabilities.
+
+       For a complete list, see the EXTENSIONS section.
+
+       In  2010,  Roy  Marples  provided an infocmp program for NetBSD.  It is
+       less capable than the SVr4 or ncurses  versions  (e.g.,  it  lacks  the
+       sorting  options  documented in X/Open), but does include the -x option
+       adapted from ncurses.
+
+
+

BUGS

+       The -F option of infocmp(1m) should be a toe(1m) mode.
 
 
-

AUTHOR

+

AUTHORS

        Eric S. Raymond <esr@snark.thyrsus.com> and
        Thomas E. Dickey <dickey@invisible-island.net>
 
 
+

SEE ALSO

+       captoinfo(1m),    infotocap(1m),    tic(1m),    toe(1m),    curses(3x),
+       terminfo(5), user_caps(5)
+
+       https://invisible-island.net/ncurses/tctest.html
+
+
 
-                                                                   infocmp(1m)
+ncurses 6.4                       2024-03-16                       infocmp(1m)