• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<!--
2  * t
3  ****************************************************************************
4  * Copyright 2018-2023,2024 Thomas E. Dickey                                *
5  * Copyright 1998-2017,2018 Free Software Foundation, Inc.                  *
6  *                                                                          *
7  * Permission is hereby granted, free of charge, to any person obtaining a  *
8  * copy of this software and associated documentation files (the            *
9  * "Software"), to deal in the Software without restriction, including      *
10  * without limitation the rights to use, copy, modify, merge, publish,      *
11  * distribute, distribute with modifications, sublicense, and/or sell       *
12  * copies of the Software, and to permit persons to whom the Software is    *
13  * furnished to do so, subject to the following conditions:                 *
14  *                                                                          *
15  * The above copyright notice and this permission notice shall be included  *
16  * in all copies or substantial portions of the Software.                   *
17  *                                                                          *
18  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
19  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
20  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
21  * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
22  * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
23  * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
24  * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
25  *                                                                          *
26  * Except as contained in this notice, the name(s) of the above copyright   *
27  * holders shall not be used in advertising or otherwise to promote the     *
28  * sale, use or other dealings in this Software without prior written       *
29  * authorization.                                                           *
30  ****************************************************************************
31  * @Id: infocmp.1m,v 1.109 2024/03/16 15:35:01 tom Exp @
32-->
33<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
34<HTML>
35<HEAD>
36<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
37<meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
38<TITLE>infocmp 1m 2024-03-16 ncurses 6.5 User commands</TITLE>
39<link rel="author" href="mailto:bug-ncurses@gnu.org">
40
41</HEAD>
42<BODY>
43<H1 class="no-header">infocmp 1m 2024-03-16 ncurses 6.5 User commands</H1>
44<PRE>
45<STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>                      User commands                     <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>
46
47
48
49
50</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
51       <STRONG>infocmp</STRONG> - compare or print out <EM>terminfo</EM> descriptions
52
53
54</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
55       <STRONG>infocmp</STRONG> [<STRONG>-1cCdDeEFgGiIKlLnpqrtTuUVWx</STRONG>]
56             [<STRONG>-v</STRONG> <EM>n</EM>] [<STRONG>-s</STRONG> <STRONG>d</STRONG>| <STRONG>i</STRONG>| <STRONG>l</STRONG>| <STRONG>c</STRONG>] [<STRONG>-Q</STRONG> <EM>n</EM>] [<STRONG>-R</STRONG> <STRONG>subset</STRONG>]
57             [<STRONG>-w</STRONG> <EM>width</EM>] [<STRONG>-A</STRONG> <EM>directory</EM>] [<STRONG>-B</STRONG> <EM>directory</EM>]
58             [<EM>terminal-type</EM> ...]
59
60
61</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
62       <STRONG>infocmp</STRONG>  can  be  used  to  compare  a binary <STRONG>terminfo</STRONG> entry with other
63       terminfo entries, rewrite a <STRONG>terminfo</STRONG> description to take  advantage  of
64       the  <STRONG>use=</STRONG>  terminfo field, or print out a <STRONG>terminfo</STRONG> description from the
65       binary file (<STRONG>term</STRONG>) in a variety of formats.  In all cases, the  Boolean
66       fields  will be printed first, followed by the numeric fields, followed
67       by the string fields.
68
69
70</PRE><H3><a name="h3-Default-Options">Default Options</a></H3><PRE>
71       If no  options  are  specified  and  zero  or  one  <EM>terminal-types</EM>  are
72       specified,  the  <STRONG>-I</STRONG> option will be assumed.  If more than one <EM>terminal-</EM>
73       <EM>type</EM> is specified, the <STRONG>-d</STRONG> option will be assumed.
74
75
76</PRE><H3><a name="h3-Comparison-Options_d_c_n_">Comparison Options [-d] [-c] [-n]</a></H3><PRE>
77       <STRONG>infocmp</STRONG>  compares  the  <STRONG>terminfo</STRONG>  description  of  the  first  terminal
78       <EM>terminal-type</EM>  with  each  of the descriptions given by the entries for
79       the other terminal's <EM>terminal-types</EM>.  If a capability  is  defined  for
80       only  one  of  the terminals, the value returned depends on the type of
81       the capability:
82
83       <STRONG>o</STRONG>   <STRONG>F</STRONG> for missing Boolean variables
84
85       <STRONG>o</STRONG>   <STRONG>NULL</STRONG> for missing integer or string variables
86
87       Use the <STRONG>-q</STRONG> option to show the distinction between <EM>absent</EM> and  <EM>cancelled</EM>
88       capabilities.
89
90       These  options  produce a list which you can use to compare two or more
91       terminal descriptions:
92
93       <STRONG>-d</STRONG>   produces a list of each capability that is <EM>different</EM>  between  two
94            entries.   Each  item  in  the list shows ":" after the capability
95            name, followed by the capability values, separated by a comma.
96
97       <STRONG>-c</STRONG>   produces a list of each capability that is <EM>common</EM> between  two  or
98            more entries.  Missing capabilities are ignored.  Each item in the
99            list  shows  "="  after  the  capability  name,  followed  by  the
100            capability value.
101
102            The  <STRONG>-u</STRONG>  option  provides  a  related  output,  showing  the first
103            terminal description rewritten to use the  second  as  a  building
104            block via the "use=" clause.
105
106       <STRONG>-n</STRONG>   produces  a  list  of each capability that is in <EM>none</EM> of the given
107            entries.  Each item in the list shows "!"  before  the  capability
108            name.
109
110            Normally only the conventional capabilities are shown.  Use the <STRONG>-x</STRONG>
111            option to add the BSD-compatibility capabilities  (names  prefixed
112            with "OT").
113
114            If  no  <EM>terminal-types</EM>  are  given,  <STRONG>infocmp</STRONG>  uses the environment
115            variable <EM>TERM</EM> for each of the <EM>terminal-types</EM>.
116
117
118</PRE><H3><a name="h3-Source-Listing-Options_I_L_C_r_">Source Listing Options [-I] [-L] [-C] [-r]</a></H3><PRE>
119       The <STRONG>-I</STRONG>, <STRONG>-L</STRONG>, and <STRONG>-C</STRONG> options will  produce  a  source  listing  for  each
120       terminal named.
121
122                   <STRONG>-I</STRONG>   use <EM>terminfo</EM> capability codes
123                   <STRONG>-L</STRONG>   use "long" capability names
124                   <STRONG>-C</STRONG>   use <EM>termcap</EM> capability codes
125                   <STRONG>-r</STRONG>   with <STRONG>-C</STRONG>, include nonstandard capabilities
126                   <STRONG>-K</STRONG>   with <STRONG>-C</STRONG>, improve BSD compatibility
127
128       If  no  <EM>terminal-types</EM> are given, the environment variable <EM>TERM</EM> will be
129       used for the terminal name.
130
131       The source produced by the <STRONG>-C</STRONG> option may be used directly as a  <STRONG>termcap</STRONG>
132       entry,  but not all parameterized strings can be changed to the <STRONG>termcap</STRONG>
133       format.  <STRONG>infocmp</STRONG> will attempt to  convert  most  of  the  parameterized
134       information,  and  anything not converted will be plainly marked in the
135       output and commented out.  These should be edited by hand.
136
137       For best results when converting to <STRONG>termcap</STRONG> format, you should use both
138       <STRONG>-C</STRONG>  and  <STRONG>-r</STRONG>.   Normally a termcap description is limited to 1023 bytes.
139       <STRONG>infocmp</STRONG> trims away less essential parts to make it  fit.   If  you  are
140       converting to one of the (rare) termcap implementations which accept an
141       unlimited size of termcap, you may want to add  the  <STRONG>-T</STRONG>  option.   More
142       often  however,  you  must  help  the  termcap implementation, and trim
143       excess whitespace (use the <STRONG>-0</STRONG> option for that).
144
145       All padding information for strings  will  be  collected  together  and
146       placed  at  the  beginning  of  the  string  where  <STRONG>termcap</STRONG> expects it.
147       Mandatory padding (padding information with a trailing "/") will become
148       optional.
149
150       All  <STRONG>termcap</STRONG>  variables  no longer supported by <STRONG>terminfo</STRONG>, but which are
151       derivable from other <STRONG>terminfo</STRONG>  variables,  will  be  output.   Not  all
152       <STRONG>terminfo</STRONG>  capabilities  will  be translated; only those variables which
153       were part of <STRONG>termcap</STRONG> will normally be output.  Specifying the <STRONG>-r</STRONG> option
154       will  take off this restriction, allowing all capabilities to be output
155       in <EM>termcap</EM> form.  Normally you would use both the <STRONG>-C</STRONG>  and  <STRONG>-r</STRONG>  options.
156       The  actual  format  used  incorporates  some  improvements for escaped
157       characters  from  terminfo  format.   For  a  stricter   BSD-compatible
158       translation, use the <STRONG>-K</STRONG> option rather than <STRONG>-C</STRONG>.
159
160       Note  that  because  padding  is  collected  to  the  beginning  of the
161       capability, not all capabilities are output.  Mandatory padding is  not
162       supported.   Because  <STRONG>termcap</STRONG>  strings  are  not as flexible, it is not
163       always possible  to  convert  a  <STRONG>terminfo</STRONG>  string  capability  into  an
164       equivalent <STRONG>termcap</STRONG> format.  A subsequent conversion of the <STRONG>termcap</STRONG> file
165       back into <STRONG>terminfo</STRONG> format will not necessarily reproduce  the  original
166       <STRONG>terminfo</STRONG> source.
167
168       Some  common  <STRONG>terminfo</STRONG>  parameter sequences, their <STRONG>termcap</STRONG> equivalents,
169       and some terminal types which commonly have such sequences, are:
170
171                 <STRONG><EM>terminfo</EM></STRONG>                   <STRONG><EM>termcap</EM></STRONG>   Terminal Types
172                 ----------------------------------------------------
173                 <STRONG>%p1%c</STRONG>                      <STRONG>%.</STRONG>        ansi-m
174                 <STRONG>%p1%d</STRONG>                      <STRONG>%d</STRONG>        ansi, vt100
175                 <STRONG>%p1%'</STRONG> <STRONG>'%+%c</STRONG>                <STRONG>%+x</STRONG>       vt52
176                 <STRONG>%i</STRONG>                         <STRONG>%iq</STRONG>       ansi, vt100
177                 <STRONG>%p1%?%'x'%&gt;%t%p1%'y'%+%;</STRONG>   <STRONG>%&gt;xy</STRONG>      annarbor4080
178                 <STRONG>%p2</STRONG>...<STRONG>%p1</STRONG>                  <STRONG>%r</STRONG>        hpgeneric
179
180
181</PRE><H3><a name="h3-Use_Option_u_">Use= Option [-u]</a></H3><PRE>
182       The <STRONG>-u</STRONG> option produces a  <STRONG>terminfo</STRONG>  source  description  of  the  first
183       terminal <EM>terminal-type</EM> which is relative to the sum of the descriptions
184       given by the entries for the other <EM>terminal-types</EM>.   It  does  this  by
185       analyzing  the  differences  between  the  first <EM>terminal-types</EM> and the
186       other <EM>terminal-types</EM> and producing a description with <STRONG>use=</STRONG>  fields  for
187       the  other  terminals.   In  this  manner,  it  is possible to retrofit
188       generic terminfo entries into a terminal's  description.   Or,  if  two
189       similar  terminals  exist,  but  were  coded  at  different times or by
190       different people so that each description is a full description,  using
191       <STRONG>infocmp</STRONG>  will  show  what  can  be done to change one description to be
192       relative to the other.
193
194       A capability will be printed with an at-sign (@) if it no longer exists
195       in  the first <EM>terminal-type</EM>, but one of the other <EM>terminal-type</EM> entries
196       contains a value for it.  A capability's value will be printed  if  the
197       value  in  the  first  <EM>terminal-type</EM>  is  not found in any of the other
198       <EM>terminal-type</EM> entries, or if  the  first  of  the  other  <EM>terminal-type</EM>
199       entries  that  has  this  capability  gives  a  different value for the
200       capability than that in the first <EM>terminal-type</EM>.
201
202       The order of the other <EM>terminal-type</EM> entries is significant.  Since the
203       terminfo  compiler  <STRONG>tic</STRONG>  does a left-to-right scan of the capabilities,
204       specifying two <STRONG>use=</STRONG> entries that contain differing entries for the same
205       capabilities will produce different results depending on the order that
206       the entries are given in.  <STRONG>infocmp</STRONG> will flag any  such  inconsistencies
207       between the other <EM>terminal-type</EM> entries as they are found.
208
209       Alternatively, specifying a capability <EM>after</EM> a <STRONG>use=</STRONG> entry that contains
210       that capability will cause the  second  specification  to  be  ignored.
211       Using  <STRONG>infocmp</STRONG>  to recreate a description can be a useful check to make
212       sure that everything was specified correctly  in  the  original  source
213       description.
214
215       Another  error  that  does not cause incorrect compiled files, but will
216       slow down the compilation time, is specifying extra  <STRONG>use=</STRONG>  fields  that
217       are superfluous.  <STRONG>infocmp</STRONG> will flag any other <EM>terminal-type</EM> <EM>use=</EM> fields
218       that were not needed.
219
220   <STRONG>Changing</STRONG> <STRONG>Databases</STRONG> <STRONG>[-A</STRONG> <EM>directory</EM>] [-B <EM>directory</EM>]
221       Like  other  <EM>ncurses</EM>  utilities,  <STRONG>infocmp</STRONG>  looks   for   the   terminal
222       descriptions   in  several  places.   You  can  use  the  <EM>TERMINFO</EM>  and
223       <EM>TERMINFO</EM><STRONG>_</STRONG><EM>DIRS</EM> environment variables to override the compiled-in default
224       list  of  places  to  search.   See <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, as well as the <EM>Fetching</EM>
225       <EM>Compiled</EM> <EM>Descriptions</EM> section in <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
226
227       You can also use the options <STRONG>-A</STRONG> and <STRONG>-B</STRONG> to override the list  of  places
228       to search when comparing terminal descriptions:
229
230       <STRONG>o</STRONG>   The <STRONG>-A</STRONG> option sets the location for the first <EM>terminal-type</EM>
231
232       <STRONG>o</STRONG>   The <STRONG>-B</STRONG> option sets the location for the other <EM>terminal-types</EM>.
233
234       Using  these  options,  it  is  possible  to compare descriptions for a
235       terminal with the same name located in two  different  databases.   For
236       instance,  you  can use this feature for comparing descriptions for the
237       same terminal created by different people.
238
239
240</PRE><H3><a name="h3-Other-Options">Other Options</a></H3><PRE>
241       <STRONG>-0</STRONG>   causes the fields to be printed on one line, without wrapping.
242
243       <STRONG>-1</STRONG>   causes the fields to be printed out one to a line.  Otherwise, the
244            fields  will be printed several to a line to a maximum width of 60
245            characters.
246
247       <STRONG>-a</STRONG>   tells <STRONG>infocmp</STRONG> to retain  commented-out  capabilities  rather  than
248            discarding  them.   Capabilities  are  commented by prefixing them
249            with a period.
250
251       <STRONG>-D</STRONG>   tells <STRONG>infocmp</STRONG> to print the database locations that it knows about,
252            and exit.
253
254       <STRONG>-E</STRONG>   Dump  the  capabilities of the given terminal as tables, needed in
255            the  C  initializer  for  a  TERMTYPE  structure   (the   terminal
256            capability  structure in the <STRONG>&lt;term.h&gt;</STRONG>).  This option is useful for
257            preparing versions of the curses library  hardwired  for  a  given
258            terminal  type.  The tables are all declared static, and are named
259            according to the type and the name of the  corresponding  terminal
260            entry.
261
262            Before  <EM>ncurses</EM>  5.0,  the split between the <STRONG>-e</STRONG> and <STRONG>-E</STRONG> options was
263            not needed; but support for extended  names  required  making  the
264            arrays   of  terminal  capabilities  separate  from  the  TERMTYPE
265            structure.
266
267       <STRONG>-e</STRONG>   Dump the capabilities of the given terminal as a C initializer for
268            a  TERMTYPE  structure  (the  terminal capability structure in the
269            <STRONG>&lt;term.h&gt;</STRONG>).  This option is useful for preparing  versions  of  the
270            curses library hardwired for a given terminal type.
271
272       <STRONG>-F</STRONG>   compare terminfo files.  This assumes that two following arguments
273            are filenames.   The  files  are  searched  for  pairwise  matches
274            between  entries,  with  two entries considered to match if any of
275            their names do.  The  report  printed  to  standard  output  lists
276            entries  with  no matches in the other file, and entries with more
277            than one match.  For entries with exactly one match it includes  a
278            difference  report.  Normally, to reduce the volume of the report,
279            use references are not resolved before  looking  for  differences,
280            but resolution can be forced by also specifying <STRONG>-r</STRONG>.
281
282       <STRONG>-f</STRONG>   Display  complex terminfo strings which contain if/then/else/endif
283            expressions indented for readability.
284
285       <STRONG>-G</STRONG>   Display constant  literals  in  decimal  form  rather  than  their
286            character equivalents.
287
288       <STRONG>-g</STRONG>   Display  constant  character  literals  in quoted form rather than
289            their decimal equivalents.
290
291       <STRONG>-i</STRONG>   Analyze the initialization (<STRONG>is1</STRONG>, <STRONG>is2</STRONG>, <STRONG>is3</STRONG>), and reset  (<STRONG>rs1</STRONG>,  <STRONG>rs2</STRONG>,
292            <STRONG>rs3</STRONG>),   strings   in   the  entry,  as  well  as  those  used  for
293            starting/stopping cursor-positioning mode (<STRONG>smcup</STRONG>, <STRONG>rmcup</STRONG>)  as  well
294            as starting/stopping keymap mode (<STRONG>smkx</STRONG>, <STRONG>rmkx</STRONG>).
295
296            For  each  string,  the  code  tries to analyze it into actions in
297            terms of the other capabilities in the  entry,  certain  X3.64/ISO
298            6429/ECMA-48 capabilities, and certain DEC VT-series private modes
299            (the set of recognized special sequences  has  been  selected  for
300            completeness  over  the  existing terminfo database).  Each report
301            line consists of the capability name,  followed  by  a  colon  and
302            space,  followed by a printable expansion of the capability string
303            with  sections  matching  recognized   actions   translated   into
304            {}-bracketed descriptions.
305
306            Here is a list of the DEC/ANSI special sequences recognized:
307
308                      Action        Meaning
309                      -----------------------------------------
310                      RIS           full reset
311                      SC            save cursor
312                      RC            restore cursor
313                      LL            home-down
314                      RSR           reset scroll region
315                      -----------------------------------------
316
317                      DECSTR        soft reset (VT320)
318                      S7C1T         7-bit controls (VT220)
319                      -----------------------------------------
320                      ISO DEC G0    enable DEC graphics for G0
321                      ISO UK G0     enable UK chars for G0
322                      ISO US G0     enable US chars for G0
323                      ISO DEC G1    enable DEC graphics for G1
324                      ISO UK G1     enable UK chars for G1
325                      ISO US G1     enable US chars for G1
326                      -----------------------------------------
327                      DECPAM        application keypad mode
328                      DECPNM        normal keypad mode
329                      DECANSI       enter ANSI mode
330                      -----------------------------------------
331                      ECMA[+-]AM    keyboard action mode
332                      ECMA[+-]IRM   insert replace mode
333                      ECMA[+-]SRM   send receive mode
334                      ECMA[+-]LNM   linefeed mode
335                      -----------------------------------------
336                      DEC[+-]CKM    application cursor keys
337                      DEC[+-]ANM    set VT52 mode
338                      DEC[+-]COLM   132-column mode
339                      DEC[+-]SCLM   smooth scroll
340                      DEC[+-]SCNM   reverse video mode
341                      DEC[+-]OM     origin mode
342                      DEC[+-]AWM    wraparound mode
343                      DEC[+-]ARM    auto-repeat mode
344
345       It also recognizes a SGR action corresponding to ANSI/ISO 6429/ECMA Set
346       Graphics Rendition, with the values NORMAL, BOLD, UNDERLINE, BLINK, and
347       REVERSE.  All but NORMAL may be prefixed with
348
349              <STRONG>o</STRONG>   "+" (turn on) or
350
351              <STRONG>o</STRONG>   "-" (turn off).
352
353              An  SGR0  designates  an empty highlight sequence (equivalent to
354              {SGR:NORMAL}).
355
356       <STRONG>-l</STRONG>   Set output format to terminfo.
357
358       <STRONG>-p</STRONG>   Ignore padding specifications when comparing strings.
359
360       <STRONG>-Q</STRONG> <EM>n</EM> Rather than show source  in  terminfo  (text)  format,  print  the
361            compiled  (binary) format in hexadecimal or base64 form, depending
362            on the option's value:
363
364               1  hexadecimal
365
366               2  base64
367
368               3  hexadecimal and base64
369
370            For example, this prints the compiled terminfo value as  a  string
371            which could be assigned to the <EM>TERMINFO</EM> environment variable:
372
373                infocmp -0 -q -Q2
374
375       <STRONG>-q</STRONG>   This makes the output a little shorter:
376
377            <STRONG>o</STRONG>   Make  the  comparison listing shorter by omitting subheadings,
378                and using "-" for absent capabilities, "@" for canceled rather
379                than "NULL".
380
381            <STRONG>o</STRONG>   However,   show   differences  between  absent  and  cancelled
382                capabilities.
383
384            <STRONG>o</STRONG>   Omit the "Reconstructed from" comment for source listings.
385
386       <STRONG>-R</STRONG><EM>subset</EM>
387            Restrict output to a given subset.  This option is  for  use  with
388            archaic  versions of terminfo like those on SVr1, Ultrix, or HP-UX
389            that do not support the full set of SVR4/XSI Curses terminfo;  and
390            variants  such  as AIX that have their own extensions incompatible
391            with SVr4/XSI.
392
393            <STRONG>o</STRONG>   Available terminfo subsets are  "SVr1",  "Ultrix",  "HP",  and
394                "AIX"; see <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for details.
395
396            <STRONG>o</STRONG>   You  can  also  choose  the  subset  "BSD"  which selects only
397                capabilities with termcap equivalents recognized by 4.4BSD.
398
399            <STRONG>o</STRONG>   If you select any other value for <STRONG>-R</STRONG>, it is  the  same  as  no
400                subset, i.e., all capabilities are used.
401
402            A  few  options  override the subset selected with <STRONG>-R</STRONG>, if they are
403            processed later in the command parameters:
404
405            <STRONG>-C</STRONG>   sets the "BSD" subset as a side-effect.
406
407            <STRONG>-I</STRONG>   sets the subset to all capabilities.
408
409            <STRONG>-r</STRONG>   sets the subset to all capabilities.
410
411       <STRONG>-s</STRONG> <EM>[d|i|l|c]</EM>
412            The <STRONG>-s</STRONG> option sorts the fields within each type according  to  the
413            argument below:
414
415            <STRONG>d</STRONG>    leave  fields  in  the  order  that  they  are  stored in the
416                 <EM>terminfo</EM> database.
417
418            <STRONG>i</STRONG>    sort by <EM>terminfo</EM> name.
419
420            <STRONG>l</STRONG>    sort by the long C variable name.
421
422            <STRONG>c</STRONG>    sort by the <EM>termcap</EM> name.
423
424            If the <STRONG>-s</STRONG> option is not given, the  fields  printed  out  will  be
425            sorted  alphabetically  by  the  <STRONG>terminfo</STRONG>  name  within each type,
426            except in the case of the <STRONG>-C</STRONG> or the <STRONG>-L</STRONG> options,  which  cause  the
427            sorting  to  be  done  by  the <STRONG>termcap</STRONG> name or the long C variable
428            name, respectively.
429
430       <STRONG>-T</STRONG>   eliminates size-restrictions  on  the  generated  text.   This  is
431            mainly  useful  for  testing  and  analysis,  since  the  compiled
432            descriptions  are  limited  (e.g.,  1023  for  termcap,  4096  for
433            terminfo).
434
435       <STRONG>-t</STRONG>   tells  <STRONG>tic</STRONG>  to  discard commented-out capabilities.  Normally when
436            translating from terminfo to termcap, untranslatable  capabilities
437            are commented-out.
438
439       <STRONG>-U</STRONG>   tells  <STRONG>infocmp</STRONG>  to  not  post-process  the  data after parsing the
440            source  file.   This  feature  helps  when  comparing  the  actual
441            contents  of  two  source  files, since it excludes the inferences
442            that <STRONG>infocmp</STRONG> makes to fill in missing data.
443
444       <STRONG>-V</STRONG>   reports the version of <EM>ncurses</EM> which was used in this program, and
445            exits.
446
447       <STRONG>-v</STRONG> <EM>n</EM> prints  out  tracing  information on standard error as the program
448            runs.
449
450            The optional parameter <EM>n</EM> is a number  from  1  to  10,  inclusive,
451            indicating the desired level of detail of information.  If <EM>ncurses</EM>
452            is built  without  tracing  support,  the  optional  parameter  is
453            ignored.
454
455       <STRONG>-W</STRONG>   By  itself,  the  <STRONG>-w</STRONG>  option  will  not  force  long strings to be
456            wrapped.  Use the <STRONG>-W</STRONG> option to do this.
457
458       <STRONG>-w</STRONG> <EM>width</EM>
459            changes the output to <EM>width</EM> characters.
460
461       <STRONG>-x</STRONG>   print information for user-defined capabilities (see <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
462            These  are  extensions  to  the  terminfo  repertoire which can be
463            loaded using the <STRONG>-x</STRONG> option of <STRONG>tic</STRONG>.
464
465
466</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
467       <EM>/usr/share/terminfo</EM>
468              compiled terminal description database
469
470
471</PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
472       The <STRONG>-0</STRONG>, <STRONG>-1</STRONG>, <STRONG>-E</STRONG>, <STRONG>-F</STRONG>, <STRONG>-G</STRONG>, <STRONG>-Q</STRONG>, <STRONG>-R</STRONG>, <STRONG>-T</STRONG>, <STRONG>-V</STRONG>, <STRONG>-a</STRONG>, <STRONG>-e</STRONG>, <STRONG>-f</STRONG>, <STRONG>-g</STRONG>, <STRONG>-i</STRONG>, <STRONG>-l</STRONG>, <STRONG>-p</STRONG>,  <STRONG>-q</STRONG>
473       and <STRONG>-t</STRONG> options are not supported in SVr4 curses.
474
475       SVr4   infocmp  does  not  distinguish  between  absent  and  cancelled
476       capabilities.  Also, it shows missing integer capabilities as  <STRONG>-1</STRONG>  (the
477       internal   value   used   to   represent   missing   integers).    This
478       implementation shows those as  "NULL",  for  consistency  with  missing
479       strings.
480
481       The  <STRONG>-r</STRONG>  option's  notion of "termcap" capabilities is System V Release
482       4's.  Actual BSD curses versions will have a more restricted  set.   To
483       see only the 4.4BSD set, use <STRONG>-r</STRONG> <STRONG>-RBSD</STRONG>.
484
485
486</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
487       X/Open  Curses,  Issue  7 (2009) provides a description of <STRONG>infocmp</STRONG>.  It
488       does not mention the options used for converting to termcap format.
489
490
491</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
492       Although System V Release 2 provided a  terminfo  library,  it  had  no
493       documented tool for decompiling the terminal descriptions.  Tony Hansen
494       (AT&amp;T) wrote the first <STRONG>infocmp</STRONG> in early 1984, for System V Release 3.
495
496       Eric Raymond  used  the  AT&amp;T  documentation  in  1995  to  provide  an
497       equivalent  <STRONG>infocmp</STRONG>  for  <EM>ncurses</EM>.   In  addition,  he  added a few new
498       features such as:
499
500       <STRONG>o</STRONG>   the  <STRONG>-e</STRONG>  option,  to  support   <EM>fallback</EM>   (compiled-in)   terminal
501           descriptions
502
503       <STRONG>o</STRONG>   the <STRONG>-i</STRONG> option, to help with analysis
504
505       Later,  Thomas  Dickey added the <STRONG>-x</STRONG> (user-defined capabilities) option,
506       and the  <STRONG>-E</STRONG>  option  to  support  fallback  entries  with  user-defined
507       capabilities.
508
509       For a complete list, see the <EM>EXTENSIONS</EM> section.
510
511       In  2010,  Roy  Marples  provided an <STRONG>infocmp</STRONG> program for NetBSD.  It is
512       less capable than the SVr4 or <EM>ncurses</EM>  versions  (e.g.,  it  lacks  the
513       sorting  options  documented in X/Open), but does include the <STRONG>-x</STRONG> option
514       adapted from <EM>ncurses</EM>.
515
516
517</PRE><H2><a name="h2-BUGS">BUGS</a></H2><PRE>
518       The <STRONG>-F</STRONG> option of <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG> should be a <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG> mode.
519
520
521</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
522       Eric S. Raymond &lt;esr@snark.thyrsus.com&gt; and
523       Thomas E. Dickey &lt;dickey@invisible-island.net&gt;
524
525
526</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
527       <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>,    <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>,    <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>,    <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>,    <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
528       <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>
529
530       https://invisible-island.net/ncurses/tctest.html
531
532
533
534ncurses 6.5                       2024-03-16                       <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>
535</PRE>
536<div class="nav">
537<ul>
538<li><a href="#h2-NAME">NAME</a></li>
539<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
540<li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
541<ul>
542<li><a href="#h3-Default-Options">Default Options</a></li>
543<li><a href="#h3-Comparison-Options_d_c_n_">Comparison Options [-d] [-c] [-n]</a></li>
544<li><a href="#h3-Source-Listing-Options_I_L_C_r_">Source Listing Options [-I] [-L] [-C] [-r]</a></li>
545<li><a href="#h3-Use_Option_u_">Use= Option [-u]</a></li>
546<li><a href="#h3-Other-Options">Other Options</a></li>
547</ul>
548</li>
549<li><a href="#h2-FILES">FILES</a></li>
550<li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li>
551<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
552<li><a href="#h2-HISTORY">HISTORY</a></li>
553<li><a href="#h2-BUGS">BUGS</a></li>
554<li><a href="#h2-AUTHORS">AUTHORS</a></li>
555<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
556</ul>
557</div>
558</BODY>
559</HTML>
560