1<!-- 2 **************************************************************************** 3 * Copyright 2018-2023,2024 Thomas E. Dickey * 4 * Copyright 1998-2016,2017 Free Software Foundation, Inc. * 5 * * 6 * Permission is hereby granted, free of charge, to any person obtaining a * 7 * copy of this software and associated documentation files (the * 8 * "Software"), to deal in the Software without restriction, including * 9 * without limitation the rights to use, copy, modify, merge, publish, * 10 * distribute, distribute with modifications, sublicense, and/or sell * 11 * copies of the Software, and to permit persons to whom the Software is * 12 * furnished to do so, subject to the following conditions: * 13 * * 14 * The above copyright notice and this permission notice shall be included * 15 * in all copies or substantial portions of the Software. * 16 * * 17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * 18 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * 19 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * 20 * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * 21 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * 22 * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * 23 * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * 24 * * 25 * Except as contained in this notice, the name(s) of the above copyright * 26 * holders shall not be used in advertising or otherwise to promote the * 27 * sale, use or other dealings in this Software without prior written * 28 * authorization. * 29 **************************************************************************** 30 * @Id: tic.1m,v 1.110 2024/04/27 17:57:06 tom Exp @ 31--> 32<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> 33<HTML> 34<HEAD> 35<meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> 36<meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> 37<TITLE>tic 1m 2024-04-27 ncurses 6.5 User commands</TITLE> 38<link rel="author" href="mailto:bug-ncurses@gnu.org"> 39 40</HEAD> 41<BODY> 42<H1 class="no-header">tic 1m 2024-04-27 ncurses 6.5 User commands</H1> 43<PRE> 44<STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG> User commands <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG> 45 46 47 48 49</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE> 50 <STRONG>tic</STRONG> - compile terminal descriptions for <EM>terminfo</EM> or <EM>termcap</EM> 51 52 53</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE> 54 <STRONG>tic</STRONG> [<STRONG>-01acCDfgGIKLNqrstTUVWx</STRONG>] [<STRONG>-e</STRONG> <EM>terminal-type-list</EM>] [<STRONG>-o</STRONG> <EM>dir</EM>] [<STRONG>-Q</STRONG>[<EM>n</EM>]] 55 [<STRONG>-R</STRONG> <EM>subset</EM>] [<STRONG>-v</STRONG>[<EM>n</EM>]] [<STRONG>-w</STRONG>[<EM>n</EM>]] <EM>file</EM> 56 57 58</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE> 59 The <STRONG>tic</STRONG> command translates a <STRONG>terminfo</STRONG> file from source format into 60 compiled format. The compiled format is necessary for use with the 61 library routines in <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>. 62 63 As described in <STRONG><A HREF="term.5.html">term(5)</A></STRONG>, the database may be either a directory tree 64 (one file per terminal entry) or a hashed database (one record per 65 entry). The <STRONG>tic</STRONG> command writes only one type of entry, depending on 66 how it was built: 67 68 <STRONG>o</STRONG> For directory trees, the top-level directory, e.g., 69 /usr/share/terminfo, specifies the location of the database. 70 71 <STRONG>o</STRONG> For hashed databases, a filename is needed. If the given file is 72 not found by that name, but can be found by adding the suffix 73 ".db", then that is used. 74 75 The default name for the hashed database is the same as the default 76 directory name (only adding a ".db" suffix). 77 78 In either case (directory or hashed database), <STRONG>tic</STRONG> will create the 79 container if it does not exist. For a directory, this would be the 80 "terminfo" leaf, versus a "terminfo.db" file. 81 82 The results are normally placed in the system terminfo database 83 <STRONG>/usr/share/terminfo</STRONG>. The compiled terminal description can be placed 84 in a different terminfo database. There are two ways to achieve this: 85 86 <STRONG>o</STRONG> First, you may override the system default either by using the <STRONG>-o</STRONG> 87 option, or by setting the variable <EM>TERMINFO</EM> in your shell 88 environment to a valid database location. 89 90 <STRONG>o</STRONG> Secondly, if <STRONG>tic</STRONG> cannot write in <EM>/usr/share/terminfo</EM> or the 91 location specified using your <EM>TERMINFO</EM> variable, it looks for the 92 directory <EM>$HOME/.terminfo</EM> (or hashed database <EM>$HOME/.terminfo.db)</EM>; 93 if that location exists, the entry is placed there. 94 95 Libraries that read terminfo entries are expected to check in 96 succession 97 98 <STRONG>o</STRONG> a location specified with the <EM>TERMINFO</EM> environment variable, 99 100 <STRONG>o</STRONG> <EM>$HOME/.terminfo</EM>, 101 102 <STRONG>o</STRONG> directories listed in the <EM>TERMINFO</EM><STRONG>_</STRONG><EM>DIRS</EM> environment variable, 103 104 <STRONG>o</STRONG> a compiled-in list of directories (/usr/share/terminfo), and 105 106 <STRONG>o</STRONG> the system terminfo database (<EM>/usr/share/terminfo</EM>). 107 108 The <EM>Fetching</EM> <EM>Compiled</EM> <EM>Descriptions</EM> section in the <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> manual 109 goes into further detail. 110 111 112</PRE><H3><a name="h3-Aliases">Aliases</a></H3><PRE> 113 This is the same program as infotocap and captoinfo; usually those are 114 linked to, or copied from this program: 115 116 <STRONG>o</STRONG> When invoked as infotocap, tic sets the <STRONG>-I</STRONG> option. 117 118 <STRONG>o</STRONG> When invoked as captoinfo, tic sets the <STRONG>-C</STRONG> option. 119 120 121</PRE><H2><a name="h2-OPTIONS">OPTIONS</a></H2><PRE> 122 <STRONG>-0</STRONG> restricts the output to a single line 123 124 <STRONG>-1</STRONG> restricts the output to a single column 125 126 <STRONG>-a</STRONG> tells <STRONG>tic</STRONG> to retain commented-out capabilities rather than 127 discarding them. Capabilities are commented by prefixing them 128 with a period. This sets the <STRONG>-x</STRONG> option, because it treats the 129 commented-out entries as user-defined names. If the source is 130 termcap, accept the 2-character names required by version 6. 131 Otherwise these are ignored. 132 133 <STRONG>-C</STRONG> Force source translation to termcap format. Note: this differs 134 from the <STRONG>-C</STRONG> option of <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG> in that it does not merely 135 translate capability names, but also translates terminfo strings 136 to termcap format. Capabilities that are not translatable are 137 left in the entry under their terminfo names but commented out 138 with two preceding dots. The actual format used incorporates 139 some improvements for escaped characters from terminfo format. 140 For a stricter BSD-compatible translation, add the <STRONG>-K</STRONG> option. 141 142 If this is combined with <STRONG>-c</STRONG>, <STRONG>tic</STRONG> makes additional checks to 143 report cases where the terminfo values do not have an exact 144 equivalent in termcap form. For example: 145 146 <STRONG>o</STRONG> <STRONG>sgr</STRONG> usually will not convert, because termcap lacks the 147 ability to work with more than two parameters, and because 148 termcap lacks many of the arithmetic/logical operators used 149 in terminfo. 150 151 <STRONG>o</STRONG> capabilities with more than one delay or with delays before 152 the end of the string will not convert completely. 153 154 <STRONG>-c</STRONG> tells <STRONG>tic</STRONG> to only check <EM>file</EM> for errors, including syntax 155 problems and bad use-links. If you specify <STRONG>-C</STRONG> (<STRONG>-I</STRONG>) with this 156 option, the code will print warnings about entries which, after 157 use resolution, are more than 1023 (4096) bytes long. Due to a 158 fixed buffer length in older termcap libraries, as well as buggy 159 checking for the buffer length (and a documented limit in 160 terminfo), these entries may cause core dumps with other 161 implementations. 162 163 <STRONG>tic</STRONG> checks string capabilities to ensure that those with 164 parameters will be valid expressions. It does this check only 165 for the predefined string capabilities; those which are defined 166 with the <STRONG>-x</STRONG> option are ignored. 167 168 <STRONG>-D</STRONG> tells <STRONG>tic</STRONG> to print the database locations that it knows about, 169 and exit. The first location shown is the one to which it would 170 write compiled terminal descriptions. If <STRONG>tic</STRONG> is not able to 171 find a writable database location according to the rules 172 summarized above, it will print a diagnostic and exit with an 173 error rather than printing a list of database locations. 174 175 <STRONG>-e</STRONG> <EM>list</EM> 176 Limit writes and translations to the comma-separated <EM>list</EM> of 177 terminal types. If any name or alias of a terminal matches one 178 of the names in the list, the entry will be written or 179 translated as normal. Otherwise no output will be generated for 180 it. The option value is interpreted as a file containing the 181 list if it contains a '/'. (Note: depending on how tic was 182 compiled, this option may require <STRONG>-I</STRONG> or <STRONG>-C</STRONG>.) 183 184 <STRONG>-f</STRONG> Display complex terminfo strings which contain 185 if/then/else/endif expressions indented for readability. 186 187 <STRONG>-G</STRONG> Display constant literals in decimal form rather than their 188 character equivalents. 189 190 <STRONG>-g</STRONG> Display constant character literals in quoted form rather than 191 their decimal equivalents. 192 193 <STRONG>-I</STRONG> Force source translation to terminfo format. 194 195 <STRONG>-K</STRONG> Suppress some longstanding <EM>ncurses</EM> extensions to termcap format, 196 e.g., "\s" for space. 197 198 <STRONG>-L</STRONG> Force source translation to terminfo format using the long C 199 variable names listed in <<STRONG>term.h</STRONG>> 200 201 <STRONG>-N</STRONG> Disable smart defaults. Normally, when translating from termcap 202 to terminfo, the compiler makes a number of assumptions about 203 the defaults of string capabilities <STRONG>reset1_string</STRONG>, 204 <STRONG>carriage_return</STRONG>, <STRONG>cursor_left</STRONG>, <STRONG>cursor_down</STRONG>, <STRONG>scroll_forward</STRONG>, <STRONG>tab</STRONG>, 205 <STRONG>newline</STRONG>, <STRONG>key_backspace</STRONG>, <STRONG>key_left</STRONG>, and <STRONG>key_down</STRONG>, then attempts to 206 use obsolete termcap capabilities to deduce correct values. It 207 also normally suppresses output of obsolete termcap capabilities 208 such as <STRONG>bs</STRONG>. This option forces a more literal translation that 209 also preserves the obsolete capabilities. 210 211 <STRONG>-o</STRONG><EM>dir</EM> Write compiled entries to given database location. Overrides 212 the <EM>TERMINFO</EM> environment variable. 213 214 <STRONG>-Q</STRONG><EM>n</EM> Rather than show source in terminfo (text) format, print the 215 compiled (binary) format in hexadecimal or base64 form, 216 depending on the option's value: 217 218 1 hexadecimal 219 220 2 base64 221 222 3 hexadecimal and base64 223 224 <STRONG>-q</STRONG> Suppress comments and blank lines when showing translated 225 source. 226 227 <STRONG>-R</STRONG><EM>subset</EM> 228 Restrict output to a given subset. This option is for use with 229 archaic versions of terminfo like those on SVr1, Ultrix, or HP- 230 UX that do not support the full set of SVR4/XSI Curses terminfo; 231 and outright broken ports like AIX 3.x that have their own 232 extensions incompatible with SVr4/XSI. 233 234 Available subsets are 235 "SVr1", "Ultrix", "HP", "BSD", and "AIX" 236 237 See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for details. 238 239 <STRONG>-r</STRONG> Force entry resolution (so there are no remaining tc 240 capabilities) even when doing translation to termcap format. 241 This may be needed if you are preparing a termcap file for a 242 termcap library (such as GNU termcap through version 1.3 or BSD 243 termcap through 4.3BSD) that does not handle multiple tc 244 capabilities per entry. 245 246 <STRONG>-s</STRONG> Summarize the compile by showing the database location into 247 which entries are written, and the number of entries which are 248 compiled. 249 250 <STRONG>-T</STRONG> eliminates size-restrictions on the generated text. This is 251 mainly useful for testing and analysis, since the compiled 252 descriptions are limited (e.g., 1023 for termcap, 4096 for 253 terminfo). 254 255 <STRONG>-t</STRONG> tells <STRONG>tic</STRONG> to discard commented-out capabilities. Normally when 256 translating from terminfo to termcap, untranslatable 257 capabilities are commented-out. 258 259 <STRONG>-U</STRONG> tells <STRONG>tic</STRONG> to not post-process the data after parsing the source 260 file. Normally, it infers data which is commonly missing in 261 older terminfo data, or in termcaps. 262 263 <STRONG>-V</STRONG> reports the version of <EM>ncurses</EM> which was used in this program, 264 and exits. 265 266 <STRONG>-v</STRONG><EM>n</EM> specifies that (verbose) output be written to standard error 267 trace information showing <STRONG>tic</STRONG>'s progress. 268 269 The optional parameter <EM>n</EM> is a number from 1 to 9, inclusive, 270 indicating the desired level of detail of information. 271 272 <STRONG>o</STRONG> If <EM>ncurses</EM> is built without tracing support, the optional 273 parameter is ignored. 274 275 <STRONG>o</STRONG> If <EM>n</EM> is omitted, the default level is 1. 276 277 <STRONG>o</STRONG> If <EM>n</EM> is specified and greater than 1, the level of detail is 278 increased, and the output is written (with tracing 279 information) to the "trace" file. 280 281 The debug flag levels are as follows: 282 283 1 Names of files created and linked 284 285 2 Information related to the "use" facility 286 287 3 Statistics from the hashing algorithm 288 289 4 Details of extended capabilities 290 291 5 (unused) 292 293 6 (unused) 294 295 7 Entries into the string-table 296 297 8 List of tokens encountered by scanner 298 299 9 All values computed in construction of the hash table 300 301 <STRONG>-W</STRONG> By itself, the <STRONG>-w</STRONG> option will not force long strings to be 302 wrapped. Use the <STRONG>-W</STRONG> option to do this. 303 304 If you specify both <STRONG>-f</STRONG> and <STRONG>-W</STRONG> options, the latter is ignored 305 when <STRONG>-f</STRONG> has already split the line. 306 307 <STRONG>-w</STRONG><EM>n</EM> specifies the width of the output. The parameter is optional. 308 If it is omitted, it defaults to 60. 309 310 <STRONG>-x</STRONG> Treat unknown capabilities as user-defined (see <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>). 311 That is, if you supply a capability name which <STRONG>tic</STRONG> does not 312 recognize, it will infer its type (Boolean, number or string) 313 from the syntax and make an extended table entry for that. 314 User-defined capability strings whose name begins with "k" are 315 treated as function keys. 316 317 318</PRE><H3><a name="h3-Parameters">Parameters</a></H3><PRE> 319 <EM>file</EM> contains one or more <STRONG>terminfo</STRONG> terminal descriptions in source 320 format [see <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>]. Each description in the file 321 describes the capabilities of a particular terminal. 322 323 If <EM>file</EM> is "-", then the data is read from the standard input. 324 The <EM>file</EM> parameter may also be the path of a character-device. 325 326 327</PRE><H3><a name="h3-Processing">Processing</a></H3><PRE> 328 All but one of the capabilities recognized by <STRONG>tic</STRONG> are documented in 329 <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. The exception is the <STRONG>use</STRONG> capability. 330 331 When a <STRONG>use</STRONG>=<EM>entry</EM>-<EM>name</EM> field is discovered in a terminal entry currently 332 being compiled, <STRONG>tic</STRONG> reads in the binary from <STRONG>/usr/share/terminfo</STRONG> to 333 complete the entry. (Entries created from <EM>file</EM> will be used first. 334 <STRONG>tic</STRONG> duplicates the capabilities in <EM>entry</EM>-<EM>name</EM> for the current entry, 335 with the exception of those capabilities that explicitly are defined in 336 the current entry. 337 338 When an entry, e.g., <STRONG>entry_name_1</STRONG>, contains a <STRONG>use=</STRONG><EM>entry</EM>_<EM>name</EM>_<EM>2</EM> field, 339 any canceled capabilities in <EM>entry</EM>_<EM>name</EM>_<EM>2</EM> must also appear in 340 <STRONG>entry_name_1</STRONG> before <STRONG>use=</STRONG> for these capabilities to be canceled in 341 <STRONG>entry_name_1</STRONG>. 342 343 Total compiled entries cannot exceed 4096 bytes in the legacy storage 344 format, or 32768 using the extended number format. The name field 345 cannot exceed 512 bytes. Terminal names exceeding the maximum alias 346 length (32 characters on systems with long filenames, 14 characters 347 otherwise) will be truncated to the maximum alias length and a warning 348 message will be printed. 349 350 351</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE> 352 <EM>/usr/share/terminfo</EM> 353 compiled terminal description database 354 355 356</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE> 357 There is some evidence that historic <STRONG>tic</STRONG> implementations treated 358 description fields with no whitespace in them as additional aliases or 359 short names. This <STRONG>tic</STRONG> does not do that, but it does warn when 360 description fields may be treated that way and check them for dangerous 361 characters. 362 363 364</PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE> 365 Unlike the SVr4 <STRONG>tic</STRONG> command, this implementation can actually compile 366 termcap sources. In fact, entries in terminfo and termcap syntax can 367 be mixed in a single source file. See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for the list of 368 termcap names taken to be equivalent to terminfo names. 369 370 The SVr4 manual pages are not clear on the resolution rules for <STRONG>use</STRONG> 371 capabilities. This implementation of <STRONG>tic</STRONG> will find <STRONG>use</STRONG> targets 372 anywhere in the source file, or anywhere in the file tree rooted at 373 <EM>TERMINFO</EM> (if <EM>TERMINFO</EM> is defined), or in the user's <EM>$HOME/.terminfo</EM> 374 database (if it exists), or (finally) anywhere in the system's file 375 tree of compiled entries. 376 377 The error messages from this <STRONG>tic</STRONG> have the same format as GNU C error 378 messages, and can be parsed by GNU Emacs's compile facility. 379 380 Aside from <STRONG>-c</STRONG> and <STRONG>-v</STRONG>, options are not portable: 381 382 <STRONG>o</STRONG> Most of tic's options are not supported by SVr4 <STRONG>tic</STRONG>: 383 384 <STRONG>-0</STRONG> <STRONG>-1</STRONG> <STRONG>-C</STRONG> <STRONG>-G</STRONG> <STRONG>-I</STRONG> <STRONG>-N</STRONG> <STRONG>-R</STRONG> <STRONG>-T</STRONG> <STRONG>-V</STRONG> <STRONG>-a</STRONG> <STRONG>-e</STRONG> <STRONG>-f</STRONG> <STRONG>-g</STRONG> <STRONG>-o</STRONG> <STRONG>-r</STRONG> <STRONG>-s</STRONG> <STRONG>-t</STRONG> <STRONG>-x</STRONG> 385 386 <STRONG>o</STRONG> The NetBSD <STRONG>tic</STRONG> supports a few of the <EM>ncurses</EM> options 387 388 <STRONG>-a</STRONG> <STRONG>-o</STRONG> <STRONG>-x</STRONG> 389 390 and adds <STRONG>-S</STRONG> (a feature which does the same thing as infocmp's <STRONG>-e</STRONG> 391 and <STRONG>-E</STRONG> options). 392 393 The SVr4 <STRONG>-c</STRONG> mode does not report bad "use=" links. 394 395 System V does not compile entries to or read entries from your 396 <EM>$HOME/.terminfo</EM> database unless <EM>TERMINFO</EM> is explicitly set to it. 397 398 399</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE> 400 X/Open Curses, Issue 7 (2009) provides a brief description of <STRONG>tic</STRONG>. It 401 lists one option: <STRONG>-c</STRONG>. The omission of <STRONG>-v</STRONG> is unexpected. The change 402 history states that the description is derived from Tru64. According 403 to its manual pages, that system also supported the <STRONG>-v</STRONG> option. 404 405 Shortly after Issue 7 was released, Tru64 was discontinued. As of 406 2019, the surviving implementations of <STRONG>tic</STRONG> are SVr4 (AIX, HP-UX and 407 Solaris), <EM>ncurses</EM> and NetBSD curses. The SVr4 <STRONG>tic</STRONG> programs all support 408 the <STRONG>-v</STRONG> option. The NetBSD <STRONG>tic</STRONG> program follows X/Open's documentation, 409 omitting the <STRONG>-v</STRONG> option. 410 411 The X/Open rationale states that some implementations of <STRONG>tic</STRONG> read 412 terminal descriptions from the standard input if the <EM>file</EM> parameter is 413 omitted. None of these implementations do that. Further, it comments 414 that some may choose to read from "./terminfo.src" but that is 415 obsolescent behavior from SVr2, and is not (for example) a documented 416 feature of SVr3. 417 418 419</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> 420 System V Release 2 provided a <STRONG>tic</STRONG> utility. It accepted a single 421 option: <STRONG>-v</STRONG> (optionally followed by a number). According to Ross 422 Ridge's comment in <EM>mytinfo</EM>, this version of <STRONG>tic</STRONG> was unable to represent 423 cancelled capabilities. 424 425 System V Release 3 provided a different <STRONG>tic</STRONG> utility, written by Pavel 426 Curtis, (originally named "compile" in <EM>pcurses</EM>). This added an option 427 <STRONG>-c</STRONG> to check the file for errors, with the caveat that errors in "use=" 428 links would not be reported. System V Release 3 documented a few 429 warning messages which did not appear in <EM>pcurses</EM>. While the program 430 itself was changed little as development continued with System V 431 Release 4, the table of capabilities grew from 180 (<EM>pcurses</EM>) to 464 432 (Solaris). 433 434 In early development of <EM>ncurses</EM> (1993), Zeyd Ben-Halim used the table 435 from <EM>mytinfo</EM> to extend the <EM>pcurses</EM> table to 469 capabilities (456 436 matched SVr4, 8 were only in SVr4, 13 were not in SVr4). Of those 13, 437 11 were ultimately discarded (perhaps to match the draft of X/Open 438 Curses). The exceptions were <STRONG>memory_lock_above</STRONG> and <STRONG>memory_unlock</STRONG> (see 439 <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>). 440 441 Eric Raymond incorporated parts of <EM>mytinfo</EM> into <EM>ncurses</EM> to implement 442 the termcap-to-terminfo source conversion, and extended that to begin 443 development of the corresponding terminfo-to-termcap source conversion, 444 Thomas Dickey completed that development over the course of several 445 years. 446 447 In 1999, Thomas Dickey added the <STRONG>-x</STRONG> option to support user-defined 448 capabilities. 449 450 In 2010, Roy Marples provided a <STRONG>tic</STRONG> program and terminfo library for 451 NetBSD. That implementation adapts several features from <EM>ncurses</EM>, 452 including <STRONG>tic</STRONG>'s <STRONG>-x</STRONG> option. 453 454 The <STRONG>-c</STRONG> option tells <STRONG>tic</STRONG> to check for problems in the terminfo source 455 file. Continued development provides additional checks: 456 457 <STRONG>o</STRONG> <EM>pcurses</EM> had 8 warnings 458 459 <STRONG>o</STRONG> <EM>ncurses</EM> in 1996 had 16 warnings 460 461 <STRONG>o</STRONG> Solaris (SVr4) curses has 28 warnings 462 463 <STRONG>o</STRONG> NetBSD tic in 2019 has 19 warnings. 464 465 <STRONG>o</STRONG> <EM>ncurses</EM> in 2019 has 96 warnings 466 467 The checking done in <EM>ncurses</EM>' <STRONG>tic</STRONG> helps with the conversion to termcap, 468 as well as pointing out errors and inconsistencies. It is also used to 469 ensure consistency with the user-defined capabilities. There are 527 470 distinct capabilities in <EM>ncurses</EM>' terminal database; 128 of those are 471 user-defined. 472 473 474</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE> 475 Eric S. Raymond <esr@snark.thyrsus.com> and 476 Thomas E. Dickey <dickey@invisible-island.net> 477 478 479</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> 480 <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, 481 <STRONG><A HREF="term.5.html">term(5)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG> 482 483 484 485ncurses 6.5 2024-04-27 <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG> 486</PRE> 487<div class="nav"> 488<ul> 489<li><a href="#h2-NAME">NAME</a></li> 490<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li> 491<li><a href="#h2-DESCRIPTION">DESCRIPTION</a> 492<ul> 493<li><a href="#h3-Aliases">Aliases</a></li> 494</ul> 495</li> 496<li><a href="#h2-OPTIONS">OPTIONS</a> 497<ul> 498<li><a href="#h3-Parameters">Parameters</a></li> 499<li><a href="#h3-Processing">Processing</a></li> 500</ul> 501</li> 502<li><a href="#h2-FILES">FILES</a></li> 503<li><a href="#h2-NOTES">NOTES</a></li> 504<li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li> 505<li><a href="#h2-PORTABILITY">PORTABILITY</a></li> 506<li><a href="#h2-HISTORY">HISTORY</a></li> 507<li><a href="#h2-AUTHORS">AUTHORS</a></li> 508<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li> 509</ul> 510</div> 511</BODY> 512</HTML> 513