*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->IRIX man pages -> term (4)              
Title
Content
Arch
Section
 

Contents


term(4)								       term(4)


NAME    [Toc]    [Back]

     term - format of compiled term file

SYNOPSIS    [Toc]    [Back]

     /usr/share/lib/terminfo/?/*

DESCRIPTION    [Toc]    [Back]

     Compiled terminfo(4) descriptions are placed under	the directory
     /usr/share/lib/terminfo.  In order	to avoid a linear search of a huge
     UNIX system directory, a two-level	scheme is used:
     /usr/share/lib/terminfo/c<b>/name where name is the name of the terminal,
     and c is the first	character of name.  Thus, att4425 can be found in the
     file /usr/share/lib/terminfo/a/att4425.  Synonyms for the same terminal
     are implemented by	multiple links to the same compiled file.

     The format	has been chosen	so that	it is the same on all hardware.	 An
     8-bit byte	is assumed, but	no assumptions about byte ordering or sign
     extension are made.  Thus,	these binary terminfo files can	be transported
     to	other hardware with 8-bit bytes.

     Short integers are	stored in two 8-bit bytes.  The	first byte contains
     the least significant 8 bits of the value,	and the	second byte contains
     the most significant 8 bits.  (Thus, the value represented	is
     256*second+first.)	 The value -1 is represented by	0377,0377, and the
     value -2 is represented by	0376,0377; other negative values are illegal.
     The -1 generally means that a capability is missing from this terminal.
     The -2 means that the capability has been cancelled in the	terminfo
     source and	also is	to be considered missing.

     The compiled file is created from the source file descriptions of the
     terminals (see the	-I option of infocmp) by using the terminfo compiler,
     tic, and read by the routine setupterm [see curses(3X).]  The file	is
     divided into six parts in the following order:  the header, terminal
     names, boolean flags, numbers, strings, and string	table.

     The header	section	begins the file.  This section contains	six short
     integers in the format described below.  These integers are (1) the magic
     number (octal 0432); (2) the size,	in bytes, of the names section;	(3)
     the number	of bytes in the	boolean	section; (4) the number	of short
     integers in the numbers section; (5) the number of	offsets	(short
     integers) in the strings section; (6) the size, in	bytes, of the string
     table.

     The terminal names	section	comes next.  It	contains the first line	of the
     terminfo description, listing the various names for the terminal,
     separated by the bar ( | )	character (see term(5)).  The section is
     terminated	with an	ASCII NUL character.

     The boolean flags have one	byte for each flag.  This byte is either 0 or
     1 as the flag is present or absent.  The value of 2 means that the	flag
     has been cancelled.  The capabilities are in the same order as the	file
     <term.h>.



									Page 1






term(4)								       term(4)



     Between the boolean section and the number	section, a null	byte is
     inserted, if necessary, to	ensure that the	number section begins on an
     even byte offset.	All short integers are aligned on a short word
     boundary.

     The numbers section is similar to the boolean flags section.  Each
     capability	takes up two bytes, and	is stored as a short integer.  If the
     value represented is -1 or	-2, the	capability is taken to be missing.

     The strings section is also similar.  Each	capability is stored as	a
     short integer, in the format above.  A value of -1	or -2 means the
     capability	is missing.  Otherwise,	the value is taken as an offset	from
     the beginning of the string table.	 Special characters in ^X or \c
     notation are stored in their interpreted form, not	the printing
     representation.  Padding information ($<nn>) and parameter	information
     (%x) are stored intact in uninterpreted form.

     The final section is the string table.  It	contains all the values	of
     string capabilities referenced in the string section.  Each string	is
     null terminated.

     Note that it is possible for setupterm to expect a	different set of
     capabilities than are actually present in the file.  Either the database
     may have been updated since setupterm has been recompiled (resulting in
     extra unrecognized	entries	in the file) or	the program may	have been
     recompiled	more recently than the database	was updated (resulting in
     missing entries).	The routine setupterm must be prepared for both
     possibilities-this	is why the numbers and sizes are included.  Also, new
     capabilities must always be added at the end of the lists of boolean,
     number, and string	capabilities.

     As	an example, here is terminal information on the	AT&T Model 37 KSR
     terminal as output	by the infocmp -I tty37	command:

	  37|tty37|AT&T	model 37 teletype,
	    hc,	os, xon,
	    bel=^G, cr=\r, cub1=\b, cud1=\n, cuu1=\E7, hd=\E9,
	    hu=\E8, ind=\n,

     And here is an octal dump of the term file, produced by the od -c
     /usr/share/lib/terminfo/t/tty37 command:

     0000000 032 001	  \0 032  \0 013  \0 021 001   3  \0   3   7   |   t
     0000020   t   y   3   7   |   A   T   &   T       m   o   d   e   l
     0000040   3   7	   t   e   l   e   t   y   p   e  \0  \0  \0  \0  \0
     0000060  \0  \0  \0 001  \0  \0  \0  \0  \0  \0  \0 001  \0  \0  \0  \0
     0000100 001  \0  \0  \0  \0  \0 377 377 377 377 377 377 377 377 377 377
     0000120 377 377 377 377 377 377 377 377 377 377 377 377 377 377   &  \0
     0000140	  \0 377 377 377 377 377 377 377 377 377 377 377 377 377 377
     0000160 377 377   "  \0 377 377 377 377   (  \0 377 377 377 377 377 377
     0000200 377 377   0  \0 377 377 377 377 377 377 377 377   -  \0 377 377
     0000220 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377



									Page 2






term(4)								       term(4)



     *
     0000520 377 377 377 377 377 377 377 377 377 377 377 377 377 377   $  \0
     0000540 377 377 377 377 377 377 377 377 377 377 377 377 377 377   *  \0
     0000560 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377
     *
     0001160 377 377 377 377 377 377 377 377 377 377 377 377 377 377   3   7
     0001200   |   t   t   y   3   7   |   A   T   &   T       m   o   d   e
     0001220   l       3   7	   t   e   l   e   t   y   p   e  \0  \r  \0
     0001240  \n  \0  \n  \0 007  \0  \b  \0 033   8  \0 033   9  \0 033   7
     0001260  \0  \0
     0001261

     Some limitations: total compiled entries cannot exceed 4096 bytes;	all
     entries in	the name field cannot exceed 128 bytes.

FILES    [Toc]    [Back]

     /usr/share/lib/terminfo/?/* - compiled terminal description database
     /usr/include/term.h - terminfo header file

SEE ALSO    [Toc]    [Back]

      
      
     curses(3X)
     infocmp(1M), terminfo(4), term(5)


									PPPPaaaaggggeeee 3333
[ Back ]
 Similar pages
Name OS Title
term FreeBSD format of compiled term file.
term HP-UX format of compiled term file
term OpenBSD format of compiled term file.
term Linux format of compiled term file.
bdftopcf HP-UX convert X font from Bitmap Distribution Format to Portable Compiled Format
bdftopcf IRIX convert X font from Bitmap Distribution Format to Portable Compiled Format
bdftopcf Tru64 convert X font from Bitmap Distribution Format to Portable Compiled Format
tic Tru64 Translates terminfo files from source to compiled format
setxkeymap IRIX set the keyboard map using a compiled keymap file
tt_session_types_load HP-UX merge a compiled ToolTalk types file into the running ttsession
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service