Bash Cures Cancer
Learn the UNIX/Linux command line

Home     Man Pages     SpamDefeator


tic(1M)								      tic(1M)



NAME
       tic - the terminfo entry-description compiler

SYNOPSIS
       tic  [-1CGILNTVacfgrstx]	 [-e  names]  [-o  dir]	 [-R  subset] [-v[n]]
       [-w[n]] file

DESCRIPTION
       The command tic translates a terminfo file  from	 source	 format	 into
       compiled	 format.   The	compiled format is necessary for use with the
       library routines in ncurses(3X).

       The results are normally	 placed	 in  the  system  terminfo  directory
       /usr/share/terminfo.  There are two ways to change this behavior.

       First,  you  may	 override  the system default by setting the variable
       TERMINFO in your shell environment to  a	 valid	(existing)  directory
       name.

       Secondly, if tic cannot get access to /usr/share/terminfo or your TER-
       MINFO directory, it looks for the directory $HOME/.terminfo;  if	 that
       directory exists, the entry is placed there.

       Libraries  that read terminfo entries are expected to check for a TER-
       MINFO directory first, look at $HOME/.terminfo if TERMINFO is not set,
       and finally look in /usr/share/terminfo.

       -1     restricts the output to a single column

       -a     tells tic to retain commented-out capabilities rather than dis-
	      carding them.  Capabilities are  commented  by  prefixing	 them
	      with  a period.  This sets the -x option, because it treats the
	      commented-out entries as user-defined names.  If the source  is
	      termcap,	accept	the  2-character names required by version 6.
	      Otherwise these are ignored.

       -C     Force source translation to termcap format.  Note: this differs
	      from  the	 -C  option of infocmp(1M) in that it does not merely
	      translate	 capability  names,  but  also	translates   terminfo
	      strings to termcap format.  Capabilities that are not translat-
	      able are left in the entry under their terminfo names but	 com-
	      mented out with two preceding dots.

       -c     tells tic to only check file for errors, including syntax prob-
	      lems and bad use links.  If  you	specify	 -C  (-I)  with	 this
	      option, the code will print warnings about entries which, after
	      use resolution, are more than 1023 (4096) bytes long.  Due to a
	      fixed  buffer  length  in	 older termcap libraries (and a docu-
	      mented limit in terminfo), these entries may cause core  dumps.

       -e names
	      Limit  writes and translations to the following comma-separated
	      list of terminals.  If any name or alias of a terminal  matches
	      one  of  the  names  in  the list, the entry will be written or
	      translated as normal.  Otherwise no output  will	be  generated
	      for  it.	 The option value is interpreted as a file containing
	      the list if it contains a '/'.  (Note: depending on how tic was
	      compiled, this option may require -I or -C.)

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

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

       -I     Force source translation to terminfo format.

       -L     Force source translation to terminfo format using	 the  long  C
	      variable names listed in 

       -N     Disable  smart defaults.	Normally, when translating from term-
	      cap to terminfo, the compiler makes  a  number  of  assumptions
	      about  the  defaults of string capabilities reset1_string, car-
	      riage_return, cursor_left,  cursor_down,	scroll_forward,	 tab,
	      newline,	key_backspace,	key_left, and key_down, then attempts
	      to use obsolete termcap capabilities to deduce correct  values.
	      It also normally suppresses output of obsolete termcap capabil-
	      ities such as bs.	 This option forces a more  literal  transla-
	      tion that also preserves the obsolete capabilities.

       -odir  Write  compiled entries to given directory.  Overrides the TER-
	      MINFO environment variable.

       -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	 ter-
	      minfo;  and  outright broken ports like AIX 3.x that have their
	      own extensions incompatible with SVr4/XSI.   Available  subsets
	      are  "SVr1",  "Ultrix",  "HP", "BSD" and "AIX"; see terminfo(5)
	      for details.

       -r     Force entry resolution (so there are no remaining tc  capabili-
	      ties)  even when doing translation to termcap format.  This may
	      be needed if you are preparing a termcap	file  for  a  termcap
	      library (such as GNU termcap through version 1.3 or BSD termcap
	      through 4.3BSD) that does not handle multiple  tc	 capabilities
	      per entry.

       -s     Summarize	 the  compile  by  showing  the	 directory into which
	      entries are written, and the number of entries which  are	 com-
	      piled.

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

       -t     tells tic to discard commented-out capabilities.	Normally when
	      translating  from terminfo to termcap, untranslatable capabili-
	      ties are commented-out.

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

       -vn    specifies	 that  (verbose)  output be written 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.

       -wn    specifies the width of the output.

       -x     Treat unknown capabilities as user-defined.  That	 is,  if  you
	      supply  a capability name which tic does not recognize, it will
	      infer its type (boolean, number or string) from the syntax  and
	      make an extended table entry for that.

       file   contains	one  or more terminfo terminal descriptions in source
	      format  [see  terminfo(5)].   Each  description  in  the	 file
	      describes the capabilities of a particular terminal.

       The debug flag levels are as follows:

       1      Names of files created and linked

       2      Information related to the ''use'' facility

       3      Statistics from the hashing algorithm

       5      String-table memory allocations

       7      Entries into the string-table

       8      List of tokens encountered by scanner

       9      All values computed in construction of the hash table

       If the debug level n is not given, it is taken to be one.

       All  but	 one  of the capabilities recognized by tic are documented in
       terminfo(5).  The exception is the use capability.

       When a use=entry-name field is discovered in  a	terminal  entry	 cur-
       rently  being  compiled,	 tic reads in the binary from /usr/share/ter-
       minfo 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/share/terminfo.)  tic duplicates the capabil-
       ities in entry-name for the current entry, with the exception of those
       capabilities that explicitly are defined in the current entry.

       When an entry, e.g., entry_name_1, contains a use=entry_name_2  field,
       any   canceled  capabilities  in	 entry_name_2  must  also  appear  in
       entry_name_1 before use= for these  capabilities	 to  be	 canceled  in
       entry_name_1.

       If  the environment variable TERMINFO is set, the compiled results are
       placed there instead of /usr/share/terminfo.

       Total compiled entries cannot exceed 4096 bytes.	 The name field	 can-
       not  exceed  512	 bytes.	  Terminal  names exceeding the maximum alias
       length (32 characters on systems with long  filenames,  14  characters
       otherwise) will be truncated to the maximum alias length and a warning
       message will be printed.

COMPATIBILITY
       There is some  evidence	that  historic	tic  implementations  treated
       description fields with no whitespace in them as additional aliases or
       short names.  This tic does  not	 do  that,  but	 it  does  warn	 when
       description  fields may be treated that way and check them for danger-
       ous characters.

EXTENSIONS
       Unlike the stock SVr4 tic command, this	implementation	can  actually
       compile	termcap	 sources.   In	fact, entries in terminfo and termcap
       syntax can be mixed in a single source file.  See terminfo(5) for  the
       list of termcap names taken to be equivalent to terminfo names.

       The  SVr4  manual  pages are not clear on the resolution rules for use
       capabilities.  This implementation of tic will find use	targets	 any-
       where  in the source file, or anywhere in the file tree rooted at TER-
       MINFO (if TERMINFO is  defined),	 or  in	 the  user's  $HOME/.terminfo
       directory  (if  it exists), or (finally) anywhere in the system's file
       tree of compiled entries.

       The error messages from this tic have the same format as GNU  C	error
       messages, and can be parsed by GNU Emacs's compile facility.

       The  -C, -G, -I, -N, -R, -T, -V, -a, -e, -f, -g, -o, -r, -s, -t and -x
       options are not supported under SVr4.   The  SVr4  -c  mode  does  not
       report bad use links.

       System  V  does	not  compile  entries  to  or  read entries from your
       $HOME/.terminfo directory unless TERMINFO is explicitly set to it.

FILES
       /usr/share/terminfo/?/*
	    Compiled terminal description database.

SEE ALSO
       infocmp(1M), captoinfo(1M), infotocap(1M), toe(1M),  curses(3X),	 ter-
       minfo(5).



								      tic(1M)


UNIX/Linux commands referenced on this page:
  1. file
  2. look
  3. at
  4. as
  5. strings
  6. which
  7. more
  8. tc
  9. make
  10. minfo
  11. clear
  12. find