* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: terminfo.head,v 1.63 2024/01/13 23:07:27 tom Exp @
+ * @Id: terminfo.head,v 1.66 2024/05/11 20:39:53 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>terminfo 5 2024-01-13 ncurses 6.4 File formats</TITLE>
+<TITLE>terminfo 5 2024-05-11 ncurses 6.5 File formats</TITLE>
<link rel="author" href="mailto:bug-ncurses@gnu.org">
</HEAD>
<BODY>
-<H1 class="no-header">terminfo 5 2024-01-13 ncurses 6.4 File formats</H1>
+<H1 class="no-header">terminfo 5 2024-05-11 ncurses 6.5 File formats</H1>
<PRE>
<STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> File formats <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
have, by specifying how to perform screen operations, and by specifying
padding requirements and initialization sequences.
- This manual describes <EM>ncurses</EM> version 6.4 (patch 20240323).
+ This document describes <EM>ncurses</EM> version 6.5 (patch 20240615).
</PRE><H3><a name="h3-terminfo-Entry-Syntax"><EM>terminfo</EM> Entry Syntax</a></H3><PRE>
codes exceed this limit regardless.)
<STRONG>o</STRONG> The TC (<EM>termcap</EM>) code is that used by the corresponding API of
- <EM>ncurses.</EM> (Some capabilities are new, and have names that BSD <EM>term-</EM>
- <EM>cap</EM> did not originate.)
+ <EM>ncurses</EM>. (Some capabilities are new, and have names that BSD
+ <EM>termcap</EM> did not originate.)
<STRONG>o</STRONG> The description field attempts to convey the capability's
semantics.
<STRONG>clear_margins</STRONG> <STRONG>mgc</STRONG> <STRONG>MC</STRONG> clear right and left soft
margins
<STRONG>set_left_margin</STRONG> <STRONG>smgl</STRONG> <STRONG>ML</STRONG> set left soft margin at
- current column. (ML is not in
- BSD termcap).
+ current column (not in BSD
+ <EM>termcap</EM>)
<STRONG>set_right_margin</STRONG> <STRONG>smgr</STRONG> <STRONG>MR</STRONG> set right soft margin at
current column
<STRONG>label_format</STRONG> <STRONG>fln</STRONG> <STRONG>Lf</STRONG> label format
printing terminal, with no soft copy unit, give it both <STRONG>hc</STRONG> and <STRONG>os</STRONG>. (<STRONG>os</STRONG>
applies to storage scope terminals, such as TEKTRONIX 4010 series, as
well as hard copy and APL terminals.) If there is a code to move the
- cursor to the left edge of the current row, give this as <STRONG>cr</STRONG>. (Normally
- this will be carriage return, control/M.) If there is a code to
- produce an audible signal (bell, beep, etc) give this as <STRONG>bel</STRONG>.
+ cursor to the left edge of the current line, give this as <STRONG>cr</STRONG>.
+ (Normally this will be carriage return, control/M.) If there is a code
+ to produce an audible signal (bell, beep, etc) give this as <STRONG>bel</STRONG>.
If there is a code to move the cursor one position to the left (such as
backspace) that capability should be given as <STRONG>cub1</STRONG>. Similarly, codes
the screen when text is output, but this does not necessarily apply to
a <STRONG>cuf1</STRONG> from the last column. The only local motion which is defined
from the left edge is if <STRONG>bw</STRONG> is given, then a <STRONG>cub1</STRONG> from the left edge
- will move to the right edge of the previous row. If <STRONG>bw</STRONG> is not given,
+ will move to the right edge of the previous line. If <STRONG>bw</STRONG> is not given,
the effect is undefined. This is useful for drawing a box around the
edge of the screen, for example. If the terminal has switch selectable
automatic margins, the <EM>terminfo</EM> file usually assumes that this is on;
Cursor addressing and other strings requiring parameters in the
terminal are described by a parameterized string capability, with
<EM>printf</EM>-like escapes such as <EM>%x</EM> in it. For example, to address the
- cursor, the <STRONG>cup</STRONG> capability is given, using two parameters: the row and
- column to address to. (Rows and columns are numbered from zero and
+ cursor, the <STRONG>cup</STRONG> capability is given, using two parameters: the line and
+ column to address to. (Lines and columns are numbered from zero and
refer to the physical screen visible to the user, not to any unseen
memory.) If the terminal has memory relative cursor addressing, that
can be indicated by <STRONG>mrcup</STRONG>.
order. That is, to get x-5 one would use "%gx%{5}%-". <STRONG>%P</STRONG> and <STRONG>%g</STRONG>
variables are persistent across escape-string evaluations.
- Consider the HP2645, which, to get to row 3 and column 12, needs to be
- sent \E&a12c03Y padded for 6 milliseconds. The order of the rows and
- columns is inverted here, and the row and column are printed as two
+ Consider the HP2645, which, to get to line 3 and column 12, needs to be
+ sent \E&a12c03Y padded for 6 milliseconds. The order of the lines and
+ columns is inverted here, and the lines and column are printed as two
digits. The corresponding terminal description is expressed thus:
cup=\E&a%p2%dc%p1%dY$<6>,
- The Microterm ACT-IV needs the current row and column sent preceded by
- a <STRONG>^T</STRONG>, with the row and column simply encoded in binary,
+ The Microterm ACT-IV needs the current line and column sent preceded by
+ a <STRONG>^T</STRONG>, with the line and column simply encoded in binary,
cup=^T%p1%c%p2%c
Terminals which use "%c" need to be able to backspace the cursor
with terminfo set tty modes so that tabs are never expanded, so \t is
safe to send. This turns out to be essential for the Ann Arbor 4080.)
- A final example is the LSI ADM-3a, which uses row and column offset by
+ A final example is the LSI ADM-3a, which uses line and column offset by
a blank character, thus
cup=\E=%p1%' '%+%c%p2%' '%+%c
corner of the screen, not of memory. (Thus, the \EH sequence on HP
terminals cannot be used for <STRONG>home</STRONG>.)
- If the terminal has row or column absolute cursor addressing, these can
- be given as single parameter capabilities <STRONG>hpa</STRONG> (horizontal position
+ If the terminal has line or column absolute cursor addressing, these
+ can be given as single parameter capabilities <STRONG>hpa</STRONG> (horizontal position
absolute) and <STRONG>vpa</STRONG> (vertical position absolute). Sometimes these are
shorter than the more general two parameter sequence (as with the
hp2645) and can be used in preference to <STRONG>cup</STRONG>. If there are
line position, and
<STRONG>o</STRONG> parameterized capabilities for setting the top, bottom, left,
- right margins given the number of rows or columns.
+ right margins given the number of lines or columns.
In practice, the categorization into "terminal" and "printer" is not
suitable:
screen, write something to the bottom line, move the cursor to the top
of the region, and do <STRONG>ri</STRONG> followed by <STRONG>dl1</STRONG> or <STRONG>ind</STRONG>. If the data scrolled
off the bottom of the region by the <STRONG>ri</STRONG> re-appears, then scrolling is
- non-destructive. System V and XSI Curses expect that <STRONG>ind</STRONG>, <STRONG>ri</STRONG>, <STRONG>indn</STRONG>,
+ non-destructive. System V and X/Open Curses expect that <STRONG>ind</STRONG>, <STRONG>ri</STRONG>, <STRONG>indn</STRONG>,
and <STRONG>rin</STRONG> will simulate destructive scrolling; their documentation
cautions you not to define <STRONG>csr</STRONG> unless this is true. This <STRONG>curses</STRONG>
implementation is more liberal and will do explicit erases after
</PRE><H3><a name="h3-Insert_Delete-Character">Insert/Delete Character</a></H3><PRE>
There are two basic kinds of intelligent terminals with respect to
- insert/delete character which can be described using <EM>terminfo.</EM> The
+ insert/delete character which can be described using <EM>terminfo</EM>. The
most common insert/delete character operations affect only the
characters on the current line and shift characters off the end of the
line rigidly. Other terminals, such as the Concept 100 and the Perkin
works.
Finally, you can specify <STRONG>dch1</STRONG> to delete a single character, <STRONG>dch</STRONG> with
- one parameter, <EM>n</EM>, to delete <EM>n</EM> <EM>characters,</EM> and delete mode by giving
- <STRONG>smdc</STRONG> and <STRONG>rmdc</STRONG> to enter and exit delete mode (any mode the terminal
- needs to be placed in for <STRONG>dch1</STRONG> to work).
+ one parameter, <EM>n</EM>, to delete <EM>n</EM>characters, and delete mode by giving <STRONG>smdc</STRONG>
+ and <STRONG>rmdc</STRONG> to enter and exit delete mode (any mode the terminal needs to
+ be placed in for <STRONG>dch1</STRONG> to work).
A command to erase <EM>n</EM> characters (equivalent to outputting <EM>n</EM> blanks
without moving the cursor) can be given as <STRONG>ech</STRONG> with one parameter.
If there are commands to set and clear tab stops, they can be given as
<STRONG>tbc</STRONG> (clear all tab stops) and <STRONG>hts</STRONG> (set a tab stop in the current column
- of every row). If a more complex sequence is needed to set the tabs
+ of every line). If a more complex sequence is needed to set the tabs
than can be described by this, the sequence can be placed in <STRONG>is2</STRONG> or <STRONG>if</STRONG>.
The <STRONG>tput</STRONG> <STRONG>reset</STRONG> command uses the same capability strings as the <STRONG>reset</STRONG>
the <STRONG>Insert/Delete</STRONG> <STRONG>Character</STRONG> subsection above.
The parameter substitutions for <STRONG>set_clock</STRONG> and <STRONG>display_clock</STRONG> are not
- documented in SVr4 or the XSI Curses standard. They are deduced from
- the documentation for the AT&T 505 terminal.
+ documented in SVr4 or X/Open Curses. They are deduced from the
+ documentation for the AT&T 505 terminal.
Be careful assigning the <STRONG>kmous</STRONG> capability. The <EM>ncurses</EM> library wants
to interpret it as <STRONG>KEY_MOUSE</STRONG>, for use by terminals and emulators like
specified, even if it is zero.
Different commercial ports of <EM>terminfo</EM> and <EM>curses</EM> support different
- subsets of XSI Curses and (in some cases) different extensions. Here
- is a summary, accurate as of October 1995, after which the commercial
- Unix market contracted and lost diversity.
+ subsets of X/Open Curses and (in some cases) different extensions.
+ Here is a summary, accurate as of October 1995, after which the
+ commercial Unix market contracted and lost diversity.
<STRONG>o</STRONG> SVr4, Solaris, and <EM>ncurses</EM> support all SVr4 capabilities.
between commercial Unix systems. At least two implementations of
<EM>terminfo</EM> (those of HP-UX and AIX) diverged from those of other System V
Unices after SVr1, adding extension capabilities to the string table
- that (in the binary format) collide with subsequent System V and XSI
+ that (in the binary format) collide with subsequent System V and X/Open
Curses extensions.
-ncurses 6.4 2024-01-13 <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
+ncurses 6.5 2024-05-11 <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
</PRE>
<div class="nav">
<ul>