X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=man%2Ftic.1m;h=ec30e59633fedb18c92d016bfb9fdff2bd61732f;hp=95f806970829014961cef53cfe4d4df7c95e673f;hb=71c0306f0824ef2b10c4c5813fb003db48f3012e;hpb=661078ddbde3ce0f3b06e95642fbb9b5fef7dca1 diff --git a/man/tic.1m b/man/tic.1m index 95f80697..ec30e596 100644 --- a/man/tic.1m +++ b/man/tic.1m @@ -1,16 +1,64 @@ -.\" $Id: tic.1m,v 1.18 1998/01/17 21:11:30 tom Exp $ -.TH tic 1M "" +.\"*************************************************************************** +.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * +.\" * +.\" Permission is hereby granted, free of charge, to any person obtaining a * +.\" copy of this software and associated documentation files (the * +.\" "Software"), to deal in the Software without restriction, including * +.\" without limitation the rights to use, copy, modify, merge, publish, * +.\" distribute, distribute with modifications, sublicense, and/or sell * +.\" copies of the Software, and to permit persons to whom the Software is * +.\" furnished to do so, subject to the following conditions: * +.\" * +.\" The above copyright notice and this permission notice shall be included * +.\" in all copies or substantial portions of the Software. * +.\" * +.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * +.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * +.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * +.\" IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * +.\" DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * +.\" OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * +.\" THE USE OR OTHER DEALINGS IN THE SOFTWARE. * +.\" * +.\" Except as contained in this notice, the name(s) of the above copyright * +.\" holders shall not be used in advertising or otherwise to promote the * +.\" sale, use or other dealings in this Software without prior written * +.\" authorization. * +.\"*************************************************************************** +.\" +.\" $Id: tic.1m,v 1.45 2010/07/31 16:08:48 tom Exp $ +.TH @TIC@ 1M "" .ds n 5 -.ds d @DATADIR@/terminfo +.ds d @TERMINFO@ .SH NAME -\fBtic\fR - the \fIterminfo\fR entry-description compiler +\fBtic\fR \- the \fIterminfo\fR entry-description compiler .SH SYNOPSIS \fBtic\fR -[\fB-v\fR[\fIn\fR]] -[\fB-w\fR[\fIn\fR]] -[\fB-1hcpICNRrsTu\fR] -[\fB-e\fR \fInames\fR] -[\fB-o\fR \fIdir\fR] \fIfile\fR +[\fB\-\ +1\ +C\ +G\ +I\ +L\ +N\ +T\ +U\ +V\ +a\ +c\ +f\ +g\ +r\ +s\ +t\ +x\ +\fR] +[\fB\-e\fR \fInames\fR] +[\fB\-o\fR \fIdir\fR] +[\fB\-R\fR \fIsubset\fR] +[\fB\-v\fR[\fIn\fR]] +[\fB\-w\fR[\fIn\fR]] +\fIfile\fR .br .SH DESCRIPTION The command \fBtic\fR translates a \fBterminfo\fR file from source @@ -31,59 +79,66 @@ Libraries that read terminfo entries are expected to check for a TERMINFO directory first, look at \fI$HOME/.terminfo\fR if TERMINFO is not set, and finally look in \fI\*d\fR. .TP -\fB-h\fR -Print help message and exit. +\fB\-1\fR +restricts the output to a single column +.TP +\fB\-a\fR +tells \fBtic\fP to retain commented-out capabilities rather than discarding +them. Capabilities are commented by prefixing them with a period. +This sets the \fB\-x\fR 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. +.TP +\fB\-C\fR +Force source translation to termcap format. Note: this differs from the \fB\-C\fR +option of \fB@INFOCMP@\fR(1M) in that it does not merely translate capability +names, but also translates terminfo strings to termcap format. Capabilities +that are not translatable are left in the entry under their terminfo names +but commented out with two preceding dots. .TP -\fB-c\fR -specifies to only check \fIfile\fR for errors, including syntax problems and -bad use links. If you specify \fB-C\fR (\fB-I\fR) with this option, the code +\fB\-c\fR +tells \fBtic\fP to only check \fIfile\fR for errors, including syntax problems and +bad use links. If you specify \fB\-C\fR (\fB\-I\fR) 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 documented limit in terminfo), these entries may cause core dumps. .TP -\fB-v\fR\fIn\fR -specifies that (verbose) output be written to standard error trace -information showing \fBtic\fR's progress. The optional integer -\fIn\fR is a number from 1 to 10, inclusive, indicating the desired -level of detail of information. If \fIn\fR is omitted, the default -level is 1. If \fIn\fR is specified and greater than 1, the level of -detail is increased. -.TP -\fB-o\fR\fIdir\fR -Write compiled entries to given directory. Overrides the TERMINFO environment -variable. +\fB\-e \fR\fInames\fR +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 \fB\-I\fR or \fB\-C\fR.) .TP -\fB-w\fR\fIn\fR -specifies the width of the output. +\fB\-f\fR +Display complex terminfo strings which contain if/then/else/endif expressions +indented for readability. .TP -\fB-1\fR -restricts the output to a single column +\fB\-G\fR +Display constant literals in decimal form +rather than their character equivalents. .TP -\fB-T\fR -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 terminfo). +\fB\-g\fR +Display constant character literals in quoted form +rather than their decimal equivalents. .TP -\fB-I\fR +\fB\-I\fR Force source translation to terminfo format. .TP -\fB-L\fR +\fB\-L\fR Force source translation to terminfo format using the long C variable names listed in <\fBterm.h\fR> .TP -\fB-C\fR -Force source translation to termcap format. Note: this differs from the -C -option of \fIinfocmp\fR(1M) in that it does not merely translate capability -names, but also translates terminfo strings to termcap format. Capabilities -that are not translatable are left in the entry under their terminfo names -but commented out with two preceding dots. -.TP -\fB-N\fR -Disable smart defaults. -Normally, when translating from termcap to terminfo, the compiler makes +\fB\-N\fR +Disable smart defaults. +Normally, when translating from termcap to terminfo, the compiler makes a number of assumptions about the defaults of string capabilities -\fBreset1_string\fR, \fBcarriage_return\fR, \fBcursor_left\fR, +\fBreset1_string\fR, \fBcarriage_return\fR, \fBcursor_left\fR, \fBcursor_down\fR, \fBscroll_forward\fR, \fBtab\fR, \fBnewline\fR, \fBkey_backspace\fR, \fBkey_left\fR, and \fBkey_down\fR, then attempts to use obsolete termcap capabilities to deduce correct values. It also @@ -91,33 +146,67 @@ normally suppresses output of obsolete termcap capabilities such as \fBbs\fR. This option forces a more literal translation that also preserves the obsolete capabilities. .TP -\fB-R\fR\fIsubset\fR +\fB\-o\fR\fIdir\fR +Write compiled entries to given directory. Overrides the TERMINFO environment +variable. +.TP +\fB\-R\fR\fIsubset\fR 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 don't support -the full set of SVR4/XSI Curses terminfo; and outright broken ports like AIX +versions of terminfo like those on SVr1, Ultrix, or HP/UX that do not support +the full set of SVR4/XSI Curses terminfo; 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 \fBterminfo\fR(\*n) for details. .TP -\fI-r\fR +\fB\-r\fR Force entry resolution (so there are no remaining tc capabilities) 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 up -to version 1.3 or BSD termcap up to 4.3BSD) that doesn't handle multiple +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. .TP -\fI-s\fR +\fB\-s\fR Summarize the compile by showing the directory into which entries are written, and the number of entries which are compiled. .TP -\fI-e\fR -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.) +\fB\-T\fR +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 terminfo). +.TP +\fB\-t\fR +tells \fBtic\fP to discard commented-out capabilities. +Normally when translating from terminfo to termcap, +untranslatable capabilities are commented-out. +.TP 5 +\fB\-U\fR +tells \fBtic\fP to not post-process the data after parsing the source file. +Normally, it infers data which is commonly missing in older terminfo data, +or in termcaps. +.TP +\fB\-V\fR +reports the version of ncurses which was used in this program, and exits. +.TP +\fB\-v\fR\fIn\fR +specifies that (verbose) output be written to standard error trace +information showing \fBtic\fR's progress. +The optional parameter \fIn\fR is a number from 1 to 10, inclusive, +indicating the desired level of detail of information. +If \fIn\fR is omitted, the default level is 1. +If \fIn\fR is specified and greater than 1, the level of +detail is increased. +.TP +\fB\-w\fR\fIn\fR +specifies the width of the output. +The parameter is optional. +If it is omitted, it defaults to 60. +.TP +\fB\-x\fR +Treat unknown capabilities as user-defined. +That is, if you supply a capability name which \fBtic\fP does not recognize, +it will infer its type (boolean, number or string) from the syntax and +make an extended table entry for that. +User-defined capability strings +whose name begins with ``k'' are treated as function keys. .TP \fIfile\fR contains one or more \fBterminfo\fR terminal descriptions in source @@ -147,32 +236,33 @@ List of tokens encountered by scanner 9 All values computed in construction of the hash table .LP -If n is not given, it is taken to be one. +If the debug level \fIn\fR is not given, it is taken to be one. .PP All but one of the capabilities recognized by \fBtic\fR are documented in \fBterminfo\fR(\*n). The exception is the \fBuse\fR capability. - -When a \fBuse\fR=\fIentry\fR-\fIname\fR field is discovered in a +.PP +When a \fBuse\fR=\fIentry\fR\-\fIname\fR field is discovered in a terminal entry currently being compiled, \fBtic\fR reads in the binary from \fB\*d\fR to complete the entry. (Entries created from \fIfile\fR will be used first. If the environment variable \fBTERMINFO\fR is set, that directory is searched instead of \fB\*d\fR.) \fBtic\fR duplicates the capabilities in -\fIentry\fR-\fIname\fR for the current entry, with the exception of +\fIentry\fR\-\fIname\fR for the current entry, with the exception of those capabilities that explicitly are defined in the current entry. - +.PP When an entry, e.g., \fBentry_name_1\fR, contains a \fBuse=\fR\fIentry\fR_\fIname\fR_\fI2\fR field, any canceled capabilities in \fIentry\fR_\fIname\fR_\fI2\fR must also appear in \fBentry_name_1\fR before \fBuse=\fR for these capabilities to be canceled in \fBentry_name_1\fR. - +.PP If the environment variable \fBTERMINFO\fR is set, the compiled results are placed there instead of \fB\*d\fR. - +.PP Total compiled entries cannot exceed 4096 bytes. The name field cannot -exceed 128 bytes. Terminal names exceeding 14 characters will be -truncated to 14 characters and a warning message will be printed. +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. .SH COMPATIBILITY There is some evidence that historic \fBtic\fR implementations treated description fields with no whitespace in them as additional aliases or @@ -184,7 +274,7 @@ Unlike the stock SVr4 \fBtic\fR 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 \fBterminfo\fR(\*n) for the list of termcap names taken to be equivalent to terminfo names. - +.PP The SVr4 manual pages are not clear on the resolution rules for \fBuse\fR capabilities. This implementation of \fBtic\fR will find \fBuse\fR targets anywhere @@ -192,14 +282,31 @@ in the source file, or anywhere in the file tree rooted at \fBTERMINFO\fR (if \fBTERMINFO\fR is defined), or in the user's \fI$HOME/.terminfo\fR directory (if it exists), or (finally) anywhere in the system's file tree of compiled entries. - +.PP The error messages from this \fBtic\fR have the same format as GNU C error messages, and can be parsed by GNU Emacs's compile facility. - -The -o, -I, -C, -N, -R, -h, -e, -T, -r and -s options +.PP +The +\fB\-C\fR, +\fB\-G\fR, +\fB\-I\fR, +\fB\-N\fR, +\fB\-R\fR, +\fB\-T\fR, +\fB\-V\fR, +\fB\-a\fR, +\fB\-e\fR, +\fB\-f\fR, +\fB\-g\fR, +\fB\-o\fR, +\fB\-r\fR, +\fB\-s\fR, +\fB\-t\fR and +\fB\-x\fR +options are not supported under SVr4. -The SVr4 -c mode does not report bad use links. - +The SVr4 \fB\-c\fR mode does not report bad use links. +.PP System V does not compile entries to or read entries from your \fI$HOME/.terminfo\fR directory unless TERMINFO is explicitly set to it. .SH FILES @@ -207,8 +314,15 @@ System V does not compile entries to or read entries from your \fB\*d/?/*\fR Compiled terminal description database. .SH SEE ALSO -\fBinfocmp\fR(1M), \fBcaptoinfo\fR(1M), \fBinfotocap\fR(1M), \fBtoe\fR(1M), -\fBcurses\fR(3X), \fBterminfo\fR(\*n). +\fB@INFOCMP@\fR(1M), +\fB@CAPTOINFO@\fR(1M), +\fB@INFOTOCAP@\fR(1M), +\fB@TOE@\fR(1M), +\fBcurses\fR(3X), +\fBterminfo\fR(\*n). +.PP +This describes \fBncurses\fR +version @NCURSES_MAJOR@.@NCURSES_MINOR@ (patch @NCURSES_PATCH@). .\"# .\"# The following sets edit modes for GNU EMACS .\"# Local Variables: