-</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
- System V Release 2 provided a <STRONG>tic</STRONG> utility. It accepted a single
- option: <STRONG>-v</STRONG> (optionally followed by a number). According to Ross
- Ridge's comment in <EM>mytinfo</EM>, this version of <STRONG>tic</STRONG> was unable to represent
- cancelled capabilities.
-
- System V Release 3 provided a different <STRONG>tic</STRONG> utility, written by Pavel
- Curtis, (originally named "compile" in <EM>pcurses</EM>). This added an option
- <STRONG>-c</STRONG> to check the file for errors, with the caveat that errors in "use="
- links would not be reported. System V Release 3 documented a few warn-
- ing messages which did not appear in <EM>pcurses</EM>. While the program itself
- was changed little as development continued with System V Release 4,
- the table of capabilities grew from 180 (<EM>pcurses</EM>) to 464 (Solaris).
-
- In early development of ncurses (1993), Zeyd Ben-Halim used the table
- from <EM>mytinfo</EM> to extend the <EM>pcurses</EM> table to 469 capabilities (456
- matched SVr4, 8 were only in SVr4, 13 were not in SVr4). Of those 13,
- 11 were ultimately discarded (perhaps to match the draft of X/Open
- Curses). The exceptions were <STRONG>memory_lock_above</STRONG> and <STRONG>memory_unlock</STRONG> (see
- <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>).
-
- Eric Raymond incorporated parts of <EM>mytinfo</EM> into ncurses to implement
- the termcap-to-terminfo source conversion, and extended that to begin
- development of the corresponding terminfo-to-termcap source conversion,
- Thomas Dickey completed that development over the course of several
- years.
-
- In 1999, Thomas Dickey added the <STRONG>-x</STRONG> option to support user-defined
- capabilities.
-
- In 2010, Roy Marples provided a <STRONG>tic</STRONG> program and terminfo library for
- NetBSD. That implementation adapts several features from ncurses,
- including <STRONG>tic</STRONG>'s <STRONG>-x</STRONG> option.
-
- The <STRONG>-c</STRONG> option tells <STRONG>tic</STRONG> to check for problems in the terminfo source
- file. Continued development provides additional checks:
-
- <STRONG>o</STRONG> <EM>pcurses</EM> had 8 warnings
-
- <STRONG>o</STRONG> ncurses in 1996 had 16 warnings
-
- <STRONG>o</STRONG> Solaris (SVr4) curses has 28 warnings
-
- <STRONG>o</STRONG> NetBSD tic in 2019 has 19 warnings.
-
- <STRONG>o</STRONG> ncurses in 2019 has 96 warnings
-
- The checking done in ncurses' <STRONG>tic</STRONG> helps with the conversion to termcap,
- as well as pointing out errors and inconsistencies. It is also used to
- ensure consistency with the user-defined capabilities. There are 527
- distinct capabilities in ncurses' terminal database; 128 of those are
- user-defined.
-
-
-</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- X/Open Curses, Issue 7 (2009) provides a brief description of <STRONG>tic</STRONG>. It
- lists one option: <STRONG>-c</STRONG>. The omission of <STRONG>-v</STRONG> is unexpected. The change
- history states that the description is derived from True64 UNIX.
- According to its manual pages, that system also supported the <STRONG>-v</STRONG>
- option.
-
- Shortly after Issue 7 was released, Tru64 was discontinued. As of
- 2019, the surviving implementations of <STRONG>tic</STRONG> are SVr4 (AIX, HP-UX and
- Solaris), ncurses and NetBSD curses. The SVr4 <STRONG>tic</STRONG> programs all support
- the <STRONG>-v</STRONG> option. The NetBSD <STRONG>tic</STRONG> program follows X/Open's documentation,
- omitting the <STRONG>-v</STRONG> option.
-
- The X/Open rationale states that some implementations of <STRONG>tic</STRONG> read ter-
- minal descriptions from the standard input if the <EM>file</EM> parameter is
- omitted. None of these implementations do that. Further, it comments
- that some may choose to read from "./terminfo.src" but that is obsoles-
- cent behavior from SVr2, and is not (for example) a documented feature
- of SVr3.