]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - doc/html/man/terminfo.5.html
ncurses 5.9 - patch 20131221
[ncurses.git] / doc / html / man / terminfo.5.html
index 9a26029e20de287000426bdda813b32b7cc508c0..94e2b034b83bed8e8e47f2a67e3927d6e825f9b5 100644 (file)
@@ -34,7 +34,7 @@
   ****************************************************************************
   * @Id: terminfo.head,v 1.21 2013/03/09 22:11:36 tom Exp @
   * Head of terminfo man page ends here
   ****************************************************************************
   * @Id: terminfo.head,v 1.21 2013/03/09 22:11:36 tom Exp @
   * Head of terminfo man page ends here
-  * @Id: terminfo.tail,v 1.61 2013/03/03 00:06:39 tom Exp @
+  * @Id: terminfo.tail,v 1.68 2013/11/09 15:20:48 tom Exp @
   * Beginning of terminfo.tail file
   * This file is part of ncurses.
   * See "terminfo.head" for copyright.
   * Beginning of terminfo.tail file
   * This file is part of ncurses.
   * See "terminfo.head" for copyright.
 </PRE>
 <H2>DESCRIPTION</H2><PRE>
        <EM>Terminfo</EM>  is  a  data  base  describing terminals, used by
 </PRE>
 <H2>DESCRIPTION</H2><PRE>
        <EM>Terminfo</EM>  is  a  data  base  describing terminals, used by
-       screen-oriented programs  such  as  <STRONG><A HREF="nvi.1.html">nvi(1)</A></STRONG>,  <STRONG><A HREF="rogue.1.html">rogue(1)</A></STRONG>  and
+       screen-oriented programs  such  as  <STRONG>nvi(1)</STRONG>,  <STRONG>rogue(1)</STRONG>  and
        libraries  such  as <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>.  <EM>Terminfo</EM> describes termi-
        nals by giving a set of capabilities which they  have,  by
        specifying how to perform screen operations, and by speci-
        fying padding requirements and  initialization  sequences.
        libraries  such  as <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>.  <EM>Terminfo</EM> describes termi-
        nals by giving a set of capabilities which they  have,  by
        specifying how to perform screen operations, and by speci-
        fying padding requirements and  initialization  sequences.
-       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20130518).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221).
 
        Entries in <EM>terminfo</EM> consist of a sequence of `,' separated
        fields (embedded commas may be escaped with a backslash or
 
        Entries in <EM>terminfo</EM> consist of a sequence of `,' separated
        fields (embedded commas may be escaped with a backslash or
        is representative of what a <STRONG>terminfo</STRONG> entry  for  a  modern
        terminal typically looks like.
 
        is representative of what a <STRONG>terminfo</STRONG> entry  for  a  modern
        terminal typically looks like.
 
-     ansi|ansi/pc-term compatible with color,
-             mc5i,
-             colors#8, ncv#3, pairs#64,
-             cub=\E[%p1%dD, cud=\E[%p1%dB, cuf=\E[%p1%dC,
-             cuu=\E[%p1%dA, dch=\E[%p1%dP, dl=\E[%p1%dM,
-             ech=\E[%p1%dX, el1=\E[1K, hpa=\E[%p1%dG, ht=\E[I,
-             ich=\E[%p1%d@, il=\E[%p1%dL, indn=\E[%p1%dS, .indn=\E[%p1%dT,
-             kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B,
-             kcuf1=\E[C, kcuu1=\E[A, kf1=\E[M, kf10=\E[V,
-             kf11=\E[W, kf12=\E[X, kf2=\E[N, kf3=\E[O, kf4=\E[P,
-             kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T, kf9=\E[U,
-             kich1=\E[L, mc4=\E[4i, mc5=\E[5i, nel=\r\E[S,
-             op=\E[37;40m, rep=%p1%c\E[%p2%{1}%-%db,
-             rin=\E[%p1%dT, s0ds=\E(B, s1ds=\E)B, s2ds=\E*B,
-             s3ds=\E+B, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-             setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
-             setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
-             sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p8%t;11%;%?%p9%t;12%;m,
-             sgr0=\E[0;10m, tbc=\E[2g, u6=\E[%d;%dR, u7=\E[6n,
-             u8=\E[?%[;0123456789]c, u9=\E[c, vpa=\E[%p1%dd,
+       ansi|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%;
+                          %?%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,
 
        Entries  may continue onto multiple lines by placing white
        space at the beginning of  each  line  except  the  first.
 
        Entries  may continue onto multiple lines by placing white
        space at the beginning of  each  line  except  the  first.
        automatic  return  and line-feed when the end of a line is
        reached) is indicated by the  capability  <STRONG>am</STRONG>.   Hence  the
        description of ansi includes <STRONG>am</STRONG>.  Numeric capabilities are
        automatic  return  and line-feed when the end of a line is
        reached) is indicated by the  capability  <STRONG>am</STRONG>.   Hence  the
        description of ansi includes <STRONG>am</STRONG>.  Numeric capabilities are
-       followed by the character `#' and then a  positive  value.
+       followed by the character "#" and then a  positive  value.
        Thus  <STRONG>cols</STRONG>, which indicates the number of columns the ter-
        Thus  <STRONG>cols</STRONG>, which indicates the number of columns the ter-
-       minal has, gives the value  `80'  for  ansi.   Values  for
+       minal has, gives the value  "80"  for  ansi.   Values  for
        numeric capabilities may be specified in decimal, octal or
        hexadecimal, using the C programming language  conventions
        (e.g., 255, 0377 and 0xff or 0xFF).
 
        Finally,  string valued capabilities, such as <STRONG>el</STRONG> (clear to
        end of line sequence) are given by the two-character code,
        numeric capabilities may be specified in decimal, octal or
        hexadecimal, using the C programming language  conventions
        (e.g., 255, 0377 and 0xff or 0xFF).
 
        Finally,  string valued capabilities, such as <STRONG>el</STRONG> (clear to
        end of line sequence) are given by the two-character code,
-       an  `=',  and  then  a string ending at the next following
-       `,'.
+       an  "=",  and  then  a string ending at the next following
+       ",".
 
        A number of escape sequences are provided  in  the  string
        valued capabilities for easy encoding of characters there.
 
        A number of escape sequences are provided  in  the  string
        valued capabilities for easy encoding of characters there.
 
            <STRONG>\0</STRONG>  will  produce  \200,  which  does  not terminate a
            string but behaves as a null character on most  termi-
 
            <STRONG>\0</STRONG>  will  produce  \200,  which  does  not terminate a
            string but behaves as a null character on most  termi-
-           nals, providing CS7 is specified.  See <STRONG><A HREF="stty.1.html">stty(1)</A></STRONG>.
+           nals, providing CS7 is specified.  See <STRONG>stty(1)</STRONG>.
 
            The  reason  for this quirk is to maintain binary com-
            patibility of the compiled terminfo files  with  other
 
            The  reason  for this quirk is to maintain binary com-
            patibility of the compiled terminfo files  with  other
        and padding characters are supplied by  <EM>tputs</EM>  to  provide
        this  delay.   The delay must be a number with at most one
        decimal place of precision; it may be followed by suffixes
        and padding characters are supplied by  <EM>tputs</EM>  to  provide
        this  delay.   The delay must be a number with at most one
        decimal place of precision; it may be followed by suffixes
-       `*'  or  '/'  or  both.   A `*' indicates that the padding
+       "*"  or  "/"  or  both.   A "*" indicates that the padding
        required is proportional to the number of  lines  affected
        by  the  operation,  and  the  amount  given  is  the per-
        affected-unit padding required.  (In the  case  of  insert
        character,  the  factor  is  still  the  number  of  <EM>lines</EM>
        affected.)  Normally, padding is advisory  if  the  device
        has  the  <STRONG>xon</STRONG>  capability; it is used for cost computation
        required is proportional to the number of  lines  affected
        by  the  operation,  and  the  amount  given  is  the per-
        affected-unit padding required.  (In the  case  of  insert
        character,  the  factor  is  still  the  number  of  <EM>lines</EM>
        affected.)  Normally, padding is advisory  if  the  device
        has  the  <STRONG>xon</STRONG>  capability; it is used for cost computation
-       but does not trigger delays.  A `/' suffix indicates  that
+       but does not trigger delays.  A "/" suffix indicates  that
        the  padding  is mandatory and forces a delay of the given
        number of milliseconds even on devices for  which  <STRONG>xon</STRONG>  is
        present to indicate flow control.
        the  padding  is mandatory and forces a delay of the given
        number of milliseconds even on devices for  which  <STRONG>xon</STRONG>  is
        present to indicate flow control.
        To get the padding for insert line right (if the  terminal
        manufacturer did not document it) a severe test is to edit
        a large file at 9600 baud, delete 16 or so lines from  the
        To get the padding for insert line right (if the  terminal
        manufacturer did not document it) a severe test is to edit
        a large file at 9600 baud, delete 16 or so lines from  the
-       middle  of  the screen, then hit the `u' key several times
+       middle  of  the screen, then hit the "u" key several times
        quickly.  If the terminal messes up, more padding is  usu-
        ally  needed.  A similar test can be used for insert char-
        acter.
        quickly.  If the terminal messes up, more padding is  usu-
        ally  needed.  A similar test can be used for insert char-
        acter.
        as  <STRONG>cub1</STRONG>.   Similarly, codes to move to the right, up, and
        down should be given as <STRONG>cuf1</STRONG>, <STRONG>cuu1</STRONG>, and <STRONG>cud1</STRONG>.  These local
        cursor  motions  should not alter the text they pass over,
        as  <STRONG>cub1</STRONG>.   Similarly, codes to move to the right, up, and
        down should be given as <STRONG>cuf1</STRONG>, <STRONG>cuu1</STRONG>, and <STRONG>cud1</STRONG>.  These local
        cursor  motions  should not alter the text they pass over,
-       for example, you would not normally use  `<STRONG>cuf1</STRONG>= '  because
+       for example, you would not normally use  "<STRONG>cuf1</STRONG>= "  because
        the space would erase the character moved over.
 
        A  very  important  point  here  is  that the local cursor
        the space would erase the character moved over.
 
        A  very  important  point  here  is  that the local cursor
        described as
 
        33|tty33|tty|model 33 teletype,
        described as
 
        33|tty33|tty|model 33 teletype,
-            bel=^G, cols#72, cr=^M, cud1=^J, hc, ind=^J, os,
+               bel=^G, cols#72, cr=^M, cud1=^J, hc, ind=^J, os,
 
        while the Lear Siegler ADM-3 is described as
 
        adm3|3|lsi adm3,
 
        while the Lear Siegler ADM-3 is described as
 
        adm3|3|lsi adm3,
-            am, bel=^G, clear=^Z, cols#80, cr=^M, cub1=^H, cud1=^J,
-            ind=^J, lines#24,
+               am, bel=^G, clear=^Z, cols#80, cr=^M, cub1=^H, cud1=^J,
+               ind=^J, lines#24,
 
    <STRONG>Parameterized</STRONG> <STRONG>Strings</STRONG>
        Cursor  addressing  and other strings requiring parameters
        in the terminal are described by  a  parameterized  string
 
    <STRONG>Parameterized</STRONG> <STRONG>Strings</STRONG>
        Cursor  addressing  and other strings requiring parameters
        in the terminal are described by  a  parameterized  string
-       capability,  with  <STRONG><A HREF="printf.3.html">printf(3)</A></STRONG>  like  escapes <STRONG>%x</STRONG> in it.  For
-       example, to address the  cursor,  the  <STRONG>cup</STRONG>  capability  is
+       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 refer to
        the physical screen visible to the user, not to any unseen
        given, using two parameters: the row and column to address
        to.  (Rows and columns are numbered from zero and refer to
        the physical screen visible to the user, not to any unseen
 
        The <STRONG>%</STRONG> encodings have the following meanings:
 
 
        The <STRONG>%</STRONG> encodings have the following meanings:
 
-       %%   outputs `%'
+       <STRONG>%%</STRONG>   outputs "%"
 
 
-       %<EM>[[</EM>:<EM>]flags][width[.precision]][</EM>doxXs<EM>]</EM>
-            as  in  <STRONG>printf</STRONG>, flags are [-+#] and space.  Use a `:'
-            to allow the next character to be a `-' flag,  avoid-
+       <STRONG>%</STRONG><EM>[[</EM>:<EM>]flags][width[.precision]][</EM><STRONG>doxXs</STRONG><EM>]</EM>
+            as  in  <STRONG>printf</STRONG>, flags are <EM>[-+#]</EM> and <EM>space</EM>.  Use a ":"
+            to allow the next character to be a "-" flag,  avoid-
             ing interpreting "%-" as an operator.
 
        %c   print pop() like %c in <STRONG>printf</STRONG>
 
             ing interpreting "%-" as an operator.
 
        %c   print pop() like %c in <STRONG>printf</STRONG>
 
-       %s   print pop() like %s in <STRONG>printf</STRONG>
+       <STRONG>%s</STRONG>   print pop() like %s in <STRONG>printf</STRONG>
 
 
-       %p[1-9]
+       <STRONG>%p</STRONG><EM>[1-9]</EM>
             push <EM>i</EM>'th parameter
 
             push <EM>i</EM>'th parameter
 
-       %P[a-z]
-            set dynamic variable [a-z] to pop()
+       <STRONG>%P</STRONG><EM>[a-z]</EM>
+            set dynamic variable <EM>[a-z]</EM> to pop()
 
 
-       %g[a-z]
-            get dynamic variable [a-z] and push it
+       <STRONG>%g</STRONG><EM>[a-z]/</EM>
+            get dynamic variable <EM>[a-z]</EM> and push it
 
 
-       %P[A-Z]
-            set static variable [a-z] to pop()
+       <STRONG>%P</STRONG><EM>[A-Z]</EM>
+            set static variable <EM>[a-z]</EM> to <EM>pop()</EM>
 
 
-       %g[A-Z]
-            get static variable [a-z] and push it
+       <STRONG>%g</STRONG><EM>[A-Z]</EM>
+            get static variable <EM>[a-z]</EM> and push it
 
             The  terms  "static"  and  "dynamic"  are misleading.
             Historically, these are simply two different sets  of
 
             The  terms  "static"  and  "dynamic"  are misleading.
             Historically, these are simply two different sets  of
             other  implementations.  Relying on it will adversely
             impact portability to other implementations.
 
             other  implementations.  Relying on it will adversely
             impact portability to other implementations.
 
-       %'<EM>c</EM>' char constant <EM>c</EM>
+       <STRONG>%'</STRONG><EM>c</EM><STRONG>'</STRONG> char constant <EM>c</EM>
 
 
-       %{<EM>nn</EM>}
+       <STRONG>%{</STRONG><EM>nn</EM><STRONG>}</STRONG>
             integer constant <EM>nn</EM>
 
             integer constant <EM>nn</EM>
 
-       %l   push strlen(pop)
+       <STRONG>%l</STRONG>   push strlen(pop)
 
 
-       %+ %- %* %/ %m
-            arithmetic (%m is mod): push(pop() op pop())
+       <STRONG>%+</STRONG>, <STRONG>%-</STRONG>, <STRONG>%*</STRONG>, <STRONG>%/</STRONG>, <STRONG>%m</STRONG>
+            arithmetic (%m is mod): <EM>push(pop()</EM> <EM>op</EM> <EM>pop())</EM>
 
 
-       %&amp; %| %^
-            bit operations (AND, OR and exclusive-OR): push(pop()
-            op pop())
+       <STRONG>%&amp;</STRONG>, <STRONG>%|</STRONG>, <STRONG>%^</STRONG>
+            bit operations (AND, OR and exclusive-OR): <EM>push(pop()</EM>
+            <EM>op</EM> <EM>pop())</EM>
 
 
-       %= %&gt; %&lt;
-            logical operations: push(pop() op pop())
+       <STRONG>%=</STRONG>, <STRONG>%&gt;</STRONG>, <STRONG>%&lt;</STRONG>
+            logical operations: <EM>push(pop()</EM> <EM>op</EM> <EM>pop())</EM>
 
 
-       %A, %O
+       <STRONG>%A</STRONG>, <STRONG>%O</STRONG>
             logical AND and OR operations (for conditionals)
 
             logical AND and OR operations (for conditionals)
 
-       %! %~
+       <STRONG>%!</STRONG>, <STRONG>%~</STRONG>
             unary   operations   (logical  and  bit  complement):
             push(op pop())
 
             unary   operations   (logical  and  bit  complement):
             push(op pop())
 
-       %i   add 1 to first two parameters (for ANSI terminals)
+       <STRONG>%i</STRONG>   add 1 to first two parameters (for ANSI terminals)
 
 
-       %? <EM>expr</EM> %t <EM>thenpart</EM> %e <EM>elsepart</EM> %;
-            This forms  an  if-then-else.   The  %e  <EM>elsepart</EM>  is
-            optional.   Usually  the  %? <EM>expr</EM> part pushes a value
-            onto the stack, and %t pops it from the stack,  test-
+       <STRONG>%?</STRONG> <EM>expr</EM> <STRONG>%t</STRONG> <EM>thenpart</EM> <STRONG>%e</STRONG> <EM>elsepart</EM> <STRONG>%;</STRONG>
+            This forms  an  if-then-else.   The  <STRONG>%e</STRONG>  <EM>elsepart</EM>  is
+            optional.   Usually  the  <STRONG>%?</STRONG> <EM>expr</EM> part pushes a value
+            onto the stack, and <STRONG>%t</STRONG> pops it from the stack,  test-
             ing  if it is nonzero (true).  If it is zero (false),
             ing  if it is nonzero (true).  If it is zero (false),
-            control passes to the %e (else) part.
+            control passes to the <STRONG>%e</STRONG> (else) part.
 
             It is possible to form else-if's a la Algol 68:
 
             It is possible to form else-if's a la Algol 68:
-            %? c1 %t b1 %e c2 %t b2 %e c3 %t b3 %e c4 %t b4 %e %;
+            <STRONG>%?</STRONG> c1 <STRONG>%t</STRONG> b1 <STRONG>%e</STRONG> c2 <STRONG>%t</STRONG> b2 <STRONG>%e</STRONG> c3 <STRONG>%t</STRONG> b3 <STRONG>%e</STRONG> c4 <STRONG>%t</STRONG> b4 <STRONG>%e</STRONG> <STRONG>%;</STRONG>
 
             where ci are conditions, bi are bodies.
 
 
             where ci are conditions, bi are bodies.
 
 
        Binary operations are in postfix form with the operands in
        the  usual  order.   That  is,  to  get  x-5 one would use
 
        Binary operations are in postfix form with the operands in
        the  usual  order.   That  is,  to  get  x-5 one would use
-       "%gx%{5}%-".  %P and %g variables  are  persistent  across
+       "%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,
        escape-string evaluations.
 
        Consider the HP2645, which, to get to row 3 and column 12,
 
        A final example is the LSI ADM-3a, which uses row and col-
        umn  offset  by  a  blank  character,  thus  "cup=\E=%p1%'
 
        A final example is the LSI ADM-3a, which uses row and col-
        umn  offset  by  a  blank  character,  thus  "cup=\E=%p1%'
-       '%+%c%p2%' '%+%c".  After sending `\E=', this  pushes  the
+       '%+%c%p2%' '%+%c".  After sending "\E=", this  pushes  the
        first  parameter, pushes the ASCII value for a space (32),
        adds them (pushing the sum on the stack in  place  of  the
        two  previous  values) and outputs that value as a charac-
        first  parameter, pushes the ASCII value for a space (32),
        adds them (pushing the sum on the stack in  place  of  the
        two  previous  values) and outputs that value as a charac-
        milliseconds in <STRONG>ip</STRONG> (a string option).  Any other  sequence
        which  may  need  to  be  sent after an insert of a single
        character may also be given in <STRONG>ip</STRONG>.  If your terminal needs
        milliseconds in <STRONG>ip</STRONG> (a string option).  Any other  sequence
        which  may  need  to  be  sent after an insert of a single
        character may also be given in <STRONG>ip</STRONG>.  If your terminal needs
-       both to be placed into an `insert mode' and a special code
+       both to be placed into an "insert mode" and a special code
        to precede each inserted character,  then  both  <STRONG>smir</STRONG>/<STRONG>rmir</STRONG>
        and  <STRONG>ich1</STRONG>  can  be  given, and both will be used.  The <STRONG>ich</STRONG>
        capability, with one parameter, <EM>n</EM>, will repeat the effects
        to precede each inserted character,  then  both  <STRONG>smir</STRONG>/<STRONG>rmir</STRONG>
        and  <STRONG>ich1</STRONG>  can  be  given, and both will be used.  The <STRONG>ich</STRONG>
        capability, with one parameter, <EM>n</EM>, will repeat the effects
 
       <STRONG>sequence</STRONG>             <STRONG>when</STRONG> <STRONG>to</STRONG> <STRONG>output</STRONG>      <STRONG>terminfo</STRONG> <STRONG>translation</STRONG>
 
 
       <STRONG>sequence</STRONG>             <STRONG>when</STRONG> <STRONG>to</STRONG> <STRONG>output</STRONG>      <STRONG>terminfo</STRONG> <STRONG>translation</STRONG>
 
-
       \E[0                 always              \E[0
       ;1                   if p1 or p6         %?%p1%p6%|%t;1%;
       ;4                   if p2               %?%p2%|%t;4%;
       \E[0                 always              \E[0
       ;1                   if p1 or p6         %?%p1%p6%|%t;1%;
       ;4                   if p2               %?%p2%|%t;4%;
 
        Putting this all together into the sgr sequence gives:
 
 
        Putting this all together into the sgr sequence gives:
 
-           sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;
-               %?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
+           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%;,
 
        Remember  that  if  you specify sgr, you must also specify
        sgr0.  Also, some implementations rely on sgr being  given
 
        Remember  that  if  you specify sgr, you must also specify
        sgr0.  Also, some implementations rely on sgr being  given
        first character of the <STRONG>pad</STRONG> string is used.
 
    <STRONG>Status</STRONG> <STRONG>Lines</STRONG>
        first character of the <STRONG>pad</STRONG> string is used.
 
    <STRONG>Status</STRONG> <STRONG>Lines</STRONG>
-       Some  terminals  have  an extra `status line' which is not
+       Some  terminals  have  an extra "status line" which is not
        normally used by software (and thus  not  counted  in  the
        terminal's <STRONG>lines</STRONG> capability).
 
        normally used by software (and thus  not  counted  in  the
        terminal's <STRONG>lines</STRONG> capability).
 
        ACSC string.
 
    <STRONG>Color</STRONG> <STRONG>Handling</STRONG>
        ACSC string.
 
    <STRONG>Color</STRONG> <STRONG>Handling</STRONG>
-       Most  color  terminals are either `Tektronix-like' or `HP-
-       like'.  Tektronix-like terminals have a predefined set  of
+       Most  color  terminals are either "Tektronix-like" or "HP-
+       like".  Tektronix-like terminals have a predefined set  of
        N  colors  (where N usually 8), and can set character-cell
        foreground and background characters independently, mixing
        them  into  N * N  color-pairs.  On HP-like terminals, the
        N  colors  (where N usually 8), and can set character-cell
        foreground and background characters independently, mixing
        them  into  N * N  color-pairs.  On HP-like terminals, the
        ors are enabled.  The correspondence with  the  attributes
        understood by <STRONG>curses</STRONG> is as follows:
 
        ors are enabled.  The correspondence with  the  attributes
        understood by <STRONG>curses</STRONG> is as follows:
 
-              <STRONG>Attribute</STRONG>                   <STRONG>Bit</STRONG>    <STRONG>Decimal</STRONG>
-              A_STANDOUT                  0     1
-              A_UNDERLINE                 1     2
-              A_REVERSE                   2     4
-              A_BLINK                     3     8
-              A_DIM                       4     16
-              A_BOLD                      5     32
-              A_INVIS                     6     64
-              A_PROTECT                   7     128
-              A_ALTCHARSET                8     256
+          <STRONG>Attribute</STRONG>              <STRONG>Bit</STRONG>   <STRONG>Decimal</STRONG>      <STRONG>Set</STRONG> <STRONG>by</STRONG>
+          A_STANDOUT             0     1            sgr
+          A_UNDERLINE            1     2            sgr
+          A_REVERSE              2     4            sgr
+          A_BLINK                3     8            sgr
+          A_DIM                  4     16           sgr
+          A_BOLD                 5     32           sgr
+          A_INVIS                6     64           sgr
+          A_PROTECT              7     128          sgr
+          A_ALTCHARSET           8     256          sgr
+          A_HORIZONTAL           9     512          sgr1
+          A_LEFT                 10    1024         sgr1
+          A_LOW                  11    2048         sgr1
+          A_RIGHT                12    4096         sgr1
+          A_TOP                  13    8192         sgr1
+          A_VERTICAL             14    16384        sgr1
+          A_ITALIC               15    32768        sitm
 
        For  example,  on  many  IBM  PC  consoles,  the underline
        attribute collides with the foreground color blue  and  is
 
        For  example,  on  many  IBM  PC  consoles,  the underline
        attribute collides with the foreground color blue  and  is
        parameterized string <STRONG>rep</STRONG>.   The  first  parameter  is  the
        character  to  be repeated and the second is the number of
        times to repeat it.  Thus, tparm(repeat_char, 'x', 10)  is
        parameterized string <STRONG>rep</STRONG>.   The  first  parameter  is  the
        character  to  be repeated and the second is the number of
        times to repeat it.  Thus, tparm(repeat_char, 'x', 10)  is
-       the same as `xxxxxxxxxx'.
+       the same as "xxxxxxxxxx".
 
        If  the terminal has a settable command character, such as
        the TEKTRONIX 4025, this can be indicated with  <STRONG>cmdch</STRONG>.   A
 
        If  the terminal has a settable command character, such as
        the TEKTRONIX 4025, this can be indicated with  <STRONG>cmdch</STRONG>.   A
        printer while an <STRONG>mc5p</STRONG> is in effect.
 
    <STRONG>Glitches</STRONG> <STRONG>and</STRONG> <STRONG>Braindamage</STRONG>
        printer while an <STRONG>mc5p</STRONG> is in effect.
 
    <STRONG>Glitches</STRONG> <STRONG>and</STRONG> <STRONG>Braindamage</STRONG>
-       Hazeltine  terminals, which do not allow `~' characters to
+       Hazeltine  terminals, which do not allow "~" characters to
        be displayed should indicate <STRONG>hz</STRONG>.
 
        Terminals which ignore a line-feed immediately after an <STRONG>am</STRONG>
        be displayed should indicate <STRONG>hz</STRONG>.
 
        Terminals which ignore a line-feed immediately after an <STRONG>am</STRONG>
        Teleray  terminals,  where  tabs turn all characters moved
        over to blanks, should  indicate  <STRONG>xt</STRONG>  (destructive  tabs).
        Note:    the    variable    indicating    this    is   now
        Teleray  terminals,  where  tabs turn all characters moved
        over to blanks, should  indicate  <STRONG>xt</STRONG>  (destructive  tabs).
        Note:    the    variable    indicating    this    is   now
-       `dest_tabs_magic_smso'; in older  versions,  it  was  tel-
+       "dest_tabs_magic_smso"; in older  versions,  it  was  tel-
        eray_glitch.  This glitch is also taken to mean that it is
        not possible to position the cursor on  top  of  a  "magic
        cookie",  that to erase standout mode it is instead neces-
        eray_glitch.  This glitch is also taken to mean that it is
        not possible to position the cursor on  top  of  a  "magic
        cookie",  that to erase standout mode it is instead neces-
        ing  that the f1 key is used for escape and f2 for control
        C.  (Only certain Superbees have this  problem,  depending
        on  the  ROM.)  Note that in older terminfo versions, this
        ing  that the f1 key is used for escape and f2 for control
        C.  (Only certain Superbees have this  problem,  depending
        on  the  ROM.)  Note that in older terminfo versions, this
-       capability  was  called  `beehive_glitch';   it   is   now
-       `no_esc_ctl_c'.
+       capability  was  called  "beehive_glitch";   it   is   now
+       "no_esc_ctl_c".
 
        Other  specific  terminal  problems  may  be  corrected by
        adding more capabilities of the form <STRONG>x</STRONG><EM>x</EM>.
 
        Other  specific  terminal  problems  may  be  corrected by
        adding more capabilities of the form <STRONG>x</STRONG><EM>x</EM>.
        and  emulators  like  xterm that can return mouse-tracking
        information in the keyboard-input stream.
 
        and  emulators  like  xterm that can return mouse-tracking
        information in the keyboard-input stream.
 
+       X/Open Curses does not mention italics.  Portable applica-
+       tions  must  assume  that  numeric capabilities are signed
+       16-bit values.  This  includes  the  <EM>no</EM><STRONG>_</STRONG><EM>color</EM><STRONG>_</STRONG><EM>video</EM>  (ncv)
+       capability.   The  32768  mask value used for italics with
+       ncv can be confused with an absent or cancelled  ncv.   If
+       italics  should  work with colors, then the ncv value must
+       be specified, even if it is zero.
+
        Different commercial ports of terminfo and curses  support
        different  subsets of the XSI Curses standard and (in some
        cases) different extension sets.  Here is a summary, accu-
        Different commercial ports of terminfo and curses  support
        different  subsets of the XSI Curses standard and (in some
        cases) different extension sets.  Here is a summary, accu-
 
 </PRE>
 <H2>SEE ALSO</H2><PRE>
 
 </PRE>
 <H2>SEE ALSO</H2><PRE>
-       <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>,   <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>,  <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,  <STRONG><A HREF="printf.3.html">printf(3)</A></STRONG>,  <STRONG><A HREF="term.5.html">term(5)</A></STRONG>.
+       <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>,   <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>,  <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,  <STRONG>printf(3)</STRONG>,  <STRONG><A HREF="term.5.html">term(5)</A></STRONG>.
        <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>.
 
 
        <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>.