Unix/Linux Go Back    


OpenDarwin 7.2.1 - man page for infocmp (opendarwin section 1M)

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:   man
Select Man Page Set:       apropos Keyword Search (sections above)


infocmp(1M)									      infocmp(1M)

NAME
       infocmp - compare or print out terminfo descriptions

SYNOPSIS
       infocmp [-dceEGgnpqrILCuV1] [-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, 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  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 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

       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.

       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.

       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]
       The location of the compiled terminfo database is taken from the environment variable TER-
       MINFO .	If the variable is not defined, or the terminal is not found  in  that	location,
       the system terminfo database, in /usr/share/terminfo, will be used.  The options -A and -B
       may be used to override this location.  The -A option will  set	TERMINFO  for  the  first
       termname  and  the  -B option will set TERMINFO for the other termnames.  With this, it is
       possible to compare descriptions for a terminal with the same name located in two  differ-
       ent databases.  This is useful for comparing descriptions for the same terminal created by
       different people.

   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  vari-
	    able name, respectively.

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

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

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

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

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

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

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

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

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

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

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

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

       -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, -V, -a, -e, -f, -g, -i, -p, and -q 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
       infocmp(1M), captoinfo(1M), infotocap(1M), tic(1M), toe(1M), curses(3X), terminfo(5).

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

										      infocmp(1M)
Unix & Linux Commands & Man Pages : ©2000 - 2018 Unix and Linux Forums


All times are GMT -4. The time now is 08:43 PM.