TIC(1M) INTERACTIVE UNIX System TIC(1M)
NAME
tic - terminfo compiler
SYNOPSIS
tic [-v[n]] [-c] file
DESCRIPTION
The tic command translates a terminfo(4) file from the
source format into the compiled format. The results are
placed in the directory /usr/lib/terminfo. The compiled
format is necessary for use with the library routines
described in curses(3X).
-vn (verbose) output to standard error trace information
showing tic's progress. The optional integer n is a
number from 1 to 10, inclusive, indicating the
desired level of detail of information. If n is
omitted, the default level is 1. If n is specified
and greater than 1, the level of detail is
increased.
-c only check file for errors. Errors in use= links
are not detected.
file contains one or more terminfo(4) terminal descrip-
tions in source format [see terminfo(4)]. Each
description in the file describes the capabilities
of a particular terminal. When a use=entry-name
field is discovered in a terminal entry currently
being compiled, tic reads in the binary from
/usr/lib/terminfo to complete the entry. (Entries
created from file will be used first. If the
environment variable TERMINFO is set, that directory
is searched instead of /usr/lib/terminfo.) tic
duplicates the capabilities in entry-name for the
current entry, with the exception of those capabili-
ties that explicitly are defined in the current
entry.
If the environment variable TERMINFO is set, the compiled
results are placed there instead of /usr/lib/terminfo.
FILES
/usr/lib/terminfo/?/* compiled terminal description data
base
SEE ALSO
curses(3X), term(4), terminfo(4) in the INTERACTIVE SDS
Guide and Programmer's Reference Manual.
Chapter 10 in the Programmer's Guide.
WARNINGS
Total compiled entries cannot exceed 4096 bytes. The name
Rev. Extended Terminal Interface Page 1
TIC(1M) INTERACTIVE UNIX System TIC(1M)
field cannot exceed 128 bytes.
Terminal names exceeding 14 characters will be truncated to
14 characters and a warning message will be printed.
When the -c option is used, duplicate terminal names will
not be diagnosed; however, when -c is not used, they will
be.
Rev. Extended Terminal Interface Page 2
TIC(1M) INTERACTIVE UNIX System TIC(1M)
BUGS
To allow existing executables from the previous release of
the UNIX system to continue to run with the compiled ter-
minfo entries created by the new terminfo compiler, can-
celled capabilities will not be marked as cancelled within
the terminfo binary unless the entry name has a `+' within
it. (Such terminal names are only used for inclusion within
other entries via a use= entry. Such names would not be
used for real terminal names.)
For example:
4415+nl, kf1@, kf2@, ....
4415+base, kf1=\EOc, kf2=\EOd, ....
4415-nl|4415 terminal without keys,
use=4415+nl, use=4415+base,
The above example works as expected; the definitions for the
keys do not show up in the 4415-nl entry. However, if the
entry 4415+nl did not have a plus sign within its name, the
cancellations would not be marked within the compiled file
and the definitions for the function keys would not be can-
celled within 4415-nl.
DIAGNOSTICS
Most diagnostic messages produced by tic during the compila-
tion of the source file are preceded with the approximate
line number and the name of the terminal currently being
worked on.
mkdir ... returned bad status
The named directory could not be created.
File does not start with terminal names in column one
The first thing seen in the file, after comments, must
be the list of terminal names.
Token after a lseek(2) not NAMES
Somehow the file being compiled changed during the com-
pilation.
Not enough memory for use_list element
or
Out of memory
Not enough free memory was available [malloc(3C)
failed].
Can't open ...
The named file could not be created.
Error in writing ...
The named file could not be written to.
Rev. Extended Terminal Interface Page 3
TIC(1M) INTERACTIVE UNIX System TIC(1M)
Can't link ... to ...
A link failed.
Error in re-reading compiled file ...
The compiled file could not be read back in.
Premature EOF
The current entry ended prematurely.
Backspaced off beginning of line
This error indicates something wrong happened within
tic.
Unknown Capability - "..."
The named invalid capability was found within the file.
Wrong type used for capability "..."
For example, a string capability was given a numeric
value.
Unknown token type
Tokens must be followed by `@' to cancel, `,' for
Booleans, `#' for numbers, or `=' for strings.
"...": bad term name
or
Line ...: Illegal terminal name - "..."
Terminal names must start with a letter or digit
The given name was invalid. Names must not contain
white space or slashes, and must begin with a letter or
digit.
"...": terminal name too long.
An extremely long terminal name was found.
"...": terminal name too short.
A one-letter name was found.
"..." filename too long, truncating to "..."
The given name was truncated to 14 characters due to
UNIX system file name length limitations.
"..." defined in more than one entry. Entry being used is "...".
An entry was found more than once.
Terminal name "..." synonym for itself
A name was listed twice in the list of synonyms.
At least one synonym should begin with a letter.
At least one of the names of the terminal should begin
with a letter.
Illegal character - "..."
The given invalid character was found in the input
Rev. Extended Terminal Interface Page 4
TIC(1M) INTERACTIVE UNIX System TIC(1M)
file.
New-line in middle of terminal name
The trailing comma was probably left off the list of
names.
Missing comma
A comma was missing.
Missing numeric value
The number was missing after a numeric capability.
NULL string value
The proper way to say that a string capability does not
exist is to cancel it.
Very long string found. Missing comma?
self-explanatory
Unknown option. Usage is:
An invalid option was entered.
Too many file names. Usage is:
self-explanatory
"..." nonexistent or permission denied
The given directory could not be written into.
"..." is not a directory
self-explanatory
"...": Permission denied
access denied.
"...": Not a directory
tic wanted to use the given name as a directory, but it
already exists as a file
SYSTEM ERROR!! Fork failed!!!
A fork(2) failed.
Error in following up use-links. Either there is a loop in
the links or they reference nonexistent terminals. The fol-
lowing is a list of the entries involved:
A terminfo(4) entry with a use=name capability either
referenced a nonexistent terminal called name or name
somehow referred back to the given entry.
Rev. Extended Terminal Interface Page 5