X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=doc%2Fhtml%2Fman%2Ftic.1m.html;h=90c1162cf35ddae1763d2863021c32d42617d7bb;hp=a8d6e7d36f96ade16aa518d6cc35b589ef7ee9ac;hb=c3b21f65a2687f3894a0d3217006c23f162c893a;hpb=b1f61d9f3aa244512045a6b02e759825d7049d34 diff --git a/doc/html/man/tic.1m.html b/doc/html/man/tic.1m.html index a8d6e7d3..90c1162c 100644 --- a/doc/html/man/tic.1m.html +++ b/doc/html/man/tic.1m.html @@ -1,296 +1,434 @@ + + +
+ + +- +tic(1m) tic(1m) --
- tic - the terminfo entry-description compiler - - --
- tic [-1CINRTacfrsx] [-e names] [-o dir] [-v[n]] [-w[n]] - file - - --
- The command tic translates a terminfo file from source - format into compiled format. The compiled format is nec- - essary for use with the library routines in ncurses(3x). - - The results are normally placed in the system terminfo - directory @DATADIR@/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 @DATADIR@/terminfo - or your TERMINFO 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 TERMINFO directory first, look at $HOME/.terminfo if - TERMINFO is not set, and finally look in @DATADIR@/ter- - minfo. +
+ tic - the terminfo entry-description compiler - -a tells tic to retain commented-out capabilities - rather than discarding them. Capabilities are com- - mented by prefixing them with a period. This sets - the -x option, because it treats the commented-out - entries as user-defined names. - -c tells tic to only check file for errors, including - syntax problems and bad use links. If you specify - -C (-I) with this option, the code will print warn- - ings 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. - - -vn specifies that (verbose) output be written to stan- - dard 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. - - -odir Write compiled entries to given directory. - Overrides the TERMINFO environment variable. - - -wn specifies the width of the output. - - -1 restricts the output to a single column - - -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 translatable are - left in the entry under their terminfo names but - commented out with two preceding dots. - - -G Display constant literals in decimal form rather - than their character equivalents. +
+ tic [-01CDGIKLNTUVWacfgqrstx] [-e names] [-o dir] [-Q[n]] + [-R subset] [-v[n]] [-w[n]] file - -I Force source translation to terminfo format. - -L Force source translation to terminfo format using - the long C variable names listed in <term.h> +
+ The tic command translates a terminfo file from source + format into compiled format. The compiled format is nec- + essary for use with the library routines in ncurses(3x). - -N Disable smart defaults. Normally, when translating - from termcap to terminfo, the compiler makes a num- - ber of assumptions about the defaults of string - capabilities reset1_string, carriage_return, cur- - sor_left, cursor_down, scroll_forward, tab, new- - line, 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 capabilities such as bs. - This option forces a more literal translation that - also preserves the obsolete capabilities. + As described in term(5), the database may be either a + directory tree (one file per terminal entry) or a hashed + database (one record per entry). The tic command writes + only one type of entry, depending on how it was built: - -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 don't support - the full set of SVR4/XSI Curses terminfo; and out- - right 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. + o For directory trees, the top-level directory, e.g., + /usr/share/terminfo, specifies the location of the + database. - -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 terminfo). + o For hashed databases, a filename is needed. If the + given file is not found by that name, but can be found + by adding the suffix ".db", then that is used. - -r 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 - tc capabilities per entry. - - -e 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 con- - taining the list if it contains a '/'. (Note: - depending on how tic was compiled, this option may - require -I or -C.) + The default name for the hashed database is the same + as the default directory name (only adding a ".db" + suffix). - -f Display complex terminfo strings which contain - if/then/else/endif expressions indented for read- - ability. + In either case (directory or hashed database), tic will + create the container if it does not exist. For a direc- + tory, this would be the "terminfo" leaf, versus a "ter- + minfo.db" file. - -g Display constant character literals in quoted form - rather than their decimal equivalents. + The results are normally placed in the system terminfo + database /usr/share/terminfo. The compiled terminal + description can be placed in a different terminfo data- + base. There are two ways to achieve this: - -s Summarize the compile by showing the directory into - which entries are written, and the number of - entries which are compiled. + o First, you may override the system default either by + using the -o option, or by setting the variable TER- + MINFO in your shell environment to a valid database + location. - -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. + o Secondly, if tic cannot write in /usr/share/terminfo + or the location specified using your TERMINFO vari- + able, it looks for the directory $HOME/.terminfo (or + hashed database $HOME/.terminfo.db); if that location + exists, the entry is placed there. - file contains one or more terminfo terminal descriptions - in source format [see terminfo(5)]. Each descrip- - tion in the file describes the capabilities of a - particular terminal. + Libraries that read terminfo entries are expected to check + in succession - The debug flag levels are as follows: + o a location specified with the TERMINFO environment + variable, - 1 Names of files created and linked + o $HOME/.terminfo, - 2 Information related to the ``use'' facility + o directories listed in the TERMINFO_DIRS environment + variable, - 3 Statistics from the hashing algorithm + o a compiled-in list of directories + (/usr/local/ncurses/share/terminfo:/usr/share/ter- + minfo), and - 5 String-table memory allocations + o the system terminfo database (/usr/share/terminfo). - 7 Entries into the string-table - 8 List of tokens encountered by scanner +
+ -0 restricts the output to a single line - 9 All values computed in construction of the hash - table + -1 restricts the output to a single column - If n is not given, it is taken to be one. + -a tells tic to retain commented-out capabilities + rather than discarding them. Capabilities are com- + mented 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 translatable are + left in the entry under their terminfo names but + commented out with two preceding dots. The actual + format used incorporates some improvements for + escaped characters from terminfo format. For a + stricter BSD-compatible translation, add the -K + option. + + If this is combined with -c, tic makes additional + checks to report cases where the terminfo values do + not have an exact equivalent in termcap form. For + example: + + o sgr usually will not convert, because termcap + lacks the ability to work with more than two + parameters, and because termcap lacks many of + the arithmetic/logical operators used in ter- + minfo. + + o capabilities with more than one delay or with + delays before the end of the string will not + convert completely. + + -c tells tic to only check file for errors, including + syntax problems and bad use links. If you specify + -C (-I) with this option, the code will print warn- + ings about entries which, after use resolution, are + more than 1023 (4096) bytes long. Due to a fixed + buffer length in older termcap libraries, as well + as buggy checking for the buffer length (and a doc- + umented limit in terminfo), these entries may cause + core dumps with other implementations. + + tic checks string capabilities to ensure that those + with parameters will be valid expressions. It does + this check only for the predefined string capabili- + ties; those which are defined with the -x option + are ignored. + + -D tells tic to print the database locations that it + knows about, and exit. The first location shown is + the one to which it would write compiled terminal + descriptions. If tic is not able to find a + writable database location according to the rules + summarized above, it will print a diagnostic and + exit with an error rather than printing a list of + database locations. + + -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 con- + taining the list if it contains a '/'. (Note: + depending on how tic was compiled, this option may + require -I or -C.) - All but one of the capabilities recognized by tic are doc- - umented in terminfo(5). The exception is the use capabil- - ity. + -f Display complex terminfo strings which contain + if/then/else/endif expressions indented for read- + ability. - When a use=entry-name field is discovered in a terminal - entry currently being compiled, tic reads in the binary - from @DATADIR@/terminfo 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 @DATADIR@/terminfo.) tic duplicates the capa- - bilities in entry-name for the current entry, with the - exception of those capabilities that explicitly are - defined in the current entry. + -G Display constant literals in decimal form rather + than their character equivalents. - 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. + -g Display constant character literals in quoted form + rather than their decimal equivalents. - If the environment variable TERMINFO is set, the compiled - results are placed there instead of @DATADIR@/terminfo. + -I Force source translation to terminfo format. - Total compiled entries cannot exceed 4096 bytes. The name - field cannot 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. + -K Suppress some longstanding ncurses extensions to + termcap format, e.g., "\s" for space. + -L Force source translation to terminfo format using + the long C variable names listed in <term.h> --
- 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 dangerous characters. + -N Disable smart defaults. Normally, when translating + from termcap to terminfo, the compiler makes a num- + ber of assumptions about the defaults of string + capabilities reset1_string, carriage_return, cur- + sor_left, cursor_down, scroll_forward, tab, new- + line, 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 capabilities such as bs. + This option forces a more literal translation that + also preserves the obsolete capabilities. + -odir Write compiled entries to given database location. + Overrides the TERMINFO environment variable. --
- 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 anywhere in the source file, or any- - where in the file tree rooted at TERMINFO (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, -a, -e, -f, -g, -o, -r, -s and - -x options are not supported under SVr4. The SVr4 -c mode - does not report bad use links. + -Qn Rather than show source in terminfo (text) format, + print the compiled (binary) format in hexadecimal + or base64 form, depending on the option's value: - System V does not compile entries to or read entries from - your $HOME/.terminfo directory unless TERMINFO is explic- - itly set to it. + 1 hexadecimal + 2 base64 --
- @DATADIR@/terminfo/?/* - Compiled terminal description database. + 3 hexadecimal and base64 + -q Suppress comments and blank lines when showing + translated source. --
- infocmp(1m), captoinfo(1m), infotocap(1m), toe(1m), - curses(3x), terminfo(5). + -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 terminfo; and out- + right 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 capabilities) even when doing translation to + termcap format. This may be needed if you are pre- + paring 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 database loca- + tion into which entries are written, and the number + of entries which are compiled. + + -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 terminfo). + -t tells tic to discard commented-out capabilities. + Normally when translating from terminfo to termcap, + untranslatable capabilities are commented-out. + -U tells tic 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 term- + caps. + -V reports the version of ncurses which was used in this + program, and exits. + -vn specifies that (verbose) output be written to stan- + dard error trace information showing tic's progress. + The optional parameter 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. + 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. + -W By itself, the -w option will not force long strings + to be wrapped. Use the -W option to do this. + -wn specifies the width of the output. The parameter is + optional. If it is omitted, it defaults to 60. + -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. User-defined capability strings + whose name begins with "k" are treated as function + keys. +
+ file contains one or more terminfo terminal descriptions + in source format [see terminfo(5)]. Each descrip- + tion in the file describes the capabilities of a + particular terminal. + If file is "-", then the data is read from the + standard input. The file parameter may also be the + path of a character-device. +
+ All but one of the capabilities recognized by tic are doc- + umented in terminfo(5). The exception is the use capabil- + ity. + When a use=entry-name field is discovered in a terminal + entry currently being compiled, tic reads in the binary + from /usr/share/terminfo to complete the entry. (Entries + created from file will be used first. tic duplicates the + capabilities 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. + Total compiled entries cannot exceed 4096 bytes. The name + field cannot 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. +
+ 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 dangerous characters. + + +
+ Unlike the SVr4 tic command, this implementation can actu- + ally compile termcap sources. In fact, entries in ter- + minfo 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 anywhere in the source file, or any- + where in the file tree rooted at TERMINFO (if TERMINFO is + defined), or in the user's $HOME/.terminfo database (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 -0, -1, -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 database unless TERMINFO is explic- + itly set to it. +
+ /usr/share/terminfo/?/* + Compiled terminal description database. +
+ infocmp(1m), captoinfo(1m), infotocap(1m), toe(1m), + curses(3x), term(5). terminfo(5). + This describes ncurses version 6.0 (patch 20161015). +
+ Eric S. Raymond <esr@snark.thyrsus.com> and + Thomas E. Dickey <dickey@invisible-island.net> + tic(1m)-