Penguin
Annotated edit history of tic(1) version 1, including all changes. View license author blame.
Rev Author # Line
1 perry 1 tic
2 !!!tic
3 NAME
4 SYNOPSIS
5 DESCRIPTION
6 COMPATIBILITY
7 EXTENSIONS
8 FILES
9 SEE ALSO
10 ----
11 !!NAME
12
13
14 __tic__ - the ''terminfo'' entry-description compiler
15 !!SYNOPSIS
16
17
18 __tic__ [[__-1CINRTVacfrsx__] [[__-e__ ''names'']
19 [[__-o__ ''dir''] [[__-v__[[''n'']]
20 [[__-w__[[''n'']] ''file''
21 !!DESCRIPTION
22
23
24 The command __tic__ translates a __terminfo__ file
25 from source format into compiled format. The compiled format
26 is necessary for use with the library routines in
27 __ncurses__(3X).
28
29
30 The results are normally placed in the system terminfo
31 directory __/usr/share/terminfo__. There are two ways to
32 change this behavior.
33
34
35 First, you may override the system default by setting the
36 variable __TERMINFO__ in your shell environment to a
37 valid (existing) directory name.
38
39
40 Secondly, if __tic__ cannot get access to
41 ''/usr/share/terminfo'' or your TERMINFO directory, it
42 looks for the directory ''$HOME/.terminfo''; if that
43 directory exists, the entry is placed there.
44
45
46 Libraries that read terminfo entries are expected to check
47 for a TERMINFO directory first, look at
48 ''$HOME/.terminfo'' if TERMINFO is not set, and finally
49 look in ''/usr/share/terminfo''.
50
51
52 __-a__
53
54
55 tells __tic__ to retain commented-out capabilities rather
56 than discarding them. Capabilities are commented by
57 prefixing them with a period. This sets the __-x__
58 option, because it treats the commented-out entries as
59 user-defined names.
60
61
62 __-c__
63
64
65 tells __tic__ to only check ''file'' for errors,
66 including syntax problems and bad use links. If you specify
67 __-C__ (__-I__) with this option, the code will print
68 warnings about entries which, after use resolution, are more
69 than 1023 (4096) bytes long. Due to a fixed buffer length in
70 older termcap libraries (and a documented limit in
71 terminfo), these entries may cause core dumps.
72
73
74 __-v__''n''
75
76
77 specifies that (verbose) output be written to standard error
78 trace information showing __tic__'s progress. The
79 optional integer ''n'' is a number from 1 to 10,
80 inclusive, indicating the desired level of detail of
81 information. If ''n'' is omitted, the default level is 1.
82 If ''n'' is specified and greater than 1, the level of
83 detail is increased.
84
85
86 __-o__''dir''
87
88
89 Write compiled entries to given directory. Overrides the
90 TERMINFO environment variable.
91
92
93 __-w__''n''
94
95
96 specifies the width of the output.
97
98
99 __-1__
100
101
102 restricts the output to a single column
103
104
105 __-C__
106
107
108 Force source translation to termcap format. Note: this
109 differs from the -C option of ''infocmp''(1M) in that it
110 does not merely translate capability names, but also
111 translates terminfo strings to termcap format. Capabilities
112 that are not translatable are left in the entry under their
113 terminfo names but commented out with two preceding
114 dots.
115
116
117 __-G__
118
119
120 Display constant literals in decimal form rather than their
121 character equivalents.
122
123
124 __-I__
125
126
127 Force source translation to terminfo format.
128
129
130 __-L__
131
132
133 Force source translation to terminfo format using the long C
134 variable names listed in term.h____
135
136
137 __-N__
138
139
140 Disable smart defaults. Normally, when translating from
141 termcap to terminfo, the compiler makes a number of
142 assumptions about the defaults of string capabilities
143 __reset1_string__, __carriage_return__,
144 __cursor_left__, __cursor_down__,
145 __scroll_forward__, __tab__, __newline__,
146 __key_backspace__, __key_left__, and __key_down__,
147 then attempts to use obsolete termcap capabilities to deduce
148 correct values. It also normally suppresses output of
149 obsolete termcap capabilities such as __bs__. This option
150 forces a more literal translation that also preserves the
151 obsolete capabilities.
152
153
154 __-R__''subset''
155
156
157 Restrict output to a given subset. This option is for use
158 with archaic versions of terminfo like those on SVr1,
159 Ultrix, or HP/UX that don't support the full set of SVR4/XSI
160 Curses terminfo; and outright broken ports like AIX 3.x that
161 have their own extensions incompatible with SVr4/XSI.
162 Available subsets are
163 terminfo__(5) for details.
164
165
166 __-T__
167
168
169 eliminates size-restrictions on the generated text. This is
170 mainly useful for testing and analysis, since the compiled
171 descriptions are limited (e.g., 1023 for termcap, 4096 for
172 terminfo).
173
174
175 __-V__
176
177
178 reports the version of ncurses which was used in this
179 program, and exits.
180
181
182 __-r__
183
184
185 Force entry resolution (so there are no remaining tc
186 capabilities) even when doing translation to termcap format.
187 This may be needed if you are preparing a termcap file for a
188 termcap library (such as GNU termcap up to version 1.3 or
189 BSD termcap up to 4.3BSD) that doesn't handle multiple tc
190 capabilities per entry.
191
192
193 __-e__
194
195
196 Limit writes and translations to the following
197 comma-separated list of terminals. If any name or alias of a
198 terminal matches one of the names in the list, the entry
199 will be written or translated as normal. Otherwise no output
200 will be generated for it. The option value is interpreted as
201 a file containing the list if it contains a '/'. (Note:
202 depending on how tic was compiled, this option may require
203 -I or -C.)
204
205
206 __-f__
207
208
209 Display complex terminfo strings which contain
210 if/then/else/endif expressions indented for
211 readability.
212
213
214 __-g__
215
216
217 Display constant character literals in quoted form rather
218 than their decimal equivalents.
219
220
221 __-s__
222
223
224 Summarize the compile by showing the directory into which
225 entries are written, and the number of entries which are
226 compiled.
227
228
229 __-x__
230
231
232 Treat unknown capabilities as user-defined. That is, if you
233 supply a capability name which __tic__ does not
234 recognize, it will infer its type (boolean, number or
235 string) from the syntax and make an extended table entry for
236 that.
237
238
239 ''file''
240
241
242 contains one or more __terminfo__ terminal descriptions
243 in source format [[see terminfo(5)]. Each description
244 in the file describes the capabilities of a particular
245 terminal.
246
247
248 The debug flag levels are as follows:
249
250
251 1
252
253
254 Names of files created and linked
255
256
257 2
258
259
260 Information related to the ``use'' facility
261
262
263 3
264
265
266 Statistics from the hashing algorithm
267
268
269 5
270
271
272 String-table memory allocations
273
274
275 7
276
277
278 Entries into the string-table
279
280
281 8
282
283
284 List of tokens encountered by scanner
285
286
287 9
288
289
290 All values computed in construction of the hash
291 table
292
293
294 If n is not given, it is taken to be one.
295
296
297 All but one of the capabilities recognized by __tic__ are
298 documented in terminfo(5). The exception is the
299 __use__ capability.
300
301
302 When a __use__=''entry''-''name'' field is
303 discovered in a terminal entry currently being compiled,
304 __tic__ reads in the binary from
305 __/usr/share/terminfo__ to complete the entry. (Entries
306 created from ''file'' will be used first. If the
307 environment variable __TERMINFO__ is set, that directory
308 is searched instead of __/usr/share/terminfo__.)
309 __tic__ duplicates the capabilities in
310 ''entry''-''name'' for the current entry, with the
311 exception of those capabilities that explicitly are defined
312 in the current entry.
313
314
315 When an entry, e.g., __entry_name_1__, contains a
316 __use=__''entry''_''name''_''2'' field, any
317 canceled capabilities in ''entry''_''name''_''2''
318 must also appear in __entry_name_1__ before __use=__
319 for these capabilities to be canceled in
320 __entry_name_1__.
321
322
323 If the environment variable __TERMINFO__ is set, the
324 compiled results are placed there instead of
325 __/usr/share/terminfo__.
326
327
328 Total compiled entries cannot exceed 4096 bytes. The name
329 field cannot exceed 512 bytes. Terminal names exceeding the
330 maximum alias length (32 characters on systems with long
331 filenames, 14 characters otherwise) will be truncated to the
332 maximum alias length and a warning message will be
333 printed.
334 !!COMPATIBILITY
335
336
337 There is some evidence that historic __tic__
338 implementations treated description fields with no
339 whitespace in them as additional aliases or short names.
340 This __tic__ does not do that, but it does warn when
341 description fields may be treated that way and check them
342 for dangerous characters.
343 !!EXTENSIONS
344
345
346 Unlike the stock SVr4 __tic__ command, this
347 implementation can actually compile termcap sources. In
348 fact, entries in terminfo and termcap syntax can be mixed in
349 a single source file. See terminfo(5) for the list of
350 termcap names taken to be equivalent to terminfo
351 names.
352
353
354 The SVr4 manual pages are not clear on the resolution rules
355 for __use__ capabilities. This implementation of
356 __tic__ will find __use__ targets anywhere in the
357 source file, or anywhere in the file tree rooted at
358 __TERMINFO__ (if __TERMINFO__ is defined), or in the
359 user's ''$HOME/.terminfo'' directory (if it exists), or
360 (finally) anywhere in the system's file tree of compiled
361 entries.
362
363
364 The error messages from this __tic__ have the same format
365 as GNU C error messages, and can be parsed by GNU Emacs's
366 compile facility.
367
368
369 The __-C__, __-G__, __-I__, __-N__, __-R__,
370 __-T__, __-V__, __-a__, __-e__, __-f__,
371 __-g__, __-o__, __-r__, __-s__ and __-x__
372 options are not supported under SVr4. The SVr4 -c mode does
373 not report bad use links.
374
375
376 System V does not compile entries to or read entries from
377 your ''$HOME/.terminfo'' directory unless TERMINFO is
378 explicitly set to it.
379 !!FILES
380
381
382 __/usr/share/terminfo/?/*__
383
384
385 Compiled terminal description database.
386 !!SEE ALSO
387
388
389 __infocmp__(1M), __captoinfo__(1M),
390 __infotocap__(1M), __toe__(1M), __curses__(3X),
391 terminfo(5).
392 ----
This page is a man page (or other imported legacy content). We are unable to automatically determine the license status of this page.