]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - man/terminfo.tail
ncurses 6.4 - patch 20231007
[ncurses.git] / man / terminfo.tail
index 66cfbe74dfd759aaed1da3dea5982d8b9c104aff..3da551078b8e5e47bdf1be59e9d9e75592657932 100644 (file)
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: terminfo.tail,v 1.132 2023/09/30 21:38:11 Branden.Robinson Exp $
+.\" $Id: terminfo.tail,v 1.133 2023/10/07 20:53:54 tom Exp $
 .ps +1
 .SS User-Defined Capabilities
 .
@@ -84,40 +84,38 @@ described in the terminal database, in the section on
 The following entry, describing an ANSI-standard terminal, is representative
 of what a \fBterminfo\fP entry for a modern terminal typically looks like.
 .PP
-.nf
-.ft \*(CW
-\s-2ansi|ansi/pc-term compatible with color,
+.EX
+\s-2ansi|ansi/pc\-term compatible with color,
         am, mc5i, mir, msgr,
         colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64,
-        acsc=+\\020\\,\\021-\\030.^Y0\\333`\\004a\\261f\\370g\\361h\\260
-             j\\331k\\277l\\332m\\300n\\305o~p\\304q\\304r\\304s_t\\303
-             u\\264v\\301w\\302x\\263y\\363z\\362{\\343|\\330}\\234~\\376,
-        bel=^G, blink=\\E[5m, bold=\\E[1m, cbt=\\E[Z, clear=\\E[H\\E[J,
-        cr=^M, cub=\\E[%p1%dD, cub1=\\E[D, cud=\\E[%p1%dB, cud1=\\E[B,
-        cuf=\\E[%p1%dC, cuf1=\\E[C, cup=\\E[%i%p1%d;%p2%dH,
-        cuu=\\E[%p1%dA, cuu1=\\E[A, dch=\\E[%p1%dP, dch1=\\E[P,
-        dl=\\E[%p1%dM, dl1=\\E[M, ech=\\E[%p1%dX, ed=\\E[J, el=\\E[K,
-        el1=\\E[1K, home=\\E[H, hpa=\\E[%i%p1%dG, ht=\\E[I, hts=\\EH,
-        ich=\\E[%p1%d@, il=\\E[%p1%dL, il1=\\E[L, ind=^J,
-        indn=\\E[%p1%dS, invis=\\E[8m, kbs=^H, kcbt=\\E[Z, kcub1=\\E[D,
-        kcud1=\\E[B, kcuf1=\\E[C, kcuu1=\\E[A, khome=\\E[H, kich1=\\E[L,
-        mc4=\\E[4i, mc5=\\E[5i, nel=\\r\\E[S, op=\\E[39;49m,
-        rep=%p1%c\\E[%p2%{1}%-%db, rev=\\E[7m, rin=\\E[%p1%dT,
-        rmacs=\\E[10m, rmpch=\\E[10m, rmso=\\E[m, rmul=\\E[m,
-        s0ds=\\E(B, s1ds=\\E)B, s2ds=\\E*B, s3ds=\\E+B,
-        setab=\\E[4%p1%dm, setaf=\\E[3%p1%dm,
-        sgr=\\E[0;10%?%p1%t;7%;
+        acsc=+\e020\e,\e021\-\e030.\*^Y0\e333\(ga\e004a\e261f\e370g\e361h\e260
+             j\e331k\e277l\e332m\e300n\e305o\*~p\e304q\e304r\e304s_t\e303
+             u\e264v\e301w\e302x\e263y\e363z\e362{\e343|\e330}\e234\*~\e376,
+        bel=\*^G, blink=\eE[5m, bold=\eE[1m, cbt=\eE[Z, clear=\eE[H\eE[J,
+        cr=\*^M, cub=\eE[%p1%dD, cub1=\eE[D, cud=\eE[%p1%dB, cud1=\eE[B,
+        cuf=\eE[%p1%dC, cuf1=\eE[C, cup=\eE[%i%p1%d;%p2%dH,
+        cuu=\eE[%p1%dA, cuu1=\eE[A, dch=\eE[%p1%dP, dch1=\eE[P,
+        dl=\eE[%p1%dM, dl1=\eE[M, ech=\eE[%p1%dX, ed=\eE[J, el=\eE[K,
+        el1=\eE[1K, home=\eE[H, hpa=\eE[%i%p1%dG, ht=\eE[I, hts=\eEH,
+        ich=\eE[%p1%d@, il=\eE[%p1%dL, il1=\eE[L, ind=\*^J,
+        indn=\eE[%p1%dS, invis=\eE[8m, kbs=\*^H, kcbt=\eE[Z, kcub1=\eE[D,
+        kcud1=\eE[B, kcuf1=\eE[C, kcuu1=\eE[A, khome=\eE[H, kich1=\eE[L,
+        mc4=\eE[4i, mc5=\eE[5i, nel=\er\eE[S, op=\eE[39;49m,
+        rep=%p1%c\eE[%p2%{1}%\-%db, rev=\eE[7m, rin=\eE[%p1%dT,
+        rmacs=\eE[10m, rmpch=\eE[10m, rmso=\eE[m, rmul=\eE[m,
+        s0ds=\eE(B, s1ds=\eE)B, s2ds=\eE*B, s3ds=\eE+B,
+        setab=\eE[4%p1%dm, setaf=\eE[3%p1%dm,
+        sgr=\eE[0;10%?%p1%t;7%;
                    %?%p2%t;4%;
                    %?%p3%t;7%;
                    %?%p4%t;5%;
                    %?%p6%t;1%;
                    %?%p7%t;8%;
                    %?%p9%t;11%;m,
-        sgr0=\\E[0;10m, smacs=\\E[11m, smpch=\\E[11m, smso=\\E[7m,
-        smul=\\E[4m, tbc=\\E[3g, u6=\\E[%i%d;%dR, u7=\\E[6n,
-        u8=\\E[?%[;0123456789]c, u9=\\E[c, vpa=\\E[%i%p1%dd,
-.fi
-.ft R
+        sgr0=\eE[0;10m, smacs=\eE[11m, smpch=\eE[11m, smso=\eE[7m,
+        smul=\eE[4m, tbc=\eE[3g, u6=\eE[%i%d;%dR, u7=\eE[6n,
+        u8=\eE[?%[;0123456789]c, u9=\eE[c, vpa=\eE[%i%p1%dd,
+.EE
 .PP
 Entries may continue onto multiple lines by placing white space at
 the beginning of each line except the first.
@@ -166,7 +164,8 @@ for easy encoding of characters there:
 Both \fB\eE\fP and \fB\ee\fP
 map to an \s-1ESCAPE\s0 character,
 .bP
-\fB^x\fP maps to a control-x for any appropriate \fIx\fP, and
+\fB\*^\f(BIx\fR maps to a control-\fIx\fP for any appropriate \fIx\fP,
+and
 .bP
 the sequences
 .RS 6
@@ -184,13 +183,13 @@ respectively.
 .PP
 X/Open Curses does not say what \*(``appropriate \fIx\fP\*('' might be.
 In practice, that is a printable ASCII graphic character.
-The special case \*(``^?\*('' is interpreted as DEL (127).
+The special case \*(``\*^?\*('' is interpreted as DEL (127).
 In all other cases, the character value is AND'd with 0x1f,
 mapping to ASCII control codes in the range 0 through 31.
 .PP
 Other escapes include
 .bP
-\fB\e^\fP for \fB^\fP,
+\fB\e\*^\fP for \fB\*^\fP,
 .bP
 \fB\e\e\fP for \fB\e\fP,
 .bP
@@ -432,28 +431,22 @@ These capabilities suffice to describe
 hard-copy and \*(``glass-tty\*('' terminals.
 Thus the model 33 teletype is described as
 .PP
-.DT
-.nf
-.ft \*(CW
+.EX
 .\".in -2
 \s-133\||\|tty33\||\|tty\||\|model 33 teletype,
-        bel=^G, cols#72, cr=^M, cud1=^J, hc, ind=^J, os,\s+1
+        bel=\*^G, cols#72, cr=\*^M, cud1=\*^J, hc, ind=\*^J, os,\s+1
 .\".in +2
-.ft R
-.fi
+.EE
 .PP
 while the Lear Siegler \s-1ADM-3\s0 is described as
 .PP
-.DT
-.nf
-.ft \*(CW
+.EX
 .\".in -2
 \s-1adm3\||\|3\||\|lsi adm3,
-        am, bel=^G, clear=^Z, cols#80, cr=^M, cub1=^H, cud1=^J,
-        ind=^J, lines#24,\s+1
+        am, bel=\*^G, clear=\*^Z, cols#80, cr=\*^M, cub1=\*^H, cud1=\*^J,
+        ind=\*^J, lines#24,\s+1
 .\".in +2
-.ft R
-.fi
+.EE
 .SS Parameterized Strings
 Cursor addressing and other strings requiring parameters
 in the terminal are described by a
@@ -488,7 +481,7 @@ as in \fBprintf\fP(3), flags are \fI[\-+#]\fP and \fIspace\fP.
 Use a \*(``:\*('' to allow the next character to be a \*(``\-\*('' flag,
 avoiding interpreting \*(``%\-\*('' as an operator.
 .TP
-\f\*(CW%c\fP
+\fB%c\fP
 print \fIpop()\fP like %c in \fBprintf\fP
 .TP
 \fB%s\fP
@@ -554,7 +547,7 @@ Use static variables if persistent storage is needed.
 .RE
 .RE
 .TP
-\fB%\(aq\fIc\fB\(aq\fR
+\fB%\*'\fIc\fB\*'\fR
 char constant \fIc\fP
 .TP
 \fB%{\fInn\fB}\fR
@@ -566,7 +559,7 @@ push strlen(pop)
 \fB%+\fP, \fB%\-\fP, \fB%*\fP, \fB%/\fP, \fB%m\fP
 arithmetic (%m is \fImod\fP): \fIpush(pop() op pop())\fP
 .TP
-\fB%&\fP, \fB%|\fP, \fB%^\fP
+\fB%&\fP, \fB%|\fP, \fB%\*^\fP
 bit operations (AND, OR and exclusive-OR): \fIpush(pop() op pop())\fP
 .TP
 \fB%=\fP, \fB%>\fP, \fB%<\fP
@@ -575,7 +568,7 @@ logical operations: \fIpush(pop() op pop())\fP
 \fB%A\fP, \fB%O\fP
 logical AND and OR operations (for conditionals)
 .TP
-\fB%!\fP, \fB%~\fP
+\fB%!\fP, \fB%\*~\fP
 unary operations (logical and bit complement): \fIpush(op pop())\fP
 .TP
 \fB%i\fP
@@ -616,16 +609,16 @@ cup=\eE&a%p2%dc%p1%dY$<6>,
 .RE
 .PP
 The Microterm \s-1ACT-IV\s0 needs the current row and column sent
-preceded by a \fB^T\fP, with the row and column simply encoded in binary,
+preceded by a \fB\*^T\fP, with the row and column simply encoded in binary,
 .RS
-cup=^T%p1%c%p2%c
+cup=\*^T%p1%c%p2%c
 .RE
 .PP
 Terminals which use \*(``%c\*('' need to be able to
 backspace the cursor (\fBcub1\fP),
 and to move the cursor up one line on the screen (\fBcuu1\fP).
 This is necessary because it is not always safe to transmit \fB\en\fP
-\fB^D\fP and \fB\er\fP, as the system may change or discard them.
+\fB\*^D\fP and \fB\er\fP, as the system may change or discard them.
 (The library routines dealing with terminfo set tty modes so that
 tabs are never expanded, so \et is safe to send.
 This turns out to be essential for the Ann Arbor 4080.)
@@ -633,7 +626,7 @@ This turns out to be essential for the Ann Arbor 4080.)
 A final example is the \s-1LSI ADM\s0-3a, which uses row and column
 offset by a blank character, thus
 .RS
-cup=\eE=%p1%\(aq \(aq%+%c%p2%\(aq \(aq%+%c
+cup=\eE=%p1%\*' \*'%+%c%p2%\*' \*'%+%c
 .RE
 .PP
 After sending \*(``\eE=\*('', this pushes the first parameter, pushes the
@@ -870,7 +863,7 @@ automatically, so you need not compose insert/delete strings for
 an entry with \fBcsr\fP).
 .PP
 Yet another way to construct insert and delete might be to use a combination of
-index with the memory-lock feature found on some terminals (like the HP\-700/90
+index with the memory-lock feature found on some terminals (like the HP-700/90
 series, which however also has insert/delete).
 .PP
 Inserting lines at the top or bottom of the screen can also be
@@ -1099,7 +1092,7 @@ p5        dim     not available
 p6     bold    \eE[0;1m
 p7     invis   \eE[0;8m
 p8     protect not used
-p9     altcharset      ^O (off) ^N (on)
+p9     altcharset      \*^O (off) \*^N (on)
 .TE
 .PP
 We begin each escape sequence by turning off any existing modes, since
@@ -1108,9 +1101,9 @@ Standout is set up to be the combination of reverse and bold.
 The vt220 terminal has a protect mode,
 though it is not commonly used in sgr
 because it protects characters on the screen from the host's erasures.
-The altcharset mode also is different in that it is either ^O or ^N,
+The altcharset mode also is different in that it is either \*^O or \*^N,
 depending on whether it is off or on.
-If all modes are turned on, the resulting sequence is \\E[0;1;4;5;7;8m^N.
+If all modes are turned on, the resulting sequence is \eE[0;1;4;5;7;8m\*^N.
 .PP
 Some sequences are common to different modes.
 For example, ;7 is output when either p1 or p3 is true, that is, if
@@ -1125,7 +1118,7 @@ lb lb lb
 l  l  l .
 Sequence       When to Output  terminfo Translation
 _
-\\E[0  always  \\E[0
+\eE[0  always  \eE[0
 ;1     if p1 or p6     %?%p1%p6%|%t;1%;
 ;4     if p2   %?%p2%|%t;4%;
 ;5     if p4   %?%p4%|%t;5%;
@@ -1137,12 +1130,10 @@ m       always  m
 .PP
 Putting this all together into the sgr sequence gives:
 .PP
-.ft \*(CW
-.nf
-    sgr=\\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p4%t;5%;
-        %?%p1%p3%|%t;7%;%?%p7%t;8%;m%?%p9%t\\016%e\\017%;,
-.fi
-.ft R
+.EX
+    sgr=\eE[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p4%t;5%;
+        %?%p1%p3%|%t;7%;%?%p7%t;8%;m%?%p9%t\e016%e\e017%;,
+.EE
 .PP
 Remember that if you specify sgr, you must also specify sgr0.
 Also, some implementations rely on sgr being given if sgr0 is,
@@ -1487,7 +1478,7 @@ These may require padding characters
 after certain cursor motions and screen changes.
 .PP
 If the terminal uses xon/xoff handshaking for flow control (that is,
-it automatically emits ^S back to the host when its input buffers are
+it automatically emits \*^S back to the host when its input buffers are
 close to full), set
 .BR xon .
 This capability suppresses the emission of padding.
@@ -1561,7 +1552,7 @@ arrow pointing left       ACS_LARROW      <       ,       0x2c
 arrow pointing up      ACS_UARROW      \*^     \-      0x2d
 arrow pointing down    ACS_DARROW      v       .       0x2e
 solid square block     ACS_BLOCK       #       0       0x30
-diamond                ACS_DIAMOND     +       `       0x60
+diamond                ACS_DIAMOND     +       \(ga    0x60
 checker board (stipple)        ACS_CKBOARD     :       a       0x61
 degree symbol          ACS_DEGREE      \e      f       0x66
 plus/minus             ACS_PLMINUS     #       g       0x67
@@ -1809,7 +1800,7 @@ this can be indicated with the parameterized string
 .BR rep .
 The first parameter is the character to be repeated and the second
 is the number of times to repeat it.
-Thus, tparm(repeat_char, \(aqx\(aq, 10) is the same as \*(``xxxxxxxxxx\*(''.
+Thus, tparm(repeat_char, \*'x\*', 10) is the same as \*(``xxxxxxxxxx\*(''.
 .PP
 If the terminal has a settable command character,
 such as the \s-1TEKTRONIX\s+1 4025,
@@ -1890,7 +1881,7 @@ is transparently passed to the printer while an
 is in effect.
 .SS Glitches and Braindamage
 Hazeltine terminals,
-which do not allow \*(``~\*('' characters to be displayed should
+which do not allow \*(``\*~\*('' characters to be displayed should
 indicate \fBhz\fP.
 .PP
 Terminals which ignore a line-feed immediately after an \fBam\fP wrap,