]> ncurses.scripts.mit.edu Git - ncurses.git/commitdiff
ncurses 6.4 - patch 20231217
authorThomas E. Dickey <dickey@invisible-island.net>
Mon, 18 Dec 2023 08:58:33 +0000 (08:58 +0000)
committerThomas E. Dickey <dickey@invisible-island.net>
Mon, 18 Dec 2023 08:58:33 +0000 (08:58 +0000)
+ improve formatting/style of manpages (patches by Branden Robinson).
+ correct an assignment in infocmp "-u" for detecting if a boolean
  is unset in a base entry and set in a use'd chunk, i.e., if it was
  cancelled.
+ modify infocmp "-u" option to not report cancels for strings which
  were already cancelled in a use'd chunk.
+ join two lines in infotocap.3x to eliminate a spurious "description"
  link in installed manpages (report by Sven Joachim).
+ fix typo in NEWS (report by Sven Joachim).
  bold font escapes in manpage cross-references (Debian #1057651).

174 files changed:
NEWS
VERSION
dist.mk
doc/html/man/adacursesw6-config.1.html
doc/html/man/captoinfo.1m.html
doc/html/man/clear.1.html
doc/html/man/curs_add_wch.3x.html
doc/html/man/curs_addch.3x.html
doc/html/man/curs_attr.3x.html
doc/html/man/curs_bkgd.3x.html
doc/html/man/curs_bkgrnd.3x.html
doc/html/man/curs_border.3x.html
doc/html/man/curs_clear.3x.html
doc/html/man/curs_color.3x.html
doc/html/man/curs_delch.3x.html
doc/html/man/curs_deleteln.3x.html
doc/html/man/curs_extend.3x.html
doc/html/man/curs_get_wstr.3x.html
doc/html/man/curs_getcchar.3x.html
doc/html/man/curs_getch.3x.html
doc/html/man/curs_getstr.3x.html
doc/html/man/curs_getyx.3x.html
doc/html/man/curs_inch.3x.html
doc/html/man/curs_initscr.3x.html
doc/html/man/curs_inopts.3x.html
doc/html/man/curs_ins_wstr.3x.html
doc/html/man/curs_insch.3x.html
doc/html/man/curs_instr.3x.html
doc/html/man/curs_kernel.3x.html
doc/html/man/curs_memleaks.3x.html
doc/html/man/curs_mouse.3x.html
doc/html/man/curs_move.3x.html
doc/html/man/curs_opaque.3x.html
doc/html/man/curs_outopts.3x.html
doc/html/man/curs_overlay.3x.html
doc/html/man/curs_pad.3x.html
doc/html/man/curs_print.3x.html
doc/html/man/curs_printw.3x.html
doc/html/man/curs_refresh.3x.html
doc/html/man/curs_scanw.3x.html
doc/html/man/curs_scr_dump.3x.html
doc/html/man/curs_scroll.3x.html
doc/html/man/curs_slk.3x.html
doc/html/man/curs_sp_funcs.3x.html
doc/html/man/curs_termcap.3x.html
doc/html/man/curs_terminfo.3x.html
doc/html/man/curs_threads.3x.html
doc/html/man/curs_trace.3x.html
doc/html/man/curs_util.3x.html
doc/html/man/curs_variables.3x.html
doc/html/man/curs_window.3x.html
doc/html/man/default_colors.3x.html
doc/html/man/define_key.3x.html
doc/html/man/form.3x.html
doc/html/man/form_field_buffer.3x.html
doc/html/man/form_field_validation.3x.html
doc/html/man/form_page.3x.html
doc/html/man/form_requestname.3x.html
doc/html/man/infocmp.1m.html
doc/html/man/infotocap.1m.html
doc/html/man/key_defined.3x.html
doc/html/man/keybound.3x.html
doc/html/man/keyok.3x.html
doc/html/man/legacy_coding.3x.html
doc/html/man/menu.3x.html
doc/html/man/menu_driver.3x.html
doc/html/man/menu_requestname.3x.html
doc/html/man/menu_spacing.3x.html
doc/html/man/ncurses.3x.html
doc/html/man/ncursesw6-config.1.html
doc/html/man/new_pair.3x.html
doc/html/man/panel.3x.html
doc/html/man/resizeterm.3x.html
doc/html/man/scr_dump.5.html
doc/html/man/tabs.1.html
doc/html/man/term.5.html
doc/html/man/terminfo.5.html
doc/html/man/tic.1m.html
doc/html/man/toe.1m.html
doc/html/man/tput.1.html
doc/html/man/tset.1.html
doc/html/man/user_caps.5.html
man/MKada_config.in
man/MKncu_config.in
man/captoinfo.1m
man/clear.1
man/curs_add_wch.3x
man/curs_addch.3x
man/curs_attr.3x
man/curs_bkgd.3x
man/curs_bkgrnd.3x
man/curs_border.3x
man/curs_clear.3x
man/curs_color.3x
man/curs_delch.3x
man/curs_deleteln.3x
man/curs_extend.3x
man/curs_get_wstr.3x
man/curs_getcchar.3x
man/curs_getch.3x
man/curs_getstr.3x
man/curs_getyx.3x
man/curs_inch.3x
man/curs_initscr.3x
man/curs_inopts.3x
man/curs_ins_wstr.3x
man/curs_insch.3x
man/curs_instr.3x
man/curs_kernel.3x
man/curs_memleaks.3x
man/curs_mouse.3x
man/curs_move.3x
man/curs_opaque.3x
man/curs_outopts.3x
man/curs_overlay.3x
man/curs_pad.3x
man/curs_print.3x
man/curs_printw.3x
man/curs_refresh.3x
man/curs_scanw.3x
man/curs_scr_dump.3x
man/curs_scroll.3x
man/curs_slk.3x
man/curs_sp_funcs.3x
man/curs_termcap.3x
man/curs_terminfo.3x
man/curs_threads.3x
man/curs_trace.3x
man/curs_util.3x
man/curs_variables.3x
man/curs_window.3x
man/default_colors.3x
man/define_key.3x
man/form.3x
man/form_field_buffer.3x
man/form_field_validation.3x
man/form_page.3x
man/form_requestname.3x
man/infocmp.1m
man/infotocap.1m
man/key_defined.3x
man/keybound.3x
man/keyok.3x
man/legacy_coding.3x
man/man_db.renames.in
man/manhtml.aliases
man/manhtml.externs
man/menu.3x
man/menu_driver.3x
man/menu_requestname.3x
man/menu_spacing.3x
man/ncurses.3x
man/new_pair.3x
man/panel.3x
man/resizeterm.3x
man/scr_dump.5
man/tabs.1
man/term.5
man/terminfo.head
man/terminfo.tail
man/tic.1m
man/toe.1m
man/tput.1
man/tset.1
man/user_caps.5
misc/terminfo.src
package/debian-mingw/changelog
package/debian-mingw64/changelog
package/debian/changelog
package/mingw-ncurses.nsi
package/mingw-ncurses.spec
package/ncurses.spec
package/ncursest.spec
progs/infocmp.c

diff --git a/NEWS b/NEWS
index 03922d7b5af83bbd4fe0b97db4af6027c04a4f77..e598e3eadb705fa4c2fe32c991c2aaf9856bb5a1 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -26,7 +26,7 @@
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
--- $Id: NEWS,v 1.4047 2023/12/09 22:52:42 tom Exp $
+-- $Id: NEWS,v 1.4053 2023/12/17 23:18:40 tom Exp $
 -------------------------------------------------------------------------------
 
 This is a log of changes that ncurses has gone through since Zeyd started
@@ -46,13 +46,24 @@ See the AUTHORS file for the corresponding full names.
 Changes through 1.9.9e did not credit all contributions;
 it is not possible to add this information.
 
+20231217
+       + improve formatting/style of manpages (patches by Branden Robinson).
+       + correct an assignment in infocmp "-u" for detecting if a boolean
+         is unset in a base entry and set in a use'd chunk, i.e., if it was
+         cancelled.
+       + modify infocmp "-u" option to not report cancels for strings which
+         were already cancelled in a use'd chunk.
+       + join two lines in infotocap.3x to eliminate a spurious "description"
+         link in installed manpages (report by Sven Joachim).
+       + fix typo in NEWS (report by Sven Joachim).
+
 20231209
        + modify infocmp "-u" option to not report cancels in use'd chunks
          which are not mentioned in the top-level terminal description.
        + remove xterm+sm+1006 from tmux (Debian #1057688).
        + used "infocmp -u" to help trim redundant capabilities -TD
        + updated man/edit_man.sh to allow for "\%" markers embedded after
-         bold font escapes in manpage cross-references (Debian #1057541).
+         bold font escapes in manpage cross-references (Debian #1057651).
        + reduce compiler-warnings in configure checks
 
 20231202
diff --git a/VERSION b/VERSION
index 5cc32b653ebc0e2cb5d2913c900666c2265b8355..8ff8be904e24bd4428d2cde3d4c651314362c760 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-5:0:10 6.4     20231209
+5:0:10 6.4     20231217
diff --git a/dist.mk b/dist.mk
index 271ac115ed473a1746797fb1d6cef19ba6d7e490..08ff1690ae9026faec384475a63f72d31421c9a0 100644 (file)
--- a/dist.mk
+++ b/dist.mk
@@ -26,7 +26,7 @@
 # use or other dealings in this Software without prior written               #
 # authorization.                                                             #
 ##############################################################################
-# $Id: dist.mk,v 1.1582 2023/12/09 11:46:25 tom Exp $
+# $Id: dist.mk,v 1.1584 2023/12/17 23:18:40 tom Exp $
 # Makefile for creating ncurses distributions.
 #
 # This only needs to be used directly as a makefile by developers, but
@@ -38,7 +38,7 @@ SHELL = /bin/sh
 # These define the major/minor/patch versions of ncurses.
 NCURSES_MAJOR = 6
 NCURSES_MINOR = 4
-NCURSES_PATCH = 20231209
+NCURSES_PATCH = 20231217
 
 # We don't append the patch to the version, since this only applies to releases
 VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
@@ -126,7 +126,7 @@ manhtml:
        @misc/csort < subst.tmp | uniq > subst.sed
        @echo '/<\/TITLE>/a\' >> subst.sed
        @echo '<link rel="author" href="mailto:bug-ncurses@gnu.org">\' >> subst.sed
-       @rm -f subst.tmp
+       #@rm -f subst.tmp
        @for f in man/*.[0-9]* ; do \
           m=`basename $$f` ;\
           T=`$${EGREP-grep -E} '^.TH' $$f|sed -e 's/^.TH //' -e s'/"//g' -e 's/[       ]\+$$//'` ; \
@@ -152,7 +152,7 @@ manhtml:
                   sed -e 's/"curses.3x.html"/"ncurses.3x.html"/g' \
           >> doc/html/man/$$g ;\
        done
-       @rm -f subst.sed
+       #@rm -f subst.sed
 
 #
 # Please note that this target can only be properly built if the build of the
index 90b4f813087ad8e25ea05f87294f309d0cad5300..e6c0dd798ffa447239281118d666759843e7e5ba 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: MKada_config.in,v 1.31 2023/11/25 19:51:50 tom Exp @
+  * @Id: MKada_config.in,v 1.32 2023/12/16 21:42: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>adacursesw6\-config 1 2023-11-25 ncurses 6.4 User commands</TITLE>
+<TITLE>adacursesw6\-config 1 2023-12-16 ncurses 6.4 User commands</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">adacursesw6\-config 1 2023-11-25 ncurses 6.4 User commands</H1>
+<H1 class="no-header">adacursesw6\-config 1 2023-12-16 ncurses 6.4 User commands</H1>
 <PRE>
 <STRONG><A HREF="adacursesw6-config.1.html">adacursesw6-config(1)</A></STRONG>            User commands           <STRONG><A HREF="adacursesw6-config.1.html">adacursesw6-config(1)</A></STRONG>
 
 
 
 
-ncurses 6.4                       2023-11-25             <STRONG><A HREF="adacursesw6-config.1.html">adacursesw6-config(1)</A></STRONG>
+ncurses 6.4                       2023-12-16             <STRONG><A HREF="adacursesw6-config.1.html">adacursesw6-config(1)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 9531a372c5d08669581676d499ae83c8e1b62c2a..281372a1947b9d9a8075c1ebb541e29cec823a71 100644 (file)
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: captoinfo.1m,v 1.56 2023/12/02 20:51:25 tom Exp @
+  * @Id: captoinfo.1m,v 1.57 2023/12/16 21:34:23 tom Exp @
   * TODO: There are about 40 box drawing code points in CCSID 437;
   * were there no XENIX capabilities for the mixed single- and double-
   * line intersections?
 <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>captoinfo 1m 2023-12-02 ncurses 6.4 User commands</TITLE>
+<TITLE>captoinfo 1m 2023-12-16 ncurses 6.4 User commands</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">captoinfo 1m 2023-12-02 ncurses 6.4 User commands</H1>
+<H1 class="no-header">captoinfo 1m 2023-12-16 ncurses 6.4 User commands</H1>
 <PRE>
 <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>                    User commands                   <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>
 
        check that it has not mistakenly  translated  an  unknown  or  mistyped
        capability name.
 
-              <STRONG>Name</STRONG>
-       <STRONG>Obsolete</STRONG>   <STRONG>Standard</STRONG>    <STRONG>Origin</STRONG>      <EM>t</I<STRONG>t</STRONG><EM>e</I<STRONG>e</STRONG><EM>r</I<STRONG>r</STRONG><EM>m</I<STRONG>m</STRONG><EM>i</I<STRONG>i</STRONG><EM>n</I<STRONG>n</STRONG><EM>f</I<STRONG>f</STRONG><EM>o</I<STRONG>o</STRONG> <STRONG>capability</STRONG>
-       ---------------------------------------------------------
-          <STRONG>BO</STRONG>         <STRONG>mr</STRONG>        AT&amp;T      <STRONG>enter_reverse_mode</STRONG>
-          <STRONG>CI</STRONG>         <STRONG>vi</STRONG>        AT&amp;T      <STRONG>cursor_invisible</STRONG>
-          <STRONG>CV</STRONG>         <STRONG>ve</STRONG>        AT&amp;T      <STRONG>cursor_normal</STRONG>
-          <STRONG>DS</STRONG>         <STRONG>mh</STRONG>        AT&amp;T      <STRONG>enter_dim_mode</STRONG>
-          <STRONG>EE</STRONG>         <STRONG>me</STRONG>        AT&amp;T      <STRONG>exit_attribute_mode</STRONG>
-          <STRONG>FE</STRONG>         <STRONG>LF</STRONG>        AT&amp;T      <STRONG>label_on</STRONG>
-          <STRONG>FL</STRONG>         <STRONG>LO</STRONG>        AT&amp;T      <STRONG>label_off</STRONG>
-          <STRONG>XS</STRONG>         <STRONG>mk</STRONG>        AT&amp;T      <STRONG>enter_secure_mode</STRONG>
-          <STRONG>EN</STRONG>         <STRONG>@7</STRONG>        XENIX     <STRONG>key_end</STRONG>
-          <STRONG>GE</STRONG>         <STRONG>ae</STRONG>        XENIX     <STRONG>exit_alt_charset_mode</STRONG>
-          <STRONG>GS</STRONG>         <STRONG>as</STRONG>        XENIX     <STRONG>enter_alt_charset_mode</STRONG>
-          <STRONG>HM</STRONG>         <STRONG>kh</STRONG>        XENIX     <STRONG>key_home</STRONG>
-          <STRONG>LD</STRONG>         <STRONG>kL</STRONG>        XENIX     <STRONG>key_dl</STRONG>
-          <STRONG>PD</STRONG>         <STRONG>kN</STRONG>        XENIX     <STRONG>key_npage</STRONG>
-          <STRONG>PN</STRONG>         <STRONG>po</STRONG>        XENIX     <STRONG>prtr_off</STRONG>
-          <STRONG>PS</STRONG>         <STRONG>pf</STRONG>        XENIX     <STRONG>prtr_on</STRONG>
-          <STRONG>PU</STRONG>         <STRONG>kP</STRONG>        XENIX     <STRONG>key_ppage</STRONG>
-          <STRONG>RT</STRONG>         <STRONG>@8</STRONG>        XENIX     <STRONG>kent</STRONG>
-          <STRONG>UP</STRONG>         <STRONG>ku</STRONG>        XENIX     <STRONG>kcuu1</STRONG>
-          <STRONG>KA</STRONG>         <STRONG>k;</STRONG>      Tektronix   <STRONG>key_f10</STRONG>
-          <STRONG>KB</STRONG>         <STRONG>F1</STRONG>      Tektronix   <STRONG>key_f11</STRONG>
-          <STRONG>KC</STRONG>         <STRONG>F2</STRONG>      Tektronix   <STRONG>key_f12</STRONG>
-          <STRONG>KD</STRONG>         <STRONG>F3</STRONG>      Tektronix   <STRONG>key_f13</STRONG>
-          <STRONG>KE</STRONG>         <STRONG>F4</STRONG>      Tektronix   <STRONG>key_f14</STRONG>
-          <STRONG>KF</STRONG>         <STRONG>F5</STRONG>      Tektronix   <STRONG>key_f15</STRONG>
-          <STRONG>BC</STRONG>         <STRONG>Sb</STRONG>      Tektronix   <STRONG>set_background</STRONG>
-
-          <STRONG>FC</STRONG>         <STRONG>Sf</STRONG>      Tektronix   <STRONG>set_foreground</STRONG>
-          <STRONG>HS</STRONG>         <STRONG>mh</STRONG>        IRIX      <STRONG>enter_dim_mode</STRONG>
+                     <STRONG>Name</STRONG>
+              <STRONG>Obsolete</STRONG>   <STRONG>Standard</STRONG>    <STRONG>Origin</STRONG>      <STRONG><EM>terminfo</EM></STRONG> <STRONG>capability</STRONG>
+              ---------------------------------------------------------
+                 <STRONG>BO</STRONG>         <STRONG>mr</STRONG>        AT&amp;T      <STRONG>enter_reverse_mode</STRONG>
+                 <STRONG>CI</STRONG>         <STRONG>vi</STRONG>        AT&amp;T      <STRONG>cursor_invisible</STRONG>
+                 <STRONG>CV</STRONG>         <STRONG>ve</STRONG>        AT&amp;T      <STRONG>cursor_normal</STRONG>
+                 <STRONG>DS</STRONG>         <STRONG>mh</STRONG>        AT&amp;T      <STRONG>enter_dim_mode</STRONG>
+                 <STRONG>EE</STRONG>         <STRONG>me</STRONG>        AT&amp;T      <STRONG>exit_attribute_mode</STRONG>
+                 <STRONG>FE</STRONG>         <STRONG>LF</STRONG>        AT&amp;T      <STRONG>label_on</STRONG>
+                 <STRONG>FL</STRONG>         <STRONG>LO</STRONG>        AT&amp;T      <STRONG>label_off</STRONG>
+                 <STRONG>XS</STRONG>         <STRONG>mk</STRONG>        AT&amp;T      <STRONG>enter_secure_mode</STRONG>
+                 <STRONG>EN</STRONG>         <STRONG>@7</STRONG>        XENIX     <STRONG>key_end</STRONG>
+                 <STRONG>GE</STRONG>         <STRONG>ae</STRONG>        XENIX     <STRONG>exit_alt_charset_mode</STRONG>
+                 <STRONG>GS</STRONG>         <STRONG>as</STRONG>        XENIX     <STRONG>enter_alt_charset_mode</STRONG>
+                 <STRONG>HM</STRONG>         <STRONG>kh</STRONG>        XENIX     <STRONG>key_home</STRONG>
+                 <STRONG>LD</STRONG>         <STRONG>kL</STRONG>        XENIX     <STRONG>key_dl</STRONG>
+                 <STRONG>PD</STRONG>         <STRONG>kN</STRONG>        XENIX     <STRONG>key_npage</STRONG>
+                 <STRONG>PN</STRONG>         <STRONG>po</STRONG>        XENIX     <STRONG>prtr_off</STRONG>
+                 <STRONG>PS</STRONG>         <STRONG>pf</STRONG>        XENIX     <STRONG>prtr_on</STRONG>
+                 <STRONG>PU</STRONG>         <STRONG>kP</STRONG>        XENIX     <STRONG>key_ppage</STRONG>
+                 <STRONG>RT</STRONG>         <STRONG>@8</STRONG>        XENIX     <STRONG>kent</STRONG>
+                 <STRONG>UP</STRONG>         <STRONG>ku</STRONG>        XENIX     <STRONG>kcuu1</STRONG>
+                 <STRONG>KA</STRONG>         <STRONG>k;</STRONG>      Tektronix   <STRONG>key_f10</STRONG>
+                 <STRONG>KB</STRONG>         <STRONG>F1</STRONG>      Tektronix   <STRONG>key_f11</STRONG>
+                 <STRONG>KC</STRONG>         <STRONG>F2</STRONG>      Tektronix   <STRONG>key_f12</STRONG>
+                 <STRONG>KD</STRONG>         <STRONG>F3</STRONG>      Tektronix   <STRONG>key_f13</STRONG>
+                 <STRONG>KE</STRONG>         <STRONG>F4</STRONG>      Tektronix   <STRONG>key_f14</STRONG>
+                 <STRONG>KF</STRONG>         <STRONG>F5</STRONG>      Tektronix   <STRONG>key_f15</STRONG>
+                 <STRONG>BC</STRONG>         <STRONG>Sb</STRONG>      Tektronix   <STRONG>set_background</STRONG>
+
+                 <STRONG>FC</STRONG>         <STRONG>Sf</STRONG>      Tektronix   <STRONG>set_foreground</STRONG>
+                 <STRONG>HS</STRONG>         <STRONG>mh</STRONG>        IRIX      <STRONG>enter_dim_mode</STRONG>
 
        XENIX <EM>termcap</EM> had a set of extension capabilities, corresponding to box
        drawing characters of CCSID ("code page") 437, as follows.
 
-       <EM>t</I<STRONG>t</STRONG><EM>e</I<STRONG>e</STRONG><EM>r</I<STRONG>r</STRONG><EM>m</I<STRONG>m</STRONG><EM>c</I<STRONG>c</STRONG><EM>a</I<STRONG>a</STRONG><EM>p</I<STRONG>p</STRONG> <STRONG>Name</STRONG>            <STRONG>Graphic</STRONG>
-       -----------------------------------------
-            <STRONG>G2</STRONG>        upper left corner
-            <STRONG>G3</STRONG>        lower left corner
-            <STRONG>G1</STRONG>        upper right corner
-            <STRONG>G4</STRONG>        lower right corner
-            <STRONG>GR</STRONG>        tee pointing right
-            <STRONG>GL</STRONG>        tee pointing left
-            <STRONG>GU</STRONG>        tee pointing up
-            <STRONG>GD</STRONG>        tee pointing down
-            <STRONG>GH</STRONG>        horizontal line
-            <STRONG>GV</STRONG>        vertical line
-            <STRONG>GC</STRONG>        intersection
-            <STRONG>G6</STRONG>        double upper left corner
-            <STRONG>G7</STRONG>        double lower left corner
-            <STRONG>G5</STRONG>        double upper right corner
-            <STRONG>G8</STRONG>        double lower right corner
-            <STRONG>Gr</STRONG>        double tee pointing right
-            <STRONG>Gr</STRONG>        double tee pointing left
-            <STRONG>Gu</STRONG>        double tee pointing up
-            <STRONG>Gd</STRONG>        double tee pointing down
-            <STRONG>Gh</STRONG>        double horizontal line
-            <STRONG>Gv</STRONG>        double vertical line
-            <STRONG>Gc</STRONG>        double intersection
-            <STRONG>GG</STRONG>        ACS magic cookie count
+                      <STRONG><EM>termcap</EM></STRONG> <STRONG>Name</STRONG>            <STRONG>Graphic</STRONG>
+                      -----------------------------------------
+                           <STRONG>G2</STRONG>        upper left corner
+                           <STRONG>G3</STRONG>        lower left corner
+                           <STRONG>G1</STRONG>        upper right corner
+                           <STRONG>G4</STRONG>        lower right corner
+                           <STRONG>GR</STRONG>        tee pointing right
+                           <STRONG>GL</STRONG>        tee pointing left
+                           <STRONG>GU</STRONG>        tee pointing up
+                           <STRONG>GD</STRONG>        tee pointing down
+                           <STRONG>GH</STRONG>        horizontal line
+                           <STRONG>GV</STRONG>        vertical line
+                           <STRONG>GC</STRONG>        intersection
+                           <STRONG>G6</STRONG>        double upper left corner
+                           <STRONG>G7</STRONG>        double lower left corner
+                           <STRONG>G5</STRONG>        double upper right corner
+                           <STRONG>G8</STRONG>        double lower right corner
+                           <STRONG>Gr</STRONG>        double tee pointing right
+                           <STRONG>Gr</STRONG>        double tee pointing left
+                           <STRONG>Gu</STRONG>        double tee pointing up
+                           <STRONG>Gd</STRONG>        double tee pointing down
+                           <STRONG>Gh</STRONG>        double horizontal line
+                           <STRONG>Gv</STRONG>        double vertical line
+                           <STRONG>Gc</STRONG>        double intersection
+                           <STRONG>GG</STRONG>        ACS magic cookie count
 
        <STRONG>captoinfo</STRONG> composes single-line capabilities into an  <STRONG>acsc</STRONG>  string,  and
        discards <STRONG>GG</STRONG> and double-line capabilities with a warning diagnostic.
        which is incompatible with the SVr4 format.  <STRONG>captoinfo</STRONG>  translates  the
        following AIX extensions.
 
-        <STRONG>IBM</STRONG>    <STRONG>XSI</STRONG>
-       -------------
-       ksel    kslt
-       kbtab   kcbt
-       font0   s0ds
-       font1   s1ds
-       font2   s2ds
-       font3   s3ds
+                                     <STRONG>IBM</STRONG>    <STRONG>XSI</STRONG>
+                                    -------------
+                                    ksel    kslt
+                                    kbtab   kcbt
+                                    font0   s0ds
+                                    font1   s1ds
+                                    font2   s2ds
+                                    font3   s3ds
 
        Additionally,  this  program  translates  the AIX <STRONG>box1</STRONG> capability to an
        <STRONG>acsc</STRONG> string.
               default <EM>termcap</EM> terminal capability database
 
 
-</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
-       The verbose option is not identical to SVr4's.  Under SVr4, instead  of
-       following the <STRONG>-v</STRONG> with a trace level <EM>n</EM>, you repeat it <EM>n</EM> times.
-
-
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       X/Open  Curses,  Issue  7  (2009) describes <STRONG>tic</STRONG> briefly, but omits this
-       program.  SVr4 systems provide <STRONG>captoinfo</STRONG> as a separate application from
-       <STRONG>tic</STRONG>.
+       X/Open Curses, Issue 7 (2009) describes <STRONG>tic</STRONG>  briefly,  but  omits  this
+       program.
+
+       SVr4 systems provide <STRONG>captoinfo</STRONG> as a separate application from <STRONG>tic</STRONG>.  Its
+       <STRONG>-v</STRONG> option does not accept a trace level argument <EM>n;</EM> repeat <STRONG>-v</STRONG>  <EM>n</EM>  times
+       instead.
 
        NetBSD does not provide this application.
 
 
 
 
-ncurses 6.4                       2023-12-02                     <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>
+ncurses 6.4                       2023-12-16                     <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
@@ -212,7 +210,6 @@ ncurses 6.4                       2023-12-02                     <STRONG><A HREF
 </ul>
 </li>
 <li><a href="#h2-FILES">FILES</a></li>
-<li><a href="#h2-NOTES">NOTES</a></li>
 <li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
 <li><a href="#h2-AUTHORS">AUTHORS</a></li>
 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
index ba4754ac1893b9beadf34b0b263b253fa6552dc9..528a60bccc986ba8074fd7b4c3c376529095eeb4 100644 (file)
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: clear.1,v 1.45 2023/12/02 20:49:04 tom Exp @
+  * @Id: clear.1,v 1.46 2023/12/16 20:32:22 tom Exp @
   * https://minnie.tuhs.org/cgi-bin/utree.pl?file=2BSD/src/clear.c
   * https://minnie.tuhs.org/cgi-bin/utree.pl?file=Net2/usr/src/usr.bin/\
   *   tput/clear.sh
 <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>clear 1 2023-12-02 ncurses 6.4 User commands</TITLE>
+<TITLE>clear 1 2023-12-16 ncurses 6.4 User commands</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">clear 1 2023-12-02 ncurses 6.4 User commands</H1>
+<H1 class="no-header">clear 1 2023-12-16 ncurses 6.4 User commands</H1>
 <PRE>
 <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>                         User commands                        <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>
 
 
 
 
-ncurses 6.4                       2023-12-02                          <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>
+ncurses 6.4                       2023-12-16                          <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 4c943dd6a3726ce362d32fe7e800c4005e8bd3ce..e92b695a1a6be8ab3711832e9fe8beb4f8755d86 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_add_wch.3x,v 1.48 2023/11/25 14:20:05 tom Exp @
+  * @Id: curs_add_wch.3x,v 1.49 2023/12/16 21:19:37 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>curs_add_wch 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_add_wch 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_add_wch 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_add_wch 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>                 Library calls                <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
 
        WACS_URCORNER     0x2510     +         k       upper right-hand corner
        WACS_VLINE        0x2502     |         x       vertical line
 
-       The wide-character configuration of ncurses also  defines  symbols  for
+       The wide-character configuration of <EM>ncurses</EM> also  defines  symbols  for
        thick lines (<STRONG>acsc</STRONG> "J" to "V"):
 
        <STRONG>ACS</STRONG>               <STRONG>Unicode</STRONG>   <STRONG>ASCII</STRONG>     <STRONG>acsc</STRONG>    <STRONG>Glyph</STRONG>
        WACS_D_VLINE      0x2551    |         Y       double vertical line
 
        Unicode's  descriptions  for  these  characters  differs  slightly from
-       ncurses, by introducing the term "light"  (along  with  less  important
+       <EM>ncurses</EM>, by introducing the term "light"  (along  with  less  important
        details).   Here are its descriptions for the normal, thick, and double
        horizontal lines:
 
 
        <STRONG>o</STRONG>   If  <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG>  is  not enabled, writing a character at the lower
            right margin succeeds.  However, an error is returned because it is
-           not possible to wrap to a new line
+           not possible to wrap to a new line.
 
        <STRONG>o</STRONG>   If  an error is detected when converting a multibyte character to a
            sequence of bytes, or if it is not  possible  to  add  all  of  the
        Existing  implementations of Unix curses (AIX, HP-UX, Solaris) use only
        the <STRONG>acsc</STRONG> character-mapping to provide this feature.  As a result, those
        implementations  can  only  use  single-byte  line-drawing  characters.
-       Ncurses 5.3 (2002) provided a table of Unicode values  to  solve  these
+       <EM>ncurses</EM> 5.3 (2002) provided a table of Unicode values  to  solve  these
        problems.  NetBSD curses incorporated that table in 2010.
 
        In  this  implementation,  the  Unicode  values are used instead of the
        terminal description's <STRONG>acsc</STRONG> mapping as discussed in <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> for the
-       environment  variable  <STRONG>NCURSES_NO_UTF8_ACS</STRONG>.   In contrast, for the same
-       cases, the line-drawing characters described in <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG> will use
-       only the ASCII default values.
+       environment  variable  <EM>NCURSES</EM><STRONG>_</STRONG><EM>NO</EM><STRONG>_</STRONG><EM>UTF8</EM><STRONG>_</STRONG><EM>ACS</EM>.   In contrast, for the same
+       cases, the line-drawing characters described in <STRONG><A HREF="curs_addch.3x.html">addch(3x)</A></STRONG> will use only
+       the ASCII default values.
 
        Having  Unicode available does not solve all of the problems with line-
        drawing for curses:
 
        <STRONG>o</STRONG>   may hold one non-spacing character.
 
-       In  the  latter  case,  ncurses  adds  the non-spacing character to the
+       In  the  latter  case,  <EM>ncurses</EM>  adds  the non-spacing character to the
        active (base) spacing character.
 
 
 
 
 
-ncurses 6.4                       2023-11-25                  <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                  <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 65ba4f28c9bbb602e5ceb4fffef80bbb8396a5b9..976fc3e496e7468e74fd858bae66d033e1d5ee23 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_addch.3x,v 1.74 2023/11/25 14:20:05 tom Exp @
+  * @Id: curs_addch.3x,v 1.75 2023/12/16 21:19:37 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>curs_addch 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_addch 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_addch 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_addch 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
 
@@ -79,7 +79,7 @@
 
        <STRONG>o</STRONG>   If <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG> is not enabled, writing a character  at  the  lower
            right margin succeeds.  However, an error is returned because it is
-           not possible to wrap to a new line
+           not possible to wrap to a new line.
 
        If <EM>ch</EM> is a tab, newline, carriage return or backspace,  the  cursor  is
        moved appropriately within the window:
 
        <STRONG>o</STRONG>   If  <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG>  is  not enabled, writing a character at the lower
            right margin succeeds.  However, an error is returned because it is
-           not possible to wrap to a new line
+           not possible to wrap to a new line.
 
        <STRONG>o</STRONG>   If  an error is detected when converting a multibyte character to a
            sequence of bytes, or if it is not  possible  to  add  all  of  the
 
        The <EM>displayed</EM> values for the <STRONG>ACS_</STRONG> and <STRONG>WACS_</STRONG> constants depend on
 
-       <STRONG>o</STRONG>   the library configuration, i.e., <STRONG>ncurses</STRONG> versus <STRONG>ncursesw</STRONG>, where the
+       <STRONG>o</STRONG>   the library configuration, i.e., <EM>ncurses</EM> versus <EM>ncursesw</EM>, where the
            latter  is  capable  of displaying Unicode while the former is not,
            and
 
        character information which is packed in a <STRONG>chtype</STRONG> to pass to <STRONG>waddch</STRONG>.
 
        In this implementation,  <STRONG>chtype</STRONG>  holds  an  eight-bit  character.   But
-       ncurses  allows  multibyte  characters  to be passed in a succession of
+       <EM>ncurses</EM>  allows  multibyte  characters  to be passed in a succession of
        calls to <STRONG>waddch</STRONG>.  The other implementations do not do this; a  call  to
        <STRONG>waddch</STRONG>  passes  exactly  one  character which may be rendered as one or
        more cells on the screen depending on whether it is printable.
 
-       Depending on the locale settings, ncurses will inspect the byte  passed
+       Depending on the locale settings, <EM>ncurses</EM> will inspect the byte  passed
        in  each  call  to <STRONG>waddch</STRONG>, and check if the latest call will continue a
-       multibyte sequence.  When a character is <EM>complete</EM>, ncurses displays the
+       multibyte sequence.  When a character is <EM>complete</EM>, <EM>ncurses</EM> displays the
        character and moves to the next position in the screen.
 
        If  the  calling  application  interrupts  the succession of bytes in a
        multibyte character by moving the current location (e.g., using <STRONG>wmove</STRONG>),
-       ncurses discards the partially built character, starting over again.
+       <EM>ncurses</EM> discards the partially built character, starting over again.
 
        For  portability  to  other  implementations,  do  not  rely  upon this
        behavior:
 
 
 
-ncurses 6.4                       2023-11-25                    <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                    <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 7d1f64139a069a233d163aee93976e9e47d7eb52..56fdf6678f5dc87fe4d49e0da6c1a7abd7599f55 100644 (file)
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_attr.3x,v 1.91 2023/12/02 21:05:24 tom Exp @
+  * @Id: curs_attr.3x,v 1.92 2023/12/16 21:07:24 tom Exp @
   * ---------------------------------------------------------------------------
   * ---------------------------------------------------------------------------
   * ---------------------------------------------------------------------------
 <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>curs_attr 3x 2023-12-02 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_attr 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_attr 3x 2023-12-02 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_attr 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>                    Library calls                   <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
 
            attr_set(A_BOLD, <EM>pair</EM>, NULL);
 
        However, if the value does not fit, then the <STRONG>COLOR_PAIR</STRONG> macro uses only
-       the  bits  that fit.  For example, because in ncurses <STRONG>A_COLOR</STRONG> has eight
+       the  bits  that fit.  For example, because in <EM>ncurses</EM> <STRONG>A_COLOR</STRONG> has eight
        (8) bits, then <STRONG>COLOR_PAIR(</STRONG><EM>259</EM><STRONG>)</STRONG> is 4 (i.e., 259 is 4 more than the limit
        255).
 
        than <STRONG>attr_t</STRONG>.
 
        There  is  no  corresponding <STRONG>attrget</STRONG> function as such in X/Open Curses,
-       although ncurses provides <STRONG>getattrs</STRONG> (see <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>).
+       although <EM>ncurses</EM> provides <STRONG>getattrs</STRONG> (see <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>).
 
 
 </PRE><H3><a name="h3-Change-character-rendition">Change character rendition</a></H3><PRE>
        function  generalizes  this to any window; the <STRONG>mvwchgat</STRONG> function does a
        cursor move before acting.
 
-       In these functions, the color <EM>pair</EM> argument is a color-pair  index  (as
+       In these functions, the color <EM>pair</EM> argument is a color pair  index  (as
        in the first argument of <STRONG>init_pair</STRONG>, see <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>).
 
 
            outside the range 0..COLOR_PAIRS-1.
 
        <STRONG>o</STRONG>   does  not  return an error if either of the parameters of <STRONG>wattr_get</STRONG>
-           used for retrieving attribute or color-pair values is <STRONG>NULL</STRONG>.
+           used for retrieving attribute or color pair values is <STRONG>NULL</STRONG>.
 
        Functions with a "mv" prefix first  perform  a  cursor  movement  using
        <STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
 
        Color  pair  values can only be OR'd with attributes if the pair number
        is less than 256.  The alternate functions such as <STRONG>color_set</STRONG> can pass a
-       color pair value directly.  However, ncurses ABI 4 and 5 simply OR this
-       value within the alternate functions.  You must use ncurses  ABI  6  to
+       color pair value directly.  However, <EM>ncurses</EM> ABI 4 and 5 simply OR this
+       value within the alternate functions.  You must use <EM>ncurses</EM>  ABI  6  to
        support more than 256 color pairs.
 
 
        X/Open  Curses  still  (after  more  than  twenty  years)  documents as
        reserved  for  future  use,  saying  that  it  should  be  <STRONG>NULL</STRONG>.   This
        implementation  uses  that  parameter  in ABI 6 for the functions which
-       have a color-pair parameter to support <EM>extended</EM> <EM>color</EM> <EM>pairs</EM>:
+       have a color pair parameter to support <EM>extended</EM> <EM>color</EM> <EM>pairs</EM>:
 
        <STRONG>o</STRONG>   For functions which modify the color, e.g., <STRONG>wattr_set</STRONG> and <STRONG>wattr_on</STRONG>,
            if  <EM>opts</EM>  is set it is treated as a pointer to <STRONG>int</STRONG>, and used to set
            the same because it simplifies copying information  between  <STRONG>chtype</STRONG>
            and <STRONG>cchar_t</STRONG> variables.
 
-       <STRONG>o</STRONG>   Because  ncurses's  <STRONG>attr_t</STRONG>  can  hold  a color pair (in the <STRONG>A_COLOR</STRONG>
+       <STRONG>o</STRONG>   Because  <EM>ncurses</EM>'s  <STRONG>attr_t</STRONG>  can  hold  a color pair (in the <STRONG>A_COLOR</STRONG>
            field), a call to <STRONG>wattr_on</STRONG>, <STRONG>wattr_off</STRONG>, or <STRONG>wattr_set</STRONG> may  alter  the
            window's  color.   If  the  color pair information in the attribute
            parameter is zero, no change is made to the window's color.
 
           Regarding OSF/1 (and Tru64),
 
-          <STRONG>o</STRONG>   These used 64-bit hardware.   Like  ncurses,  the  OSF/1  curses
+          <STRONG>o</STRONG>   These used 64-bit hardware.   Like  <EM>ncurses</EM>,  the  OSF/1  curses
               interface is not customized for 32-bit and 64-bit versions.
 
           <STRONG>o</STRONG>   Unlike  other  systems  which  evolved  from  AT&amp;T  code,  OSF/1
            modification to make the library 8-bit clean for <STRONG>nvi(1)</STRONG>.  He  moved
            <EM>standout</EM> attribute to a structure member.
 
-           The  resulting  4.4BSD curses was replaced by ncurses over the next
+           The  resulting  4.4BSD curses was replaced by <EM>ncurses</EM> over the next
            ten years.
 
        <STRONG>o</STRONG>   U/Win is rarely used now.
 
 
 
-ncurses 6.4                       2023-12-02                     <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                     <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 9632a9e1f6fead0679277a9329f0eb4c2a3f4d1f..7642671fcd64421fb17ebe6d4cb0d971c2f9033f 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_bkgd.3x,v 1.51 2023/12/02 21:02:44 tom Exp @
+  * @Id: curs_bkgd.3x,v 1.54 2023/12/17 23:31:28 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>curs_bkgd 3x 2023-12-02 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_bkgd 3x 2023-12-17 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_bkgd 3x 2023-12-02 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_bkgd 3x 2023-12-17 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>                    Library calls                   <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
 
 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
 
-       <STRONG>void</STRONG> <STRONG>bkgdset(chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
-       <STRONG>void</STRONG> <STRONG>wbkgdset(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
-
        <STRONG>int</STRONG> <STRONG>bkgd(chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
        <STRONG>int</STRONG> <STRONG>wbkgd(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
 
+       <STRONG>void</STRONG> <STRONG>bkgdset(chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+       <STRONG>void</STRONG> <STRONG>wbkgdset(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+
        <STRONG>chtype</STRONG> <STRONG>getbkgd(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
+       The  <EM>background</EM>  of  a  <EM>curses</EM>  window  (in  the  library's  non-"wide"
+       configuration)   is  a  <EM>chtype</EM>  combining  a  set  of  attributes  (see
+       <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>) with a character called the <EM>blank</EM> <EM>character.</EM>
 
-</PRE><H3><a name="h3-bkgdset">bkgdset</a></H3><PRE>
-       The <STRONG>bkgdset</STRONG> and <STRONG>wbkgdset</STRONG> routines set the <EM>background</EM> for a  window.   A
-       window's  background  is  a  <STRONG>chtype</STRONG>  consisting  of  any combination of
-       attributes (i.e., rendition) and a character:
-
-       <STRONG>o</STRONG>   The attribute part of the background is combined (OR'ed)  with  all
-           non-blank characters that are written into the window with <STRONG>waddch</STRONG>.
-
-       <STRONG>o</STRONG>   Both  the  character  and  attribute  parts  of  the background are
-           combined with blank characters that are written into the window.
-
-       The background becomes a property of each character and moves with  the
-       character   through  any  scrolling  and  insert/delete  line/character
-       operations.
-
-       To the extent possible on a particular terminal, the attribute part  of
-       the  background  is displayed as the graphic rendition of the character
-       put on the screen.
+       The blank character is a spacing character that  populates  a  window's
+       character  cells  when  their  contents are erased without replacement.
+       The background's attributes are combined with all non-blank  characters
+       written  to  the window, as with the <STRONG><A HREF="curs_addch.3x.html">waddch(3x)</A></STRONG> and <STRONG><A HREF="curs_insch.3x.html">winsch(3x)</A></STRONG> families
+       of functions.
 
+       The blank character and  attributes  of  the  background  combine  with
+       characters  written  to  the window as described below.  The background
+       becomes a property of the character  and  moves  with  it  through  any
+       scrolling and insert/delete line/character operations.
 
-</PRE><H3><a name="h3-bkgd">bkgd</a></H3><PRE>
-       The <STRONG>bkgd</STRONG> and <STRONG>wbkgd</STRONG> functions set the background property of the current
-       or  specified  window  and  then  apply this setting to every character
-       position in that window.  According to  X/Open  Curses,  it  should  do
-       this:
+       To  the  extent possible on a given terminal, the attribute part of the
+       background is displayed as the graphic rendition of the  character  put
+       on the screen.
 
-       <STRONG>o</STRONG>   The  rendition  of  every character on the screen is changed to the
-           new background rendition.
 
-       <STRONG>o</STRONG>   Wherever the former background character appears, it is changed  to
-           the new background character.
+</PRE><H3><a name="h3-bkgd_-wbkgd">bkgd, wbkgd</a></H3><PRE>
+       <STRONG>bkgd</STRONG>  and  <STRONG>wbkgd</STRONG> set the background property of <STRONG>stdscr</STRONG> or the specified
+       window and then apply this setting to  every  character  cell  in  that
+       window.
 
-       Neither  X/Open Curses nor the SVr4 manual pages give details about the
-       way the rendition of characters on the screen is updated when  <STRONG>bkgd</STRONG>  or
-       <STRONG>wbkgd</STRONG> is used to change the background character.
+       <STRONG>o</STRONG>   The  rendition  of every character in the window changes to the new
+           background rendition.
 
-       <EM>ncurses</EM>,  like  SVr4  <EM>curses</EM>,  does not store the background and window
-       attribute contributions  to  each  cell  separately.   It  updates  the
-       rendition  by  comparing the character, non-color attributes and colors
-       contained in the background.  For each cell in the window,  whether  or
-       not it is blank:
-
-       <STRONG>o</STRONG>   The  library  first  compares  the <EM>character</EM>, and if it matches the
-           current character part of the background, it replaces that with the
+       <STRONG>o</STRONG>   Wherever the former background character appears, it changes to the
            new background character.
 
-           When <STRONG>bkgdset</STRONG> is used to set the background character, that does not
-           update each cell in the window.  A subsequent  call  to  <STRONG>bkgd</STRONG>  will
-           only  modify  the  <EM>character</EM>  in  cells  which  match  the  current
-           background character.
+       <EM>ncurses</EM>  updates  the rendition of each character cell by comparing the
+       character, non-color attributes, and colors.  The  library  applies  to
+       following  procedure  to  each cell in the window, whether or not it is
+       blank.
+
+       <STRONG>o</STRONG>   <EM>ncurses</EM> first compares  the  cell's  character  to  the  previously
+           specified  blank  character;  if they match, <EM>ncurses</EM> writes the new
+           blank character to the cell.
 
-       <STRONG>o</STRONG>   The library then checks if the cell uses  color,  i.e.,  its  color
-           pair  value  is nonzero.  If not, it simply replaces the attributes
-           and color pair in the cell  with  those  from  the  new  background
+       <STRONG>o</STRONG>   <EM>ncurses</EM> then checks if the cell uses color, that is, its color pair
+           value  is  nonzero.   If not, it simply replaces the attributes and
+           color  pair  in  the  cell  with  those  from  the  new  background
            character.
 
-       <STRONG>o</STRONG>   If  the  cell uses color, and that matches the color in the current
-           background, the library removes attributes which may have come from
-           the current background and adds attributes from the new background.
-           It finishes by setting the cell to  use  the  color  from  the  new
-           background.
+       <STRONG>o</STRONG>   If  the  cell  uses color, and its background color matches that of
+           the current window background, <EM>ncurses</EM> removes attributes that  may
+           have  come  from the current background and adds those from the new
+           background.  It finishes by setting the cell's  background  to  use
+           the new window background color.
 
-       <STRONG>o</STRONG>   If  the  cell  uses color, and that does not match the color in the
-           current  background,  the  library  updates  only   the   non-color
-           attributes,  first  removing  those  which  may  have come from the
-           current  background,  and  then  adding  attributes  from  the  new
+       <STRONG>o</STRONG>   If  the  cell  uses  color, and its background color does not match
+           that of the current window background,  <EM>ncurses</EM>  updates  only  the
+           non-color  attributes, first removing those that may have come from
+           the current background, and then adding  attributes  from  the  new
            background.
 
-       If the background's character value is zero (0), a space is assumed.
+       <EM>ncurses</EM>  treats  a  background  character  value of zero (0) as a blank
+       character.
+
+       If the terminal does not support  color,  or  if  color  has  not  been
+       initialized  with  <STRONG><A HREF="curs_color.3x.html">start_color(3x)</A></STRONG>,  <EM>ncurses</EM> ignores the new background
+       character's color attribute.
+
 
-       If  the  terminal  does  not  support  color,  or if color has not been
-       started  with  <STRONG>start_color</STRONG>,  the  new  background   character's   color
-       attribute will be ignored.
+</PRE><H3><a name="h3-bkgdset_-wbkgdset">bkgdset, wbkgdset</a></H3><PRE>
+       <STRONG>bkgdset</STRONG> and  <STRONG>wbkgdset</STRONG>  manipulate  the  background  of  the  applicable
+       window, without updating the character cells as <STRONG>bkgd</STRONG> and <STRONG>wbkgd</STRONG> do; only
+       future writes reflect the updated background.
 
 
 </PRE><H3><a name="h3-getbkgd">getbkgd</a></H3><PRE>
-       The  <STRONG>getbkgd</STRONG>  function  returns  the  given window's current background
-       character/attribute pair.
+       <STRONG>getbkgd</STRONG> obtains the given window's background character  and  attribute
+       combination.
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       Functions returning an <EM>int</EM> return <STRONG>OK</STRONG> on success.  <STRONG>bkgd</STRONG> returns  <STRONG>ERR</STRONG>  if
-       the  library has not been initialized.  <STRONG>wbkgd</STRONG> and <STRONG>getbkgd</STRONG> return <STRONG>ERR</STRONG> if
-       the <EM>WINDOW</EM> pointer argument is null.
+       Functions  returning  an <EM>int</EM> return <STRONG>OK</STRONG> on success.  <STRONG>bkgd</STRONG> returns <STRONG>ERR</STRONG> if
+       the library has not been initialized.  <STRONG>wbkgd</STRONG> and <STRONG>getbkgd</STRONG> return <STRONG>ERR</STRONG>  if
+       a <EM>WINDOW</EM> pointer argument is null.
 
-       In contrast, the SVr4.0 manual says <STRONG>bkgd</STRONG> and <STRONG>wbkgd</STRONG> may return <STRONG>OK</STRONG> "or  a
-       non-negative  integer  if  <STRONG>immedok</STRONG>  is set", which refers to the return
-       value from <STRONG>wrefresh</STRONG> (used to implement the immediate repainting).  SVr4
-       <EM>curses</EM>  <STRONG>wrefresh</STRONG> returns the number of characters written to the screen
-       during the refresh.  <EM>ncurses</EM> does not do that.
+       <STRONG>bkgdset</STRONG> and <STRONG>wbkgdset</STRONG> do not return a value.
+
+       <STRONG>getbkgd</STRONG>   returns   a   window's  background  character  and  attribute
+       combination.
 
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
        Unusually, there is no <STRONG>wgetbkgd</STRONG> function; <STRONG>getbkgd</STRONG> behaves as one  would
        expect <STRONG>wgetbkgd</STRONG> to, accepting a <EM>WINDOW</EM> pointer argument.
 
-       Note that <STRONG>bkgdset</STRONG> and <STRONG>bkgd</STRONG> may be macros.
+       <STRONG>bkgd</STRONG> and <STRONG>bkgdset</STRONG> may be available as macros.
 
        X/Open  Curses  mentions that the character part of the background must
        be a single-byte value.  <EM>ncurses</EM>, like SVr4 <EM>curses</EM>,  checks  to  ensure
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       These  functions are described in the XSI Curses standard, Issue 4.  It
-       specifies that <STRONG>bkgd</STRONG> and <STRONG>wbkgd</STRONG> return  <STRONG>ERR</STRONG>  on  failure,  but  gives  no
-       failure conditions.
+       X/Open  Curses,  Issue 4, describes these functions.  It specifies that
+       <STRONG>bkgd</STRONG>, <STRONG>wbkgd</STRONG>, and <STRONG>getbkgd</STRONG> return <STRONG>ERR</STRONG> on failure  (in  the  case  of  the
+       last,  this  value  is  cast  to  <EM>chtype</EM>),  but  describes  no  failure
+       conditions.
+
+       The SVr4.0 manual says that <STRONG>bkgd</STRONG> and <STRONG>wbkgd</STRONG> may return  <STRONG>OK</STRONG>  "or  a  non-
+       negative  integer  if <STRONG>immedok</STRONG> is set", which refers to the return value
+       from <STRONG><A HREF="curs_refresh.3x.html">wrefresh(3x)</A></STRONG>, used to implement the  immediate  repainting.   SVr4
+       <EM>curses</EM>'s  <STRONG>wrefresh</STRONG>  returns  the  number  of  characters written to the
+       screen during the refresh.  <EM>ncurses</EM> does not do that.
+
+       Neither X/Open  Curses  nor  the  SVr4  manual  pages  detail  how  the
+       rendition  of  characters  on  the  screen  updates  when <STRONG>bkgd</STRONG> or <STRONG>wbkgd</STRONG>
+       changes the background character.  <EM>ncurses,</EM> like SVr4 <EM>curses,</EM> does  not
+       (in  its  non-"wide"  configuration)  store  the  background and window
+       attribute contributions to each character cell separately.
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>, <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>, <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
+       <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG> describes the corresponding  functions  in  the  "wide"
+       configuration of <EM>ncurses.</EM>
+
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>, <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-12-02                     <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
+ncurses 6.4                       2023-12-17                     <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
@@ -187,8 +197,8 @@ ncurses 6.4                       2023-12-02                     <STRONG><A HREF
 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
 <li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
 <ul>
-<li><a href="#h3-bkgdset">bkgdset</a></li>
-<li><a href="#h3-bkgd">bkgd</a></li>
+<li><a href="#h3-bkgd_-wbkgd">bkgd, wbkgd</a></li>
+<li><a href="#h3-bkgdset_-wbkgdset">bkgdset, wbkgdset</a></li>
 <li><a href="#h3-getbkgd">getbkgd</a></li>
 </ul>
 </li>
index 60ea015b8a48378dac5d576a93479c2527d8bf8b..604fe92ddcdeea5b177b5c20de2ca600865d4b52 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_bkgrnd.3x,v 1.34 2023/12/02 21:30:00 tom Exp @
+  * @Id: curs_bkgrnd.3x,v 1.35 2023/12/16 23:00:21 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>curs_bkgrnd 3x 2023-12-02 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_bkgrnd 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_bkgrnd 3x 2023-12-02 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_bkgrnd 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
+       The  <EM>background</EM>  of  a  <EM>curses</EM>  window   (in   the   library's   "wide"
+       configuration)  is  a  <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>  combining  a  set  of  attributes  (see
+       <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>) with a complex character called the <EM>blank</EM> <EM>character.</EM>
 
-</PRE><H3><a name="h3-bkgrndset">bkgrndset</a></H3><PRE>
-       The <STRONG>bkgrndset</STRONG> and <STRONG>wbkgrndset</STRONG> routines manipulate the background of  the
-       named  window.   The  window  background is a <STRONG>cchar_t</STRONG> consisting of any
-       combination of attributes (i.e., rendition) and a complex character.
+       The blank character is a spacing character that  populates  a  window's
+       character  cells  when  their  contents are erased without replacement.
+       The background's attributes are combined with all non-blank  characters
+       written  to  the  window,  as  with  the  <STRONG><A HREF="curs_add_wch.3x.html">wadd_wch(3x)</A></STRONG> and <STRONG><A HREF="curs_ins_wch.3x.html">wins_wch(3x)</A></STRONG>
+       families of functions.
 
-       <STRONG>o</STRONG>   The attribute part of the background is combined (OR'ed)  with  all
-           non-blank characters that are written into the window with <STRONG>waddch</STRONG>.
+       The blank character and  attributes  of  the  background  combine  with
+       characters  written  to  the window as described below.  The background
+       becomes a property of the character  and  moves  with  it  through  any
+       scrolling and insert/delete line/character operations.
 
-       <STRONG>o</STRONG>   Both  the  character  and  attribute  parts  of  the background are
-           combined with the blank characters.
+       To  the  extent possible on a given terminal, the attribute part of the
+       background is displayed as the graphic rendition of the  character  put
+       on the screen.
 
-       The background becomes a property of the character and moves  with  the
-       character   through  any  scrolling  and  insert/delete  line/character
-       operations.
 
-       To the extent possible on a particular terminal, the attribute part  of
-       the  background  is displayed as the graphic rendition of the character
-       put on the screen.
+</PRE><H3><a name="h3-bkgrnd_-wbkgrnd">bkgrnd, wbkgrnd</a></H3><PRE>
+       <STRONG>bkgrnd</STRONG>  and  <STRONG>wbkgrnd</STRONG>  set  the  background  property  of  <STRONG>stdscr</STRONG> or the
+       specified window and then apply this setting to every character cell in
+       that window.
 
+       <STRONG>o</STRONG>   The  rendition  of every character in the window changes to the new
+           background rendition.
 
-</PRE><H3><a name="h3-bkgrnd">bkgrnd</a></H3><PRE>
-       The <STRONG>bkgrnd</STRONG> and <STRONG>wbkgrnd</STRONG> functions set the  background  property  of  the
-       current  or  specified  window  and  then  apply  this setting to every
-       character position in that window:
+       <STRONG>o</STRONG>   Wherever the former background character appears, it changes to the
+           new background character.
 
-       <STRONG>o</STRONG>   The rendition of every character on the screen is  changed  to  the
-           new background rendition.
+       <EM>ncurses</EM>  updates  the rendition of each character cell by comparing the
+       character, non-color attributes, and colors.  The  library  applies  to
+       following  procedure  to  each cell in the window, whether or not it is
+       blank.
 
-       <STRONG>o</STRONG>   Wherever  the former background character appears, it is changed to
-           the new background character.
+       <STRONG>o</STRONG>   <EM>ncurses</EM> first compares  the  cell's  character  to  the  previously
+           specified  blank  character;  if they match, <EM>ncurses</EM> writes the new
+           blank character to the cell.
 
+       <STRONG>o</STRONG>   <EM>ncurses</EM> then checks if the cell uses color, that is, its color pair
+           value  is  nonzero.   If not, it simply replaces the attributes and
+           color  pair  in  the  cell  with  those  from  the  new  background
+           character.
 
-</PRE><H3><a name="h3-getbkgrnd">getbkgrnd</a></H3><PRE>
-       The <STRONG>getbkgrnd</STRONG> and <STRONG>wgetbkgrnd</STRONG> functions obtain the  given  or  specified
-       window's  current  background character and attribute pair and store it
-       via the <EM>wch</EM> pointer.
+       <STRONG>o</STRONG>   If  the  cell  uses color, and its background color matches that of
+           the current window background, <EM>ncurses</EM> removes attributes that  may
+           have  come  from the current background and adds those from the new
+           background.  It finishes by setting the cell's  background  to  use
+           the new window background color.
+
+       <STRONG>o</STRONG>   If  the  cell  uses  color, and its background color does not match
+           that of the current window background,  <EM>ncurses</EM>  updates  only  the
+           non-color  attributes, first removing those that may have come from
+           the current background, and then adding  attributes  from  the  new
+           background.
+
+       <EM>ncurses</EM>  treats  a  background  character  value of zero (0) as a blank
+       character.
+
+       If the terminal does not support  color,  or  if  color  has  not  been
+       initialized  with  <STRONG><A HREF="curs_color.3x.html">start_color(3x)</A></STRONG>,  <EM>ncurses</EM> ignores the new background
+       character's color attribute.
+
+
+</PRE><H3><a name="h3-bkgrndset_-wbkgrndset">bkgrndset, wbkgrndset</a></H3><PRE>
+       <STRONG>bkgrndset</STRONG> and <STRONG>wbkgrndset</STRONG> manipulate the background  of  the  applicable
+       window,  without updating the character cells as <STRONG>bkgrnd</STRONG> and <STRONG>wbkgrnd</STRONG> do;
+       only future writes reflect the updated background.
+
+
+</PRE><H3><a name="h3-getbkgrnd_-wgetbkgrnd">getbkgrnd, wgetbkgrnd</a></H3><PRE>
+       The <STRONG>getbkgrnd</STRONG> and <STRONG>wgetbkgrnd</STRONG> functions obtain the background  character
+       and  attribute  pair of <STRONG>stdscr</STRONG> or the specified window and store it via
+       the <EM>wch</EM> pointer.
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       The <STRONG>bkgrndset</STRONG> and <STRONG>wbkgrndset</STRONG> routines do not return a value.
+       <STRONG>bkgrndset</STRONG> and <STRONG>wbkgrndset</STRONG> do not return a value.
 
-       Upon successful completion, the other functions return <STRONG>OK</STRONG>.   Otherwise,
-       they return <STRONG>ERR</STRONG>:
+       The other functions return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG>  upon  success.   In
+       <EM>ncurses,</EM> failure occurs if
 
-       <STRONG>o</STRONG>   A null <EM>WINDOW</EM> pointer is treated as an error.
+       <STRONG>o</STRONG>   a <EM>WINDOW</EM> pointer <EM>win</EM> is null, or
 
-       <STRONG>o</STRONG>   A null <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> pointer is treated as an error.
+       <STRONG>o</STRONG>   a <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> pointer <EM>wch</EM> is null.
 
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
        <STRONG>bkgrnd</STRONG>, <STRONG>bkgrndset</STRONG>, and <STRONG>getbkgrnd</STRONG> may be available as macros.
 
-       X/Open Curses does not provide details on how the rendition is changed.
-       This implementation follows the approach used in SVr4 curses, which  is
-       explained in the manual page for <STRONG>wbkgd</STRONG>.
+       Unlike  their  counterparts in the non-"wide" configuration of <EM>ncurses,</EM>
+       <STRONG>getbkgrnd</STRONG> and <STRONG>wgetbkgrnd</STRONG> supply the background character and  attribute
+       in a modifiable <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> parameter, not as the return value.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       These functions are described in the XSI Curses standard, Issue 4.
+       X/Open  Curses,  Issue  4,  describes these functions.  It specifies no
+       error conditions for them.
+
+       X/Open Curses does not provide details of how the rendition is updated.
+       This implementation follows the approach used in SVr4 <EM>curses.</EM>
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
+       <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>  describes  the corresponding functions in the non-"wide"
+       configuration of <EM>ncurses.</EM>
+
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>, <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-12-02                   <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                   <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
@@ -140,9 +185,9 @@ ncurses 6.4                       2023-12-02                   <STRONG><A HREF="
 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
 <li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
 <ul>
-<li><a href="#h3-bkgrndset">bkgrndset</a></li>
-<li><a href="#h3-bkgrnd">bkgrnd</a></li>
-<li><a href="#h3-getbkgrnd">getbkgrnd</a></li>
+<li><a href="#h3-bkgrnd_-wbkgrnd">bkgrnd, wbkgrnd</a></li>
+<li><a href="#h3-bkgrndset_-wbkgrndset">bkgrndset, wbkgrndset</a></li>
+<li><a href="#h3-getbkgrnd_-wgetbkgrnd">getbkgrnd, wgetbkgrnd</a></li>
 </ul>
 </li>
 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
index 6ea93f52ca15a9ccc90ec0bddb2b91d08715afe9..e03b5f10efff41359bd1eac773c9f636468cb397 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_border.3x,v 1.43 2023/11/25 11:31:27 tom Exp @
+  * @Id: curs_border.3x,v 1.44 2023/12/16 21:09:11 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>curs_border 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_border 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_border 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_border 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
 
 
 
 
-ncurses 6.4                       2023-11-25                   <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                   <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 31939b0632c92f0010c9421de6e1ef306c6d43ee..359c944121dc5c710b7bc6aca0f68477dceacf2d 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_clear.3x,v 1.40 2023/11/25 11:31:27 tom Exp @
+  * @Id: curs_clear.3x,v 1.41 2023/12/16 21:09:11 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>curs_clear 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_clear 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_clear 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_clear 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
        These functions are described in the XSI Curses standard, Issue 4.
 
-       The SVr4.0 manual says  that  these  functions  could  return  "a  non-
-       negative  integer if <STRONG><A HREF="curs_outopts.3x.html">immedok(3x)</A></STRONG> is set", referring to the return-value
-       of <STRONG>wrefresh</STRONG>.  In that implementation, <STRONG>wrefresh</STRONG> would return a count  of
-       the number of characters written to the terminal.
+       The SVr4.0 manual says that these functions could  return  "or  a  non-
+       negative  integer  if <STRONG>immedok</STRONG> is set", referring to the return-value of
+       <STRONG>wrefresh</STRONG>.  In that implementation, <STRONG>wrefresh</STRONG> would return a count of the
+       number of characters written to the terminal.
 
        Some  historic  curses implementations had, as an undocumented feature,
        the  ability  to  do  the  equivalent  of  <STRONG>clearok(...,</STRONG>  <STRONG>1)</STRONG>  by  saying
-       <STRONG>touchwin(stdscr)</STRONG> or <STRONG>clear(stdscr)</STRONG>.  This will not work under ncurses.
+       <STRONG>touchwin(stdscr)</STRONG> or <STRONG>clear(stdscr)</STRONG>.  This will not work under <EM>ncurses</EM>.
 
        This  implementation,  and  others  such  as  Solaris, sets the current
        position to 0,0 after erasing via <STRONG>werase</STRONG> and <STRONG>wclear</STRONG>.  That fact is  not
 
 
 
-ncurses 6.4                       2023-11-25                    <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                    <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index d16373ec8c420a7ff7a958ba517ae0a69c1b4f27..df4b22c765ed02f9b0fe4a3ad5dc722d4f0742bb 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_color.3x,v 1.92 2023/11/25 17:36:51 tom Exp @
+  * @Id: curs_color.3x,v 1.93 2023/12/16 21:07:24 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>curs_color 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_color 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_color 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_color 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
 
@@ -50,7 +50,9 @@
        <STRONG>start_color</STRONG>,   <STRONG>has_colors</STRONG>,   <STRONG>can_change_color</STRONG>,  <STRONG>init_pair</STRONG>,  <STRONG>init_color</STRONG>,
        <STRONG>init_extended_pair</STRONG>, <STRONG>init_extended_color</STRONG>,  <STRONG>color_content</STRONG>,  <STRONG>pair_content</STRONG>,
        <STRONG>extended_color_content</STRONG>,    <STRONG>extended_pair_content</STRONG>,    <STRONG>reset_color_pairs</STRONG>,
-       <STRONG>COLOR_PAIR</STRONG>, <STRONG>PAIR_NUMBER</STRONG> - manipulate terminal colors with <EM>curses</EM>
+       <STRONG>COLOR_PAIR</STRONG>, <STRONG>PAIR_NUMBER</STRONG>, <STRONG>COLORS</STRONG>, <STRONG>COLOR_PAIRS</STRONG>,  <STRONG>COLOR_BLACK</STRONG>,  <STRONG>COLOR_RED</STRONG>,
+       <STRONG>COLOR_GREEN</STRONG>,   <STRONG>COLOR_YELLOW</STRONG>,   <STRONG>COLOR_BLUE</STRONG>,  <STRONG>COLOR_MAGENTA</STRONG>,  <STRONG>COLOR_CYAN</STRONG>,
+       <STRONG>COLOR_WHITE</STRONG> - manipulate terminal colors with <EM>curses</EM>
 
 
 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
@@ -77,7 +79,7 @@
        <STRONG>void</STRONG> <STRONG>reset_color_pairs(void);</STRONG>
 
        <STRONG>int</STRONG> <STRONG>COLOR_PAIR(int</STRONG> <EM>n</EM><STRONG>);</STRONG>
-       <STRONG>PAIR_NUMBER(</STRONG><EM>attrs</EM><STRONG>);</STRONG>
+       <STRONG>PAIR_NUMBER(int</STRONG> <EM>attr</EM><STRONG>);</STRONG>
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
 </PRE><H3><a name="h3-Overview">Overview</a></H3><PRE>
        <EM>curses</EM> supports color attributes on terminals with that capability.  To
        use  these  routines  <STRONG>start_color</STRONG>  must  be called, usually right after
-       <STRONG>initscr</STRONG>.  Colors are always used in pairs (referred to as color-pairs).
-       A  color-pair  consists  of  a  foreground color (for characters) and a
+       <STRONG>initscr</STRONG>.  Colors are always used in pairs (referred to as color pairs).
+       A  color  pair  consists  of  a foreground color (for characters) and a
        background color (for the blank  field  on  which  the  characters  are
-       displayed).   A  programmer  initializes  a color-pair with the routine
+       displayed).   A  programmer  initializes  a color pair with the routine
        <STRONG>init_pair</STRONG>.  After it has been initialized, <STRONG>COLOR_PAIR</STRONG>(<EM>n</EM>) can be used to
        convert the pair to a video attribute.
 
        the programmer can change the colors.  The routine <STRONG>color_content</STRONG> allows
        a programmer to extract the amounts of red, green, and blue  components
        in  an initialized color.  The routine <STRONG>pair_content</STRONG> allows a programmer
-       to find out how a given color-pair is currently defined.
+       to find out how a given color pair is currently defined.
 
 
 </PRE><H3><a name="h3-Color-Rendering">Color Rendering</a></H3><PRE>
        routine right after <STRONG>initscr</STRONG>.  <STRONG>start_color</STRONG> does this:
 
        <STRONG>o</STRONG>   It   initializes  two  global  variables,  <STRONG>COLORS</STRONG>  and  <STRONG>COLOR_PAIRS</STRONG>
-           (respectively defining the maximum number of colors and color-pairs
+           (respectively defining the maximum number of colors and color pairs
            the terminal can support).
 
        <STRONG>o</STRONG>   It  initializes  the special color pair <STRONG>0</STRONG> to the default foreground
 
 
 </PRE><H3><a name="h3-init_pair">init_pair</a></H3><PRE>
-       The <STRONG>init_pair</STRONG> routine changes the definition of a color-pair.  It takes
-       three arguments: the number  of  the  color-pair  to  be  changed,  the
+       The <STRONG>init_pair</STRONG> routine changes the definition of a color pair.  It takes
+       three arguments: the number of  the  color  pair  to  be  changed,  the
        foreground color number, and the background color number.  For portable
        applications:
 
 
        <STRONG>o</STRONG>   The second and third arguments must be valid color values.
 
-       If  the  color-pair was previously initialized, the screen is refreshed
-       and  all  occurrences  of  that  color-pair  are  changed  to  the  new
+       If  the  color pair was previously initialized, the screen is refreshed
+       and all  occurrences  of  that  color  pair  are  changed  to  the  new
        definition.
 
-       As  an  extension,  ncurses  allows  you  to  set  color pair <STRONG>0</STRONG> via the
+       As  an  extension,  <EM>ncurses</EM>  allows  you  to  set  color pair <STRONG>0</STRONG> via the
        <STRONG><A HREF="default_colors.3x.html">assume_default_colors(3x)</A></STRONG> routine, or to specify  the  use  of  default
        colors (color number <STRONG>-1</STRONG>) if you first invoke the <STRONG><A HREF="default_colors.3x.html">use_default_colors(3x)</A></STRONG>
        routine.
 
 </PRE><H3><a name="h3-init_extended_pair">init_extended_pair</a></H3><PRE>
        Because <STRONG>init_pair</STRONG> uses signed <STRONG>short</STRONG>s for its  parameters,  that  limits
-       color-pairs   and  color-values  to  32767  on  modern  hardware.   The
-       extension <STRONG>init_extended_pair</STRONG> uses <STRONG>int</STRONG>s for the  color-pair  and  color-
+       color  pairs  and  color-values  to  32767  on  modern  hardware.   The
+       extension <STRONG>init_extended_pair</STRONG> uses <STRONG>int</STRONG>s for the color  pair  and  color-
        value, allowing a larger number of colors to be supported.
 
 
 
 </PRE><H3><a name="h3-pair_content">pair_content</a></H3><PRE>
        The <STRONG>pair_content</STRONG> routine allows programmers to find out what  colors  a
-       given  color-pair consists of.  It requires three arguments: the color-
+       given  color  pair consists of.  It requires three arguments: the color
        pair number, and two addresses of <STRONG>short</STRONG>s for storing the foreground and
        the background color numbers.
 
 
 </PRE><H3><a name="h3-extended_pair_content">extended_pair_content</a></H3><PRE>
        Because <STRONG>pair_content</STRONG> uses signed <STRONG>short</STRONG>s for its parameters, that limits
-       color-pair and color-values to 32767 on modern hardware.  The extension
+       color pair and color-values to 32767 on modern hardware.  The extension
        <STRONG>extended_pair_content</STRONG> uses <STRONG>int</STRONG>s for the color pair  and  for  returning
        the  foreground  and  background  colors,  allowing  a larger number of
        colors to be supported.
 
 
 </PRE><H3><a name="h3-reset_color_pairs">reset_color_pairs</a></H3><PRE>
-       The extension <STRONG>reset_color_pairs</STRONG> tells ncurses to  discard  all  of  the
-       color-pair  information  which was set with <STRONG>init_pair</STRONG>.  It also touches
+       The extension <STRONG>reset_color_pairs</STRONG> tells <EM>ncurses</EM> to  discard  all  of  the
+       color  pair  information which was set with <STRONG>init_pair</STRONG>.  It also touches
        the current- and standard-screens, allowing an  application  to  switch
        color palettes rapidly.
 
 
-</PRE><H3><a name="h3-PAIR_NUMBER">PAIR_NUMBER</a></H3><PRE>
-       <STRONG>PAIR_NUMBER(</STRONG><EM>attrs</EM>)  extracts  the  color value from its <EM>attrs</EM> parameter
-       and returns it as a color pair number.
+</PRE><H3><a name="h3-COLOR_PAIR">COLOR_PAIR</a></H3><PRE>
+       <STRONG>COLOR_PAIR(</STRONG><EM>n</EM><STRONG>)</STRONG> converts a color pair number to an attribute.  Attributes
+       can hold color pairs in the range 0 to 255.  If you need a  color  pair
+       larger  than  that, you must use functions such as <STRONG>attr_set</STRONG> (which pass
+       the color  pair  as  a  separate  parameter)  rather  than  the  legacy
+       functions such as <STRONG>attrset</STRONG>.
 
 
-</PRE><H3><a name="h3-COLOR_PAIR">COLOR_PAIR</a></H3><PRE>
-       Its inverse <STRONG>COLOR_PAIR(</STRONG><EM>n</EM><STRONG>)</STRONG> converts a color pair number to an attribute.
-       Attributes  can  hold color pairs in the range 0 to 255.  If you need a
-       color pair larger than that, you must use functions  such  as  <STRONG>attr_set</STRONG>
-       (which  pass  the  color  pair as a separate parameter) rather than the
-       legacy functions such as <STRONG>attrset</STRONG>.
+</PRE><H3><a name="h3-PAIR_NUMBER">PAIR_NUMBER</a></H3><PRE>
+       <STRONG>PAIR_NUMBER(</STRONG><EM>attr</EM>)   extracts   the  color  information  from  its  <EM>attr</EM>
+       parameter and returns it as a color pair  number;  it  is  the  inverse
+       operation of <STRONG>COLOR_PAIR</STRONG>.
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
        The routines <STRONG>can_change_color</STRONG> and <STRONG>has_colors</STRONG> return <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>.
 
-       All other routines return the integer <STRONG>ERR</STRONG> upon failure and an <STRONG>OK</STRONG>  (SVr4
-       specifies  only  "an  integer  value  other  than <STRONG>ERR</STRONG>") upon successful
+       All  other routines return the integer <STRONG>ERR</STRONG> upon failure and an <STRONG>OK</STRONG> (SVr4
+       specifies only "an integer  value  other  than  <STRONG>ERR</STRONG>")  upon  successful
        completion.
 
-       X/Open defines no error conditions.   SVr4  does  document  some  error
+       X/Open  defines  no  error  conditions.   SVr4 does document some error
        conditions which apply in general:
 
        <STRONG>o</STRONG>   This implementation will return <STRONG>ERR</STRONG> on attempts to use color values
-           outside the range <STRONG>0</STRONG> to <STRONG>COLORS</STRONG>-1  (except  for  the  default  colors
-           extension),   or   use   color   pairs   outside  the  range  <STRONG>0</STRONG>  to
+           outside  the  range  <STRONG>0</STRONG>  to  <STRONG>COLORS</STRONG>-1 (except for the default colors
+           extension),  or  use  color  pairs   outside   the   range   <STRONG>0</STRONG>   to
            <STRONG>COLOR_PAIRS-1</STRONG>.
 
            Color values used in <STRONG>init_color</STRONG> must be in the range <STRONG>0</STRONG> to <STRONG>1000</STRONG>.
 
-           An error is returned from all functions if  the  terminal  has  not
+           An  error  is  returned  from all functions if the terminal has not
            been initialized.
 
-           An  error is returned from secondary functions such as <STRONG>init_pair</STRONG> if
+           An error is returned from secondary functions such as <STRONG>init_pair</STRONG>  if
            <STRONG>start_color</STRONG> was not called.
 
-       <STRONG>o</STRONG>   SVr4  does  much  the  same,  except  that  it  returns  <STRONG>ERR</STRONG>   from
-           <STRONG>pair_content</STRONG>  if  the pair was not initialized using <STRONG>init_pairs</STRONG> and
-           it returns <STRONG>ERR</STRONG> from <STRONG>color_content</STRONG> if the terminal does not  support
+       <STRONG>o</STRONG>   SVr4   does  much  the  same,  except  that  it  returns  <STRONG>ERR</STRONG>  from
+           <STRONG>pair_content</STRONG> if the pair was not initialized using  <STRONG>init_pairs</STRONG>  and
+           it  returns <STRONG>ERR</STRONG> from <STRONG>color_content</STRONG> if the terminal does not support
            changing colors.
 
            This implementation does not return <STRONG>ERR</STRONG> for either case.
 
           <STRONG>init_color</STRONG>
                returns an error if the terminal does not support this feature,
-               e.g., if the <STRONG>initialize_color</STRONG> capability  is  absent  from  the
+               e.g.,  if  the  <STRONG>initialize_color</STRONG>  capability is absent from the
                terminal description.
 
           <STRONG>start_color</STRONG>
 
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
-       In  the  <EM>ncurses</EM>  implementation,  there is a separate color activation
-       flag, color palette, color  pairs  table,  and  associated  <STRONG>COLORS</STRONG>  and
-       <STRONG>COLOR_PAIRS</STRONG>  counts  for  each  screen;  the  <STRONG>start_color</STRONG> function only
-       affects the current screen.   The  SVr4/XSI  interface  is  not  really
-       designed  with  this  in mind, and historical implementations may use a
+       In the <EM>ncurses</EM> implementation, there is  a  separate  color  activation
+       flag,  color  palette,  color  pairs  table,  and associated <STRONG>COLORS</STRONG> and
+       <STRONG>COLOR_PAIRS</STRONG> counts for  each  screen;  the  <STRONG>start_color</STRONG>  function  only
+       affects  the  current  screen.   The  SVr4/XSI  interface is not really
+       designed with this in mind, and historical implementations  may  use  a
        single shared color palette.
 
-       Setting an implicit background color via  a  color  pair  affects  only
-       character  cells  that  a character write operation explicitly touches.
-       To change the background color used when parts of a window are  blanked
+       Setting  an  implicit  background  color  via a color pair affects only
+       character cells that a character write  operation  explicitly  touches.
+       To  change the background color used when parts of a window are blanked
        by erasing or scrolling operations, see <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>.
 
-       Several  caveats  apply  on  older x86 machines (e.g., i386, i486) with
+       Several caveats apply on older x86 machines  (e.g.,  i386,  i486)  with
        VGA-compatible graphics:
 
-       <STRONG>o</STRONG>   COLOR_YELLOW is actually brown.  To get  yellow,  use  COLOR_YELLOW
+       <STRONG>o</STRONG>   COLOR_YELLOW  is  actually  brown.  To get yellow, use COLOR_YELLOW
            combined with the <STRONG>A_BOLD</STRONG> attribute.
 
-       <STRONG>o</STRONG>   The  A_BLINK  attribute should in theory cause the background to go
+       <STRONG>o</STRONG>   The A_BLINK attribute should in theory cause the background  to  go
            bright.  This often fails to work, and even some cards for which it
-           mostly  works  (such  as the Paradise and compatibles) do the wrong
-           thing when you try to set a bright "yellow" background (you  get  a
+           mostly works (such as the Paradise and compatibles)  do  the  wrong
+           thing  when  you try to set a bright "yellow" background (you get a
            blinking yellow foreground instead).
 
        <STRONG>o</STRONG>   Color RGB values are not settable.
 
 
 </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
-       The  functions  marked as extensions were designed for <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>, and
-       are not found in SVr4 curses, 4.4BSD  curses,  or  any  other  previous
+       The functions marked as extensions were designed for  <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>,  and
+       are  not  found  in  SVr4  curses, 4.4BSD curses, or any other previous
        version of curses.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       This  implementation satisfies XSI Curses's minimum maximums for <STRONG>COLORS</STRONG>
+       This implementation satisfies XSI Curses's minimum maximums for  <STRONG>COLORS</STRONG>
        and <STRONG>COLOR_PAIRS</STRONG>.
 
        The  <STRONG>init_pair</STRONG>  routine  accepts  negative  values  of  foreground  and
-       background  color  to support the <STRONG><A HREF="default_colors.3x.html">use_default_colors(3x)</A></STRONG> extension, but
+       background color to support the <STRONG><A HREF="default_colors.3x.html">use_default_colors(3x)</A></STRONG>  extension,  but
        only if that routine has been first invoked.
 
        The assumption that <STRONG>COLOR_BLACK</STRONG> is the default background color for all
-       terminals   can   be   modified   using  the  <STRONG><A HREF="default_colors.3x.html">assume_default_colors(3x)</A></STRONG>
+       terminals  can  be   modified   using   the   <STRONG><A HREF="default_colors.3x.html">assume_default_colors(3x)</A></STRONG>
        extension.
 
-       This implementation checks the pointers, e.g., for the values  returned
-       by  <STRONG>color_content</STRONG>  and  <STRONG>pair_content</STRONG>,  and will treat those as optional
+       This  implementation checks the pointers, e.g., for the values returned
+       by <STRONG>color_content</STRONG> and <STRONG>pair_content</STRONG>, and will  treat  those  as  optional
        parameters when null.
 
-       X/Open Curses does not specify a limit for the  number  of  colors  and
+       X/Open  Curses  does  not  specify a limit for the number of colors and
        color pairs which a terminal can support.  However, in its use of <STRONG>short</STRONG>
-       for the parameters, it carries over SVr4's  implementation  detail  for
+       for  the  parameters,  it carries over SVr4's implementation detail for
        the compiled terminfo database, which uses signed 16-bit numbers.  This
-       implementation provides extended versions of those functions which  use
-       <STRONG>short</STRONG>  parameters, allowing applications to use larger color- and pair-
+       implementation  provides extended versions of those functions which use
+       <STRONG>short</STRONG> parameters, allowing applications to use larger color- and  pair-
        numbers.
 
-       The <STRONG>reset_color_pairs</STRONG> function is an extension of ncurses.
+       The <STRONG>reset_color_pairs</STRONG> function is an extension of <EM>ncurses</EM>.
 
 
 </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
        SVr3.2 introduced color support to curses in 1987.
 
-       SVr4 made internal changes, e.g., moving  the  storage  for  the  color
+       SVr4  made  internal  changes,  e.g.,  moving the storage for the color
        state  from  <STRONG>SP</STRONG>  (the  <STRONG>SCREEN</STRONG>  structure)  to  <STRONG>cur_term</STRONG>  (the  <STRONG>TERMINAL</STRONG>
        structure), but provided the same set of library functions.
 
-       SVr4 curses limits the number of color pairs  to  64,  reserving  color
-       pair  zero  (0)  as the terminal's initial uncolored state.  This limit
-       arises because the color pair information is a bitfield in  the  <STRONG>chtype</STRONG>
+       SVr4  curses  limits  the  number of color pairs to 64, reserving color
+       pair zero (0) as the terminal's initial uncolored  state.   This  limit
+       arises  because  the color pair information is a bitfield in the <STRONG>chtype</STRONG>
        data type (denoted by <STRONG>A_COLOR</STRONG>).
 
        Other implementations of curses had different limits:
            changing <STRONG>chtype</STRONG> from 16-bits to 32-bits.
 
        <STRONG>o</STRONG>   X/Open Curses (1992-present) added a new structure <STRONG>cchar_t</STRONG> to store
-           the character, attributes and color-pair values, allowing increased
-           range  of  color-pairs.   Both  color-pairs and color-values used a
+           the character, attributes and color pair values, allowing increased
+           range of color pairs.  Both color pairs  and  color-values  used  a
            signed <STRONG>short</STRONG>, limiting values to 15 bits.
 
-       <STRONG>o</STRONG>   ncurses (1992-present)  uses  eight  bits  for  <STRONG>A_COLOR</STRONG>  in  <STRONG>chtype</STRONG>
+       <STRONG>o</STRONG>   <EM>ncurses</EM>  (1992-present)  uses  eight  bits  for  <STRONG>A_COLOR</STRONG>  in <STRONG>chtype</STRONG>
            values.
 
-           Version  5.3  provided  a wide-character interface (2002), but left
-           color-pairs as part of the attributes-field.
+           Version 5.3 provided a wide-character interface  (2002),  but  left
+           color pairs as part of the attributes-field.
 
-           Since version 6 (2015), ncurses uses a separate <STRONG>int</STRONG> for color-pairs
-           in the <STRONG>cchar_t</STRONG> values.  When those color-pair values fit in 8 bits,
-           ncurses allows color-pairs to  be  manipulated  via  the  functions
+           Since version 6 (2015), ncurses uses a separate <STRONG>int</STRONG> for color pairs
+           in the <STRONG>cchar_t</STRONG> values.  When those color pair values fit in 8 bits,
+           ncurses  allows  color  pairs  to  be manipulated via the functions
            using <STRONG>chtype</STRONG> values.
 
-       <STRONG>o</STRONG>   NetBSD  curses  used  6  bits  from  2000  (when  colors were first
-           supported) until 2004.  At that point, NetBSD  changed  to  use  10
-           bits.   As  of  2021,  that size is unchanged.  Like ncurses before
-           version 6, the NetBSD  color-pair  information  is  stored  in  the
-           attributes  field of <STRONG>cchar_t</STRONG>, limiting the number of color-pairs by
+       <STRONG>o</STRONG>   NetBSD curses used  6  bits  from  2000  (when  colors  were  first
+           supported)  until  2004.   At  that point, NetBSD changed to use 10
+           bits.  As of 2021, that size is  unchanged.   Like  <EM>ncurses</EM>  before
+           version  6,  the  NetBSD  color  pair  information is stored in the
+           attributes field of <STRONG>cchar_t</STRONG>, limiting the number of color pairs  by
            the size of the bitfield.
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,   <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>,   <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,    <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,    <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>,   <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,   <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
        <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-11-25                    <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                    <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
@@ -556,8 +559,8 @@ ncurses 6.4                       2023-11-25                    <STRONG><A HREF=
 <li><a href="#h3-pair_content">pair_content</a></li>
 <li><a href="#h3-extended_pair_content">extended_pair_content</a></li>
 <li><a href="#h3-reset_color_pairs">reset_color_pairs</a></li>
-<li><a href="#h3-PAIR_NUMBER">PAIR_NUMBER</a></li>
 <li><a href="#h3-COLOR_PAIR">COLOR_PAIR</a></li>
+<li><a href="#h3-PAIR_NUMBER">PAIR_NUMBER</a></li>
 </ul>
 </li>
 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
index 07f5bc2a51da2f11b59a66a272ea35f1a59c8aaf..46b96d62bbe2bb0949b0a756577ca4f3f54dbf14 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_delch.3x,v 1.29 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_delch.3x,v 1.30 2023/12/16 21:09:11 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>curs_delch 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_delch 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_delch 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_delch 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
 
@@ -94,7 +94,7 @@
 
 
 
-ncurses 6.4                       2023-10-07                    <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                    <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 20b220cb994f57a4080e25bbb6c191094ca80bd4..2d33ccaf85f639c5c7730f0a28c05b7c605cab5f 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_deleteln.3x,v 1.33 2023/11/25 14:08:05 tom Exp @
+  * @Id: curs_deleteln.3x,v 1.34 2023/12/16 21:33:34 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>curs_deleteln 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_deleteln 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_deleteln 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_deleteln 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
 
@@ -81,7 +81,7 @@
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       All routines return the integer  <STRONG>ERR</STRONG>  upon  failure  and  an  <STRONG>OK</STRONG>  (SVr4
+       These routines return the integer <STRONG>ERR</STRONG> upon  failure  and  an  <STRONG>OK</STRONG>  (SVr4
        specifies  only  "an  integer  value  other  than <STRONG>ERR</STRONG>") upon successful
        completion.
 
 
 
 
-ncurses 6.4                       2023-11-25                 <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                 <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 46c1e4295e67bee719674885aa71d6c56c1893fa..8dc4cf7594347a972d33051914055666a2d2ab0e 100644 (file)
   * authorization.                                                           *
   ****************************************************************************
   * Author: Thomas E. Dickey 1999-on
-  * @Id: curs_extend.3x,v 1.42 2023/11/25 14:26:30 tom Exp @
+  * @Id: curs_extend.3x,v 1.43 2023/12/16 20:32:22 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>curs_extend 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_extend 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_extend 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_extend 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>
 
@@ -89,7 +89,7 @@
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       These  routines  are  specific  to ncurses.  They were not supported on
+       These  routines  are  specific  to <EM>ncurses</EM>.  They were not supported on
        Version 7, BSD or System V implementations.  It is recommended that any
        code depending on them be conditioned using NCURSES_VERSION.
 
 
 
 
-ncurses 6.4                       2023-11-25                   <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                   <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 81382134f280bd01b5fdf4de1767dc339e045c67..1dd9a9c23bcd954975dae902aa365e71aeb62a70 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_get_wstr.3x,v 1.41 2023/11/25 14:29:54 tom Exp @
+  * @Id: curs_get_wstr.3x,v 1.42 2023/12/16 20:32:22 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>curs_get_wstr 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_get_wstr 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_get_wstr 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_get_wstr 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
 
        X/Open  Curses  does  not  specify  what  happens  if  the  length <EM>n</EM> is
        negative.
 
-       <STRONG>o</STRONG>   For analogy with <STRONG>wgetnstr</STRONG>, ncurses  6.2  uses  a  limit  (based  on
+       <STRONG>o</STRONG>   For analogy with <STRONG>wgetnstr</STRONG>, <EM>ncurses</EM>  6.2  uses  a  limit  (based  on
            <STRONG>LINE_MAX</STRONG>).
 
        <STRONG>o</STRONG>   Some  other  implementations (such as Solaris xcurses) do the same,
            while others (PDCurses) do not allow this.
 
-       <STRONG>o</STRONG>   NetBSD 7 curses imitates ncurses 6.1 in this regard, treating a  <STRONG>-1</STRONG>
+       <STRONG>o</STRONG>   NetBSD 7 curses imitates <EM>ncurses</EM> 6.1 in this regard, treating a  <STRONG>-1</STRONG>
            as an indefinite number of characters.
 
 
 
 
 
-ncurses 6.4                       2023-11-25                 <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                 <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 08eb5e09e368390b6ef51c94b0b81aceb62f7715..29c0b5c04a719676bcf0dad4fd481b51894df27b 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_getcchar.3x,v 1.42 2023/11/25 14:30:18 tom Exp @
+  * @Id: curs_getcchar.3x,v 1.43 2023/12/16 21:07:24 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>curs_getcchar 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_getcchar 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_getcchar 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_getcchar 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
 
@@ -80,7 +80,7 @@
 
        <STRONG>o</STRONG>   Stores the character attributes in the location pointed to by <EM>attrs</EM>
 
-       <STRONG>o</STRONG>   Stores the color-pair in the location pointed to by <EM>color</EM><STRONG>_</STRONG><EM>pair</EM>
+       <STRONG>o</STRONG>   Stores the color pair in the location pointed to by <EM>color</EM><STRONG>_</STRONG><EM>pair</EM>
 
        <STRONG>o</STRONG>   Stores the wide-character string, characters referenced  by  <EM>wcval</EM>,
            into the array pointed to by <EM>wch</EM>.
            L'\0' terminated, contain at most one spacing character, which must
            be the first.
 
-           Up to <STRONG>CCHARW_MAX</STRONG>-1 nonspacing characters  may  follow.   Additional
-           nonspacing characters are ignored.
+           Up to <STRONG>CCHARW_MAX</STRONG>-1 non-spacing characters may  follow.   Additional
+           non-spacing characters are ignored.
 
            The string may contain a single control character instead.  In that
-           case, no nonspacing characters are allowed.
+           case, no non-spacing characters are allowed.
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
 </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
        X/Open  Curses  documents the <EM>opts</EM> argument as reserved for future use,
        saying that it must be null.  This implementation uses  that  parameter
-       in ABI 6 for the functions which have a color-pair parameter to support
+       in ABI 6 for the functions which have a color pair parameter to support
        extended color pairs:
 
        <STRONG>o</STRONG>   For  functions  which modify the color, e.g., <STRONG>setcchar</STRONG>, if <EM>opts</EM>  is
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       The  <STRONG>CCHARW_MAX</STRONG>  symbol is specific to ncurses.  X/Open Curses does not
+       The  <STRONG>CCHARW_MAX</STRONG>  symbol is specific to <EM>ncurses</EM>.  X/Open Curses does not
        provide details for the layout of the <STRONG>cchar_t</STRONG> structure.  It tells what
        data are stored in it:
 
 
 
 
-ncurses 6.4                       2023-11-25                 <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                 <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 855dd70039fa7841cdf1ba2c5902771074658f16..7246a2bd5fb3528e62ba7d393e1e233b54d4f0d4 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_getch.3x,v 1.75 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_getch.3x,v 1.76 2023/12/16 21:01:28 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>curs_getch 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_getch 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_getch 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_getch 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
 
@@ -57,7 +57,6 @@
 
        <STRONG>int</STRONG> <STRONG>getch(void);</STRONG>
        <STRONG>int</STRONG> <STRONG>wgetch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
-
        <STRONG>int</STRONG> <STRONG>mvgetch(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
        <STRONG>int</STRONG> <STRONG>mvwgetch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
 
        experience  a  delay between the time a user presses the escape key and
        the escape is returned to the program.
 
-       In <STRONG>ncurses</STRONG>, the timer normally expires after the value in <STRONG>ESCDELAY</STRONG> (see
+       In <EM>ncurses</EM>, the timer normally expires after the value in <STRONG>ESCDELAY</STRONG> (see
        <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>).   If <STRONG>notimeout</STRONG> is <STRONG>TRUE</STRONG>, the timer does not expire;
        it is an infinite (or very large) value.  Because function keys usually
        begin  with  an  escape  character,  the terminal may appear to hang in
               KEY_ENTER       Enter or send
               KEY_SRESET      Soft (partial) reset
               KEY_RESET       Reset or hard reset
-
               KEY_PRINT       Print or copy
+
               KEY_LL          Home down or bottom (lower left)
               KEY_A1          Upper left of keypad
               KEY_A3          Upper right of keypad
 
        <STRONG>o</STRONG>   <STRONG>KEY_MOUSE</STRONG>  is returned for mouse-events (see <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>).  This
            code relies upon  whether  or  not  <STRONG><A HREF="curs_inopts.3x.html">keypad(3x)</A></STRONG>  has  been  enabled,
-           because  (e.g.,  with  <STRONG>xterm(1)</STRONG> mouse prototocol) ncurses must read
+           because  (e.g.,  with  <STRONG>xterm(1)</STRONG> mouse prototocol) <EM>ncurses</EM> must read
            escape sequences, just like a function key.
 
 
        <STRONG>KEY_ENTER</STRONG>  versus  control/M,  <STRONG>KEY_BACKSPACE</STRONG>  versus  control/H.   Some
        curses implementations may differ according to whether they treat these
        control  keys  specially (and ignore the terminfo), or use the terminfo
-       definitions.  <STRONG>Ncurses</STRONG> uses the terminfo definition.  If  it  says  that
+       definitions.  <EM>ncurses</EM> uses the terminfo definition.  If  it  says  that
        <STRONG>KEY_ENTER</STRONG>  is  control/M,  <STRONG>getch</STRONG>  will  return <STRONG>KEY_ENTER</STRONG> when you press
        control/M.
 
 
        <STRONG>KEY_MOUSE</STRONG> is mentioned in XSI Curses, along with a few related terminfo
        capabilities,  but  no  higher-level  functions  use  the feature.  The
-       implementation in ncurses is an extension.
+       implementation in <EM>ncurses</EM> is an extension.
 
-       <STRONG>KEY_RESIZE</STRONG> is an  extension  first  implemented  for  ncurses.   NetBSD
+       <STRONG>KEY_RESIZE</STRONG> is an  extension  first  implemented  for  <EM>ncurses</EM>.   NetBSD
        curses later added this extension.
 
        Programmers  concerned  about portability should be prepared for either
        receipt  interrupts <STRONG>getch</STRONG> and causes it to return <STRONG>ERR</STRONG> with <STRONG>errno</STRONG> set to
        <STRONG>EINTR</STRONG>.
 
-       The <STRONG>has_key</STRONG> function is unique to <STRONG>ncurses</STRONG>.  We recommend that any  code
+       The <STRONG>has_key</STRONG> function is unique to <EM>ncurses</EM>.  We recommend that any  code
        using it be conditionalized on the <STRONG>NCURSES_VERSION</STRONG> feature macro.
 
 
 
 
 
-ncurses 6.4                       2023-10-07                    <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                    <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 9567bb3a789fae2b6d6db285b040ca851f0b852b..d74d8317da4c57084b5972e186a7adc4567638c9 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_getstr.3x,v 1.51 2023/11/25 14:29:54 tom Exp @
+  * @Id: curs_getstr.3x,v 1.52 2023/12/16 20:32:22 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>curs_getstr 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_getstr 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_getstr 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_getstr 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
 
        "read at most <EM>n</EM>-1 bytes" to allow for the terminating NUL.  As of 2018,
        some implementations count it, some do not:
 
-       <STRONG>o</STRONG>   ncurses 6.1 and PDCurses do not count the NUL in the  given  limit,
+       <STRONG>o</STRONG>   <EM>ncurses</EM> 6.1 and PDCurses do not count the NUL in the  given  limit,
            while
 
        <STRONG>o</STRONG>   Solaris SVr4 and NetBSD curses count the NUL as part of the limit.
            A comment in NetBSD's source code states that this is specified  in
            SUSv2.
 
-       <STRONG>o</STRONG>   ncurses  (before  6.2)  assumes  no particular limit for the result
+       <STRONG>o</STRONG>   <EM>ncurses</EM>  (before  6.2)  assumes  no particular limit for the result
            from <STRONG>wgetstr</STRONG>, and treats the <EM>n</EM>  parameter  of  <STRONG>wgetnstr</STRONG>  like  SVr4
            curses.
 
-       <STRONG>o</STRONG>   ncurses  6.2  uses  <STRONG>LINE_MAX</STRONG>,  or a larger (system-dependent) value
+       <STRONG>o</STRONG>   <EM>ncurses</EM>  6.2  uses  <STRONG>LINE_MAX</STRONG>,  or a larger (system-dependent) value
            which the <STRONG>sysconf</STRONG> function may provide.   If  neither  <STRONG>LINE_MAX</STRONG>  or
-           <STRONG>sysconf</STRONG>  is available, ncurses uses the POSIX value for <STRONG>LINE_MAX</STRONG> (a
+           <STRONG>sysconf</STRONG>  is available, <EM>ncurses</EM> uses the POSIX value for <STRONG>LINE_MAX</STRONG> (a
            2048 byte limit).  In either case,  it  reserves  a  byte  for  the
            terminating NUL.
 
            caller into account when deciding whether to handle echoing  within
            <STRONG>getnstr</STRONG> or as a side-effect of the <STRONG>getch</STRONG> calls.
 
-       <STRONG>o</STRONG>   The original ncurses (as <EM>pcurses</EM> in 1986) set <STRONG>noraw</STRONG> and <STRONG>cbreak</STRONG> when
+       <STRONG>o</STRONG>   The original <EM>ncurses</EM> (as <EM>pcurses</EM> in 1986) set <STRONG>noraw</STRONG> and <STRONG>cbreak</STRONG> when
            accepting input for <STRONG>getnstr</STRONG>.  That  may  have  been  done  to  make
-           function- and cursor-keys work; it is not necessary with ncurses.
+           function- and cursor-keys work; it is not necessary with <EM>ncurses</EM>.
 
-           Since  1995, ncurses has provided signal handlers for INTR and QUIT
+           Since  1995, <EM>ncurses</EM> has provided signal handlers for INTR and QUIT
            (e.g., <STRONG>^C</STRONG> or <STRONG>^\</STRONG>).  With the <STRONG>noraw</STRONG> and <STRONG>cbreak</STRONG>  settings,  those  may
            catch  a  signal  and stop the program, where other implementations
            allow one to enter those characters in the buffer.
 
-       <STRONG>o</STRONG>   Starting in 2021 (ncurses 6.3), <STRONG>getnstr</STRONG> sets <STRONG>raw</STRONG>, rather than <STRONG>noraw</STRONG>
+       <STRONG>o</STRONG>   Starting in 2021 (<EM>ncurses</EM> 6.3), <STRONG>getnstr</STRONG> sets <STRONG>raw</STRONG>, rather than <STRONG>noraw</STRONG>
            and   <STRONG>cbreak</STRONG>  for  better  compatibility  with  SVr4-curses,  e.g.,
            allowing one to enter a <STRONG>^C</STRONG> into the buffer.
 
 
 
 
-ncurses 6.4                       2023-11-25                   <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                   <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 766aad03db283c5eed6016b2d2b4484de41a9ee5..be5b1c2e6d1f693535a063d11462a5d15922515e 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_getyx.3x,v 1.39 2023/10/21 10:28:36 tom Exp @
+  * @Id: curs_getyx.3x,v 1.40 2023/12/16 21:33:21 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>curs_getyx 3x 2023-10-21 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_getyx 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_getyx 3x 2023-10-21 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_getyx 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
 
@@ -78,7 +78,7 @@
 
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
-       All  of these interfaces are macros.  A "<STRONG>&amp;</STRONG>" is not necessary before the
+       All  of these interfaces are macros.  A "&amp;" is not necessary before the
        variables <EM>y</EM> and <EM>x</EM>.
 
 
 
 
 
-ncurses 6.4                       2023-10-21                    <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                    <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index c11a137c96e4673d30c78869b2fa715eea9403a4..b4bcd57bfb4359bfa054dc877c0023aa81f979cf 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_inch.3x,v 1.40 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_inch.3x,v 1.41 2023/12/16 21:08:16 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>curs_inch 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_inch 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_inch 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_inch 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>                    Library calls                   <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
 
 
 
 </PRE><H3><a name="h3-Attributes">Attributes</a></H3><PRE>
-       The  following  bit-masks  may  be  AND-ed  with characters returned by
+       The  following  bit  masks  may  be  AND-ed with characters returned by
        <STRONG>winch</STRONG>.
 
-       <STRONG>A_CHARTEXT</STRONG>     Bit-mask to extract character
-       <STRONG>A_ATTRIBUTES</STRONG>   Bit-mask to extract attributes
-       <STRONG>A_COLOR</STRONG>        Bit-mask to extract color-pair field information
+       <STRONG>A_CHARTEXT</STRONG>     Bit mask to extract character
+       <STRONG>A_ATTRIBUTES</STRONG>   Bit mask to extract attributes
+       <STRONG>A_COLOR</STRONG>        Bit mask to extract color pair field information
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
 
 
 
-ncurses 6.4                       2023-10-07                     <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                     <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 2d1fc656223f594b3094e9ef95a997d7edab934e..995f186d6511ee8f98ba0fbc0b43121a36c6eabe 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_initscr.3x,v 1.56 2023/12/03 00:09:54 tom Exp @
+  * @Id: curs_initscr.3x,v 1.59 2023/12/17 23:56:04 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>curs_initscr 3x 2023-12-02 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_initscr 3x 2023-12-17 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_initscr 3x 2023-12-02 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_initscr 3x 2023-12-17 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>                 Library calls                <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
 
        X/Open  specifies that portable applications must not call <STRONG>initscr</STRONG> more
        than once:
 
-       <STRONG>o</STRONG>   The portable way to use <STRONG>initscr</STRONG> is once only,  using  <STRONG>refresh</STRONG>  (see
-           <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>) to restore the screen after <STRONG>endwin</STRONG>.
+       <STRONG>o</STRONG>   The portable way to use <STRONG>initscr</STRONG> is once only, using <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>  to
+           restore the screen after <STRONG>endwin</STRONG>.
 
        <STRONG>o</STRONG>   This implementation allows using <STRONG>initscr</STRONG> after <STRONG>endwin</STRONG>.
 
            <STRONG>curscr</STRONG>  as  well  as a work area <STRONG>newscr</STRONG>.  SVr4 curses ignores other
            windows.
 
-       <STRONG>o</STRONG>   Since version 4.0 (1996), ncurses has  maintained  a  list  of  all
+       <STRONG>o</STRONG>   Since version 4.0 (1996), <EM>ncurses</EM> has  maintained  a  list  of  all
            windows  for  each  screen,  using that information to delete those
            windows when <STRONG>delscreen</STRONG> is called.
 
-       <STRONG>o</STRONG>   NetBSD copied this feature of ncurses in  2001.   PDCurses  follows
+       <STRONG>o</STRONG>   NetBSD copied this feature of <EM>ncurses</EM> in  2001.   PDCurses  follows
            the SVr4 model, deleting only the standard <STRONG>WINDOW</STRONG> structures.
 
 
-</PRE><H3><a name="h3-High-level-versus-low-level">High-level versus low-level</a></H3><PRE>
+</PRE><H3><a name="h3-High-level-versus-Low-level">High-level versus Low-level</a></H3><PRE>
        Different  implementations  may  disagree  regarding  the level of some
        functions.  For example, <STRONG>SCREEN</STRONG>  (returned  by  <STRONG>newterm</STRONG>)  and  <STRONG>TERMINAL</STRONG>
        (returned  by  <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG>)  hold  file  descriptors  for  the output
        For example
 
        <STRONG>o</STRONG>   NetBSD's  <STRONG><A HREF="curs_termattrs.3x.html">baudrate(3x)</A></STRONG>  function  uses  the descriptor in <STRONG>TERMINAL</STRONG>.
-           <STRONG>ncurses</STRONG> and SVr4 use the descriptor in <STRONG>SCREEN</STRONG>.
+           <EM>ncurses</EM> and SVr4 use the descriptor in <STRONG>SCREEN</STRONG>.
 
-       <STRONG>o</STRONG>   NetBSD and <STRONG>ncurses</STRONG> use the descriptor in <STRONG>TERMINAL</STRONG> for terminal  I/O
+       <STRONG>o</STRONG>   NetBSD and <EM>ncurses</EM> use the descriptor in <STRONG>TERMINAL</STRONG> for terminal  I/O
            modes,  e.g.,  <STRONG><A HREF="curs_kernel.3x.html">def_shell_mode(3x)</A></STRONG>,  <STRONG><A HREF="curs_kernel.3x.html">def_prog_mode(3x)</A></STRONG>.  SVr4 curses
            uses the descriptor in <STRONG>SCREEN</STRONG>.
 
-
-</PRE><H3><a name="h3-Unset-TERM-Variable">Unset TERM Variable</a></H3><PRE>
+   <STRONG>Unset</STRONG> <EM>TERM</EM> <STRONG>Variable</STRONG>
        If the <EM>TERM</EM> variable is  missing  or  empty,  <STRONG>initscr</STRONG>  uses  the  value
        "unknown",  which  normally  corresponds  to  a terminal entry with the
        <EM>generic</EM> (<EM>gn</EM>) capability.  Generic entries are detected by <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG>
        <STRONG>SIGTSTP</STRONG>
             This handles the <EM>stop</EM> signal, used in job control.  When  resuming
             the  process,  this  implementation  discards  pending  input with
-            <STRONG>flushinput</STRONG> (see <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>), and repaints the  screen  assuming
-            that  it  has  been completely altered.  It also updates the saved
-            terminal modes with <STRONG>def_shell_mode</STRONG> (see <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>).
+            <STRONG><A HREF="curs_util.3x.html">flushinp(3x)</A></STRONG>, and repaints the screen assuming that  it  has  been
+            completely altered.  It also updates the saved terminal modes with
+            <STRONG><A HREF="curs_kernel.3x.html">def_shell_mode(3x)</A></STRONG>.
 
        <STRONG>SIGWINCH</STRONG>
             This handles the window-size changes which  were  ignored  in  the
             standardization   efforts.    The  handler  sets  a  (signal-safe)
-            variable which is later tested in <STRONG>wgetch</STRONG> (see <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>).  If
-            <STRONG>keypad</STRONG>  has  been  enabled  for  the  corresponding window, <STRONG>wgetch</STRONG>
-            returns the key symbol <STRONG>KEY_RESIZE</STRONG>.  At the same time, <STRONG>wgetch</STRONG> calls
-            <STRONG>resizeterm</STRONG>  to adjust the standard screen <STRONG>stdscr</STRONG>, and update other
-            data such as <STRONG>LINES</STRONG> and <STRONG>COLS</STRONG>.
+            variable which is later tested in <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG>.  If <STRONG>keypad</STRONG> has  been
+            enabled  for  the  corresponding  window,  <STRONG>wgetch</STRONG>  returns the key
+            symbol <STRONG>KEY_RESIZE</STRONG>.  At the same time, <STRONG>wgetch</STRONG> calls  <STRONG>resizeterm</STRONG>  to
+            adjust  the  standard screen <STRONG>stdscr</STRONG>, and update other data such as
+            <STRONG>LINES</STRONG> and <STRONG>COLS</STRONG>.
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
 
 
 
-ncurses 6.4                       2023-12-02                  <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
+ncurses 6.4                       2023-12-17                  <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
@@ -320,8 +319,7 @@ ncurses 6.4                       2023-12-02                  <STRONG><A HREF="c
 <li><a href="#h2-PORTABILITY">PORTABILITY</a>
 <ul>
 <li><a href="#h3-Differences">Differences</a></li>
-<li><a href="#h3-High-level-versus-low-level">High-level versus low-level</a></li>
-<li><a href="#h3-Unset-TERM-Variable">Unset TERM Variable</a></li>
+<li><a href="#h3-High-level-versus-Low-level">High-level versus Low-level</a></li>
 <li><a href="#h3-Signal-Handlers">Signal Handlers</a></li>
 </ul>
 </li>
index 16f564cd499bdef28dbc7a790f27d09892e4b8aa..d9a8d55ee0b1d5cb1afbf58bc9158fcec5f01360 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_inopts.3x,v 1.58 2023/11/25 14:30:50 tom Exp @
+  * @Id: curs_inopts.3x,v 1.59 2023/12/16 20:32:22 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>curs_inopts 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_inopts 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_inopts 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_inopts 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
 
 
 
 
-ncurses 6.4                       2023-11-25                   <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                   <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 153add44e28914c2166be0a0e2e3ec69ca03e787..b542bf8e0d35d67b722a3986ef570934365b442d 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_ins_wstr.3x,v 1.29 2023/11/25 11:29:34 tom Exp @
+  * @Id: curs_ins_wstr.3x,v 1.30 2023/12/16 20:36:15 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>curs_ins_wstr 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_ins_wstr 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_ins_wstr 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_ins_wstr 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
        All but <STRONG>wins_nwstr</STRONG> may be macros.
 
-       If  the  first character in the string is a nonspacing character, these
-       functions will fail.  XSI  does  not  define  what  will  happen  if  a
-       nonspacing character follows a control character.
+       If  the first character in the string is a non-spacing character, these
+       functions will fail.  XSI does not define what will happen  if  a  non-
+       spacing character follows a control character.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
 
 
 
-ncurses 6.4                       2023-11-25                 <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                 <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index b2afb581e157bfb4a27dba506c86eec4c19d1601..f0a1be0dfdc7919ffcf5f3d63863490d29cb4860 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_insch.3x,v 1.33 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_insch.3x,v 1.34 2023/12/16 21:09:11 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>curs_insch 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_insch 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_insch 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_insch 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       All routines that return an integer return  <STRONG>ERR</STRONG>  upon  failure  and  <STRONG>OK</STRONG>
-       (SVr4 specifies only "an integer value other than <STRONG>ERR</STRONG>") upon successful
-       completion,  unless  otherwise   noted   in   the   preceding   routine
-       descriptions.
+       These routines return the integer <STRONG>ERR</STRONG> upon  failure  and  an  <STRONG>OK</STRONG>  (SVr4
+       specifies  only  "an  integer  value  other  than <STRONG>ERR</STRONG>") upon successful
+       completion.
 
-       Functions  with  a  "mv"  prefix  first perform a cursor movement using
+       Functions with a "mv" prefix first  perform  a  cursor  movement  using
        <STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
        the window pointer is null.
 
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
-       These  routines  do  not  necessarily  imply  use  of a hardware insert
+       These routines do not  necessarily  imply  use  of  a  hardware  insert
        character feature.
 
        Note that <STRONG>insch</STRONG>, <STRONG>mvinsch</STRONG>, and <STRONG>mvwinsch</STRONG> may be macros.
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
 
-       Comparable functions  in  the  wide-character  (ncursesw)  library  are
+       Comparable  functions  in  the  wide-character  (ncursesw)  library are
        described in <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>.
 
 
 
-ncurses 6.4                       2023-10-07                    <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                    <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 4860e02cc6247bffe7cf4df1957dc842208e182f..efc2a39136316860e12aa28bdd9abbaec5951cbc 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_instr.3x,v 1.43 2023/11/25 17:58:25 tom Exp @
+  * @Id: curs_instr.3x,v 1.44 2023/12/16 20:32:22 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>curs_instr 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_instr 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_instr 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_instr 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
 
        SVr4  does not document whether a length limit includes or excludes the
        trailing NUL.
 
-       The ncurses library extends the XSI description by allowing a  negative
+       The <EM>ncurses</EM> library extends the XSI description by allowing a  negative
        value  for  <EM>n</EM>.  In this case, the functions return the string ending at
        the right margin.
 
 
 
 
-ncurses 6.4                       2023-11-25                    <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                    <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 0abb2f764e7d5c11ec9cff35c422429d27446655..c13997e4ad687a70cf3b5abc0ada124ce238992b 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_kernel.3x,v 1.49 2023/10/14 22:03:52 tom Exp @
+  * @Id: curs_kernel.3x,v 1.50 2023/12/16 20:32:22 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>curs_kernel 3x 2023-10-14 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_kernel 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_kernel 3x 2023-10-14 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_kernel 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
 
        currently incorrect".  This implementation gets it right, but it may be
        unwise to count on the correctness of the return value anywhere else.
 
-       Both ncurses and SVr4 will call <STRONG>curs_set</STRONG> in <STRONG>endwin</STRONG> if <STRONG>curs_set</STRONG> has been
+       Both <EM>ncurses</EM> and SVr4 will call <STRONG>curs_set</STRONG> in <STRONG>endwin</STRONG> if <STRONG>curs_set</STRONG> has been
        called  to make the cursor other than normal, i.e., either invisible or
-       very visible.  There is no way for ncurses  to  determine  the  initial
+       very visible.  There is no way for <EM>ncurses</EM>  to  determine  the  initial
        cursor state to restore that.
 
 
        type int.  This is misleading, as they are macros  with  no  documented
        semantics for the return value.
 
-       If interrupted, ncurses restarts <STRONG>napms</STRONG>.  That, and the limitation to 30
+       If interrupted, <EM>ncurses</EM> restarts <STRONG>napms</STRONG>.  That, and the limitation to 30
        seconds, are different from other implementations.
 
 
 
 
 
-ncurses 6.4                       2023-10-14                   <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                   <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 95c15b8f6225d337e635fa43b37754dd36f52cca..0572643c809e4f2b758a580dd347b7b0428e73b3 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_memleaks.3x,v 1.31 2023/11/11 11:46:43 tom Exp @
+  * @Id: curs_memleaks.3x,v 1.32 2023/12/16 20:32:22 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>curs_memleaks 3x 2023-11-11 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_memleaks 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_memleaks 3x 2023-11-11 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_memleaks 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
        These  functions  are  used to simplify analysis of memory leaks in the
-       ncurses library.
+       <EM>ncurses</EM> library.
 
        Any implementation of curses must not free the memory associated with a
        screen, since (even after calling <STRONG><A HREF="curs_initscr.3x.html">endwin(3x)</A></STRONG>), it must be available for
        use in the next call to <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>.  There are also chunks  of  memory
        held  for  performance  reasons.   That makes it hard to analyze curses
        applications for memory leaks.  When  using  the  specially  configured
-       debugging  version  of  the  ncurses  library,  applications  can  call
+       debugging  version  of  the  <EM>ncurses</EM>  library,  applications  can  call
        functions which free those chunks of memory, simplifying the process of
        memory-leak checking.
 
        not intended for use in the non-debugging library:
 
        <STRONG>_nc_freeall</STRONG>
-            This frees (almost) all of the memory allocated by ncurses.
+            This frees (almost) all of the memory allocated by <EM>ncurses</EM>.
 
        <STRONG>_nc_free_and_exit</STRONG>
-            This frees the memory allocated by ncurses (like <STRONG>_nc_freeall</STRONG>), and
+            This frees the memory allocated by <EM>ncurses</EM> (like <STRONG>_nc_freeall</STRONG>), and
             exits the program.  It is preferred over <STRONG>_nc_freeall</STRONG> since some of
             that memory may be  required  to  keep  the  application  running.
             Simply exiting (with the given exit-code) is safer.
 
 
 
-ncurses 6.4                       2023-11-11                 <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                 <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 5804c6dc72802a218aa2f1d62d4103abf637f12c..8067e30e55cbb4828344026c8f815d94c0481a1d 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_mouse.3x,v 1.81 2023/10/21 10:29:45 tom Exp @
+  * @Id: curs_mouse.3x,v 1.82 2023/12/16 21:08:16 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>curs_mouse 3x 2023-10-21 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_mouse 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_mouse 3x 2023-10-21 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_mouse 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>
 
 
 </PRE><H3><a name="h3-wmouse_trafo">wmouse_trafo</a></H3><PRE>
        The <STRONG>wmouse_trafo</STRONG> function transforms a given pair of  coordinates  from
-       stdscr-relative coordinates to coordinates relative to the given window
-       or vice versa.   The  resulting  stdscr-relative  coordinates  are  not
+       <STRONG>stdscr</STRONG>-relative coordinates to coordinates relative to the given window
+       or vice versa.   The  resulting  <STRONG>stdscr</STRONG>-relative  coordinates  are  not
        always identical to window-relative coordinates due to the mechanism to
        reserve lines on top or bottom of the screen for  other  purposes  (see
        the <STRONG>ripoffline</STRONG> and <STRONG><A HREF="curs_slk.3x.html">slk_init(3x)</A></STRONG> calls, for example).
            window, <STRONG>FALSE</STRONG> is returned.
 
        <STRONG>o</STRONG>   If <EM>to</EM><STRONG>_</STRONG><EM>screen</EM> is <STRONG>FALSE</STRONG>, the pointers <EM>pY,</EM> <EM>pX</EM> must  reference  window-
-           relative   coordinates.   They  are  converted  to  stdscr-relative
+           relative   coordinates.   They  are  converted  to  <STRONG>stdscr</STRONG>-relative
            coordinates if the window <EM>win</EM> encloses this point.   In  this  case
            the function returns <STRONG>TRUE</STRONG>.
 
 
 </PRE><H3><a name="h3-mouse_trafo">mouse_trafo</a></H3><PRE>
        The <STRONG>mouse_trafo</STRONG> function performs the same translation as <STRONG>wmouse_trafo</STRONG>,
-       using stdscr for <EM>win</EM>.
+       using <STRONG>stdscr</STRONG> for <EM>win</EM>.
 
 
 </PRE><H3><a name="h3-mouseinterval">mouseinterval</a></H3><PRE>
 
 </PRE><H3><a name="h3-has_mouse">has_mouse</a></H3><PRE>
        The <STRONG>has_mouse</STRONG> function returns  <STRONG>TRUE</STRONG>  if  the  mouse  driver  has  been
-       successfully initialized.
+       successfully initialized, and <STRONG>FALSE</STRONG> otherwise.
 
        Note  that  mouse  events will be ignored when input is in cooked mode,
        and will cause an error beep when cooked mode is being simulated  in  a
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       <STRONG>getmouse</STRONG> and <STRONG>ungetmouse</STRONG> return the integer <STRONG>ERR</STRONG> upon failure or <STRONG>OK</STRONG>  upon
-       successful completion:
+       <STRONG>has_mouse</STRONG>, <STRONG>wenclose</STRONG>, <STRONG>mouse_trafo</STRONG>, and <STRONG>wmouse_trafo</STRONG> return <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>
+       as noted above.
 
-          <STRONG>getmouse</STRONG>
-               returns an error.
+       <STRONG>getmouse</STRONG> and <STRONG>ungetmouse</STRONG> return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> upon success.
 
-          <STRONG>o</STRONG>   If  no mouse driver was initialized, or if the mask parameter is
-              zero,
+       <STRONG>getmouse</STRONG> fails if:
 
-          <STRONG>o</STRONG>   It returns an error if a mouse event was detected which did  not
-              match the current <EM>mousemask</EM>.
+       <STRONG>o</STRONG>   no mouse driver was initialized,
 
-          <STRONG>o</STRONG>   It also returns an error if no more events remain in the queue.
+       <STRONG>o</STRONG>   the mask of reportable events is zero,
 
-          <STRONG>ungetmouse</STRONG>
-               returns an error if the FIFO is full.
+       <STRONG>o</STRONG>   a mouse event was detected that does not match the mask,
+
+       <STRONG>o</STRONG>   or if no more events remain in the queue.
+
+       <STRONG>ungetmouse</STRONG> returns an error if the event queue is full.
 
        <STRONG>mousemask</STRONG> returns the mask of reportable events.
 
        was not initialized.  In that case, it  returns  the  maximum  interval
        value (166).
 
-       <STRONG>wenclose</STRONG> and <STRONG>wmouse_trafo</STRONG> are boolean functions returning <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>
-       depending on their test result.
+
+</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
+       The feature macro <STRONG>NCURSES_MOUSE_VERSION</STRONG> is provided so the preprocessor
+       can be used to  test  whether  these  features  are  present.   If  the
+       interface  is  changed,  the  value  of  <STRONG>NCURSES_MOUSE_VERSION</STRONG>  will be
+       incremented.  These values for <STRONG>NCURSES_MOUSE_VERSION</STRONG> may  be  specified
+       when configuring <EM>ncurses</EM>:
+
+          1  has definitions for reserved events.  The mask uses 28 bits.
+
+          2  adds  definitions  for  button  5,  removes  the  definitions for
+             reserved events.  The mask uses 29 bits.
+
+       The  order  of  the  <STRONG>MEVENT</STRONG>  structure  members  is   not   guaranteed.
+       Additional fields may be added to the structure in the future.
+
+       Under  <EM>ncurses</EM>, these calls are implemented using either xterm's built-
+       in mouse-tracking API or platform-specific drivers including
+
+          <STRONG>o</STRONG>   Alessandro Rubini's gpm server
+
+          <STRONG>o</STRONG>   FreeBSD sysmouse
+
+          <STRONG>o</STRONG>   OS/2 EMX
+
+       If you are using an unsupported configuration, mouse events will not be
+       visible to <EM>ncurses</EM> (and the <STRONG>mousemask</STRONG> function will always return <STRONG>0</STRONG>).
+
+       If  the  terminfo entry contains a <STRONG>XM</STRONG> string, this is used in the xterm
+       mouse driver to control the way the terminal is initialized  for  mouse
+       operation.   The  default,  if  <STRONG>XM</STRONG> is not found, corresponds to private
+       mode 1000 of xterm:
+
+          \E[?1000%?%p1%{1}%=%th%el%;
+
+       The mouse driver also recognizes a newer xterm private mode 1006, e.g.,
+
+          \E[?1006;1000%?%p1%{1}%=%th%el%;
+
+       The <EM>z</EM> member in the event structure  is  not  presently  used.   It  is
+       intended  for  use with touch screens (which may be pressure-sensitive)
+       or with 3D-mice/trackballs/power gloves.
+
+       The <STRONG>ALL_MOUSE_EVENTS</STRONG>  class  does  not  include  <STRONG>REPORT_MOUSE_POSITION</STRONG>.
+       They  are  distinct.   For example, in xterm, wheel/scrolling mice send
+       position reports as a sequence of presses of buttons  4  or  5  without
+       matching button-releases.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       These calls were designed for  <EM>ncurses</EM>,  and  are  not  found  in  SVr4
+       These  calls  were  designed  for  <EM>ncurses</EM>,  and  are not found in SVr4
        <EM>curses</EM>, 4.4BSD <EM>curses</EM>, or any other previous version of <EM>curses</EM>.
 
-       SVr4  <EM>curses</EM> had support for the mouse in a variant of <STRONG>xterm(1)</STRONG>.  It is
+       SVr4 <EM>curses</EM> had support for the mouse in a variant of <STRONG>xterm(1)</STRONG>.  It  is
        mentioned in a few places, but with no supporting documentation:
 
-       <STRONG>o</STRONG>   the "libcurses" manual page lists functions for this feature  which
+       <STRONG>o</STRONG>   the  "libcurses" manual page lists functions for this feature which
            are prototyped in <STRONG>curses.h</STRONG>:
 
                extern int mouse_set(long int);
                mouse_info        minfo   Mi       Mouse status information
                req_mouse_pos     reqmp   RQ       Request mouse position report
 
-       <STRONG>o</STRONG>   the  interface  made assumptions (as does <EM>ncurses</EM>) about the escape
+       <STRONG>o</STRONG>   the interface made assumptions (as does <EM>ncurses</EM>) about  the  escape
            sequences sent to and received from the terminal.
 
-           For instance the SVr4 <EM>curses</EM> library used the <STRONG>get_mouse</STRONG>  capability
-           to  tell  the  terminal  which  mouse button events it should send,
-           passing the mouse-button bit-mask to the terminal.  Also, it  could
-           ask  the  terminal  where  the  mouse  was  using the <STRONG>req_mouse_pos</STRONG>
+           For  instance the SVr4 <EM>curses</EM> library used the <STRONG>get_mouse</STRONG> capability
+           to tell the terminal which mouse  button  events  it  should  send,
+           passing  the mouse-button bit mask to the terminal.  Also, it could
+           ask the terminal  where  the  mouse  was  using  the  <STRONG>req_mouse_pos</STRONG>
            capability.
 
-           Those features required a terminal which had been modified to  work
+           Those  features required a terminal which had been modified to work
            with <EM>curses</EM>.  They were not part of the X Consortium's xterm.
 
-       When  developing the xterm mouse support for <EM>ncurses</EM> in September 1995,
-       Eric Raymond was uninterested in using the same interface  due  to  its
+       When developing the xterm mouse support for <EM>ncurses</EM> in September  1995,
+       Eric  Raymond  was  uninterested in using the same interface due to its
        lack of documentation.  Later, in 1998, Mark Hesseling provided support
-       in PDCurses 2.3 using the SVr4 interface.  PDCurses, however, does  not
-       use  video  terminals,  making  it  unnecessary  to  be concerned about
+       in  PDCurses 2.3 using the SVr4 interface.  PDCurses, however, does not
+       use video terminals,  making  it  unnecessary  to  be  concerned  about
        compatibility with the escape sequences.
 
-       The feature macro <STRONG>NCURSES_MOUSE_VERSION</STRONG> is provided so the preprocessor
-       can  be  used  to  test  whether  these  features  are present.  If the
-       interface is  changed,  the  value  of  <STRONG>NCURSES_MOUSE_VERSION</STRONG>  will  be
-       incremented.   These  values for <STRONG>NCURSES_MOUSE_VERSION</STRONG> may be specified
-       when configuring <EM>ncurses</EM>:
-
-          1  has definitions for reserved events.  The mask uses 28 bits.
-
-          2  adds definitions  for  button  5,  removes  the  definitions  for
-             reserved events.  The mask uses 29 bits.
-
-       The   order   of  the  <STRONG>MEVENT</STRONG>  structure  members  is  not  guaranteed.
-       Additional fields may be added to the structure in the future.
-
-       Under <EM>ncurses</EM>, these calls are implemented using either xterm's  built-
-       in mouse-tracking API or platform-specific drivers including
-
-          <STRONG>o</STRONG>   Alessandro Rubini's gpm server
-
-          <STRONG>o</STRONG>   FreeBSD sysmouse
-
-          <STRONG>o</STRONG>   OS/2 EMX
-
-       If you are using an unsupported configuration, mouse events will not be
-       visible to <EM>ncurses</EM> (and the <STRONG>mousemask</STRONG> function will always return <STRONG>0</STRONG>).
-
-       If the terminfo entry contains a <STRONG>XM</STRONG> string, this is used in  the  xterm
-       mouse  driver  to control the way the terminal is initialized for mouse
-       operation.  The default, if <STRONG>XM</STRONG> is not  found,  corresponds  to  private
-       mode 1000 of xterm:
-
-          \E[?1000%?%p1%{1}%=%th%el%;
-
-       The mouse driver also recognizes a newer xterm private mode 1006, e.g.,
-
-          \E[?1006;1000%?%p1%{1}%=%th%el%;
-
-       The  <EM>z</EM>  member  in  the  event  structure is not presently used.  It is
-       intended for use with touch screens (which may  be  pressure-sensitive)
-       or with 3D-mice/trackballs/power gloves.
-
-       The  <STRONG>ALL_MOUSE_EVENTS</STRONG>  class  does  not  include <STRONG>REPORT_MOUSE_POSITION</STRONG>.
-       They are distinct.  For example, in xterm,  wheel/scrolling  mice  send
-       position  reports  as  a  sequence of presses of buttons 4 or 5 without
-       matching button-releases.
-
 
 </PRE><H2><a name="h2-BUGS">BUGS</a></H2><PRE>
-       Mouse events from <EM>xterm</EM> are <EM>not</EM> ignored in cooked  mode  if  they  have
-       been  enabled  by  <STRONG>mousemask</STRONG>.  Instead, the <EM>xterm</EM> mouse report sequence
+       Mouse  events  from  <EM>xterm</EM>  are <EM>not</EM> ignored in cooked mode if they have
+       been enabled by <STRONG>mousemask</STRONG>.  Instead, the <EM>xterm</EM>  mouse  report  sequence
        appears in the string read.
 
-       Mouse event reports from <EM>xterm</EM> are not detected correctly in  a  window
-       with  keypad application mode disabled, since they are interpreted as a
-       variety of function key.  Set the the  terminal's  <EM>terminfo</EM>  capability
-       <STRONG>kmous</STRONG>  to  "\E[M"  (the  beginning of the response from <EM>xterm</EM> for mouse
-       clicks).   Other  values  of  <STRONG>kmous</STRONG>  are  permitted  under   the   same
+       Mouse  event  reports from <EM>xterm</EM> are not detected correctly in a window
+       with keypad application mode disabled, since they are interpreted as  a
+       variety  of  function  key.  Set the the terminal's <EM>terminfo</EM> capability
+       <STRONG>kmous</STRONG> to "\E[M" (the beginning of the response  from  <EM>xterm</EM>  for  mouse
+       clicks).    Other   values  of  <STRONG>kmous</STRONG>  are  permitted  under  the  same
        assumption, that is, the report begins with that sequence.
 
        Because there are no standard response sequences that serve to identify
-       terminals supporting the <EM>xterm</EM> mouse protocol, <EM>ncurses</EM> assumes that  if
+       terminals  supporting the <EM>xterm</EM> mouse protocol, <EM>ncurses</EM> assumes that if
        <STRONG>kmous</STRONG> is defined in the terminal description, or if the terminal type's
-       primary name or aliases contain the string "xterm", then  the  terminal
+       primary  name  or aliases contain the string "xterm", then the terminal
        may send mouse events.  The <STRONG>kmous</STRONG> capability is checked first, allowing
        use of newer <EM>xterm</EM> mouse protocols such as its private mode 1006.
 
 
 
 
-ncurses 6.4                       2023-10-21                    <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                    <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
@@ -393,6 +392,7 @@ ncurses 6.4                       2023-10-21                    <STRONG><A HREF=
 </ul>
 </li>
 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
+<li><a href="#h2-NOTES">NOTES</a></li>
 <li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
 <li><a href="#h2-BUGS">BUGS</a></li>
 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
index 9bef53b051f82d2eb41e4b89f76c4618a625d0af..284ff7862641f453cb5df6fa75e55939d58cd880 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_move.3x,v 1.32 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_move.3x,v 1.33 2023/12/16 21:33:08 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>curs_move 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_move 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_move 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_move 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>                    Library calls                   <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
 
@@ -65,8 +65,9 @@
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       These routines return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> (SVr4 specifies only  "an
-       integer value other than <STRONG>ERR</STRONG>") upon successful completion.
+       These routines return the integer <STRONG>ERR</STRONG> upon  failure  and  an  <STRONG>OK</STRONG>  (SVr4
+       specifies  only  "an  integer  value  other  than <STRONG>ERR</STRONG>") upon successful
+       completion.
 
        Specifically, they return an error if the window pointer is null, or if
        the position is outside the window.
@@ -85,7 +86,7 @@
 
 
 
-ncurses 6.4                       2023-10-07                     <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                     <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index d89e0235807cf4293478f2f0b6729b1644394eb4..89126bad7f3d790c7dd423acba49f2d51049e7f6 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_opaque.3x,v 1.40 2023/12/02 20:52:50 tom Exp @
+  * @Id: curs_opaque.3x,v 1.41 2023/12/16 20:32:22 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>curs_opaque 3x 2023-12-02 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_opaque 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_opaque 3x 2023-12-02 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_opaque 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>
 
 
 
 
-ncurses 6.4                       2023-12-02                   <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                   <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 7e1eb88b509a6f463e7f6bb282becc03660a2e6b..9ca36cfc4f5a158faebad17fa0b456c0b754ee0c 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_outopts.3x,v 1.52 2023/11/25 14:08:05 tom Exp @
+  * @Id: curs_outopts.3x,v 1.53 2023/12/16 20:32:22 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>curs_outopts 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_outopts 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_outopts 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_outopts 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>                 Library calls                <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
        These functions are described in the XSI Curses standard, Issue 4.
 
-       From  the  outset,  ncurses  used  <STRONG>nl</STRONG>/<STRONG>nonl</STRONG> to control the conversion of
+       From  the  outset,  <EM>ncurses</EM>  used  <STRONG>nl</STRONG>/<STRONG>nonl</STRONG> to control the conversion of
        newlines to carriage return/line-feed on output as well as input.   XSI
        Curses  documents  only  the  use  of  these functions for input.  This
        difference arose from converting the <EM>pcurses</EM> source (which  used  <STRONG>ioctl</STRONG>
        interface).  In the former, both input and output were controlled via a
        single  option  <STRONG>CRMOD</STRONG>,  while  the  latter  separates  these  features.
        Because that conversion interferes with  output  optimization,  <STRONG>nl</STRONG>/<STRONG>nonl</STRONG>
-       were amended after ncurses 6.2 to eliminate their effect on output.
+       were amended after <EM>ncurses</EM> 6.2 to eliminate their effect on output.
 
        Some  historic  curses implementations had, as an undocumented feature,
        the  ability  to  do  the  equivalent  of  <STRONG>clearok(...,</STRONG>  <STRONG>1)</STRONG>  by  saying
-       <STRONG>touchwin(stdscr)</STRONG> or <STRONG>clear(stdscr)</STRONG>.  This will not work under ncurses.
+       <STRONG>touchwin(stdscr)</STRONG> or <STRONG>clear(stdscr)</STRONG>.  This will not work under <EM>ncurses</EM>.
 
        Earlier  System  V  curses implementations specified that with <STRONG>scrollok</STRONG>
        enabled, any window modification triggering  a  scroll  also  forced  a
-       physical refresh.  XSI Curses does not require this, and <STRONG>ncurses</STRONG> avoids
+       physical refresh.  XSI Curses does not require this, and <EM>ncurses</EM> avoids
        doing it to perform better  vertical-motion  optimization  at  <STRONG>wrefresh</STRONG>
        time.
 
 
 
 
-ncurses 6.4                       2023-11-25                  <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                  <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 669b7d5bd2f163ec9652824eff3de70c7fabd327..868c4224f4305e07b09d50ae6a858d4733ebd22e 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_overlay.3x,v 1.35 2023/11/25 11:29:34 tom Exp @
+  * @Id: curs_overlay.3x,v 1.36 2023/12/16 21:32:51 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>curs_overlay 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_overlay 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_overlay 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_overlay 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>                 Library calls                <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
 
@@ -81,8 +81,8 @@
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       Routines  that  return an integer return <STRONG>ERR</STRONG> upon failure, and <STRONG>OK</STRONG> (SVr4
-       only specifies "an integer  value  other  than  <STRONG>ERR</STRONG>")  upon  successful
+       These  routines  return  the  integer  <STRONG>ERR</STRONG> upon failure and an <STRONG>OK</STRONG> (SVr4
+       specifies only "an integer  value  other  than  <STRONG>ERR</STRONG>")  upon  successful
        completion.
 
        X/Open  defines  no error conditions.  In this implementation, <STRONG>copywin</STRONG>,
 
 
 
-ncurses 6.4                       2023-11-25                  <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                  <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 77fc8cd00ae6a2eec44532cbcdd4d3440e0b5e91..f4062cf744e8320f50a04964401f1a1e2a75950c 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_pad.3x,v 1.49 2023/11/25 14:08:35 tom Exp @
+  * @Id: curs_pad.3x,v 1.50 2023/12/16 21:18:02 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>curs_pad 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_pad 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_pad 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_pad 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>                     Library calls                    <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
 
 </PRE><H3><a name="h3-newpad">newpad</a></H3><PRE>
-       The <STRONG>newpad</STRONG> routine creates and returns a pointer  to  a  new  pad  data
-       structure  with  the given number of lines, <EM>nlines</EM>, and columns, <EM>ncols</EM>.
-       A pad is like a window, except that it is not restricted by the  screen
-       size,  and  is not necessarily associated with a particular part of the
-       screen.  Pads can be used when a large window is  needed,  and  only  a
-       part  of  the  window  will  be  on  the screen at one time.  Automatic
-       refreshes of pads (e.g., from scrolling or echoing  of  input)  do  not
-       occur.
-
-       It  is not valid to call <STRONG>wrefresh</STRONG> with a <EM>pad</EM> argument; call <STRONG>prefresh</STRONG> or
-       <STRONG>pnoutrefresh</STRONG> instead.  They require additional  parameters  to  specify
-       the  part  of the pad to be displayed and the location on the screen to
+       <STRONG>newpad</STRONG> creates and returns a pointer to a new pad data  structure  with
+       the given number of lines, <EM>nlines</EM>, and columns, <EM>ncols</EM>.  A pad is like a
+       window, except that it is not restricted by the screen size, and is not
+       necessarily  associated with a particular part of the screen.  Pads can
+       be used when a large window is needed, and only a part  of  the  window
+       will  be  on  the  screen at one time.  Automatic refreshes of pads (as
+       from scrolling or echoing of input) do not occur.
+
+       It is not valid to call <STRONG>wrefresh</STRONG> with a <EM>pad</EM> argument; call <STRONG>prefresh</STRONG>  or
+       <STRONG>pnoutrefresh</STRONG>  instead.   They  require additional parameters to specify
+       the part of the pad to be displayed and the location on the  screen  to
        be used for the display.
 
 
 </PRE><H3><a name="h3-subpad">subpad</a></H3><PRE>
-       The <STRONG>subpad</STRONG> routine creates and returns a pointer to a subwindow  within
-       a  pad  with  the  given  number  of lines, <EM>nlines</EM>, and columns, <EM>ncols</EM>.
+       The  <STRONG>subpad</STRONG> routine creates and returns a pointer to a subwindow within
+       a pad with the given number  of  lines,  <EM>nlines</EM>,  and  columns,  <EM>ncols</EM>.
        Unlike <STRONG>subwin</STRONG>, which uses screen coordinates, the window is at position
        (<EM>begin</EM>_<EM>x</EM><STRONG>,</STRONG> <EM>begin</EM>_<EM>y</EM>) on the pad.  The window is made in the middle of the
-       window <EM>orig</EM>, so that changes made to one window  affect  both  windows.
-       During  the  use  of  this  routine, it will often be necessary to call
+       window  <EM>orig</EM>,  so  that changes made to one window affect both windows.
+       During the use of this routine, it will  often  be  necessary  to  call
        <STRONG>touchwin</STRONG> or <STRONG>touchline</STRONG> on <EM>orig</EM> before calling <STRONG>prefresh</STRONG>.
 
 
 </PRE><H3><a name="h3-prefresh_-pnoutrefresh">prefresh, pnoutrefresh</a></H3><PRE>
-       The <STRONG>prefresh</STRONG> and <STRONG>pnoutrefresh</STRONG> routines are analogous  to  <STRONG>wrefresh</STRONG>  and
-       <STRONG>wnoutrefresh</STRONG>  except  that they relate to pads instead of windows.  The
-       additional parameters are needed to indicate what part of the  pad  and
+       The  <STRONG>prefresh</STRONG>  and  <STRONG>pnoutrefresh</STRONG> routines are analogous to <STRONG>wrefresh</STRONG> and
+       <STRONG>wnoutrefresh</STRONG> except that they relate to pads instead of  windows.   The
+       additional  parameters  are needed to indicate what part of the pad and
        screen are involved.
 
-       <STRONG>o</STRONG>   The  <EM>pminrow</EM>  and  <EM>pmincol</EM>  parameters  specify the upper left-hand
+       <STRONG>o</STRONG>   The <EM>pminrow</EM> and <EM>pmincol</EM>  parameters  specify  the  upper  left-hand
            corner of the rectangle to be displayed in the pad.
 
-       <STRONG>o</STRONG>   The <EM>sminrow</EM>, <EM>smincol</EM>, <EM>smaxrow</EM>, and <EM>smaxcol</EM> parameters  specify  the
+       <STRONG>o</STRONG>   The  <EM>sminrow</EM>,  <EM>smincol</EM>, <EM>smaxrow</EM>, and <EM>smaxcol</EM> parameters specify the
            edges of the rectangle to be displayed on the screen.
 
        The lower right-hand corner of the rectangle to be displayed in the pad
        is calculated from the screen coordinates, since the rectangles must be
        the same size.  Both rectangles must be entirely contained within their
-       respective structures.  Negative values of <EM>pminrow</EM>,  <EM>pmincol</EM>,  <EM>sminrow</EM>,
+       respective  structures.   Negative values of <EM>pminrow</EM>, <EM>pmincol</EM>, <EM>sminrow</EM>,
        or <EM>smincol</EM> are treated as if they were zero.
 
 
 </PRE><H3><a name="h3-pechochar">pechochar</a></H3><PRE>
-       The  <STRONG>pechochar</STRONG>  routine  is  functionally equivalent to a call to <STRONG>addch</STRONG>
-       followed by a call to <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>, a call to <STRONG>waddch</STRONG> followed by a  call
-       to  <STRONG>wrefresh</STRONG>,  or a call to <STRONG>waddch</STRONG> followed by a call to <STRONG>prefresh</STRONG>.  The
-       knowledge that only a single character is being output  is  taken  into
-       consideration   and,   for   non-control   characters,  a  considerable
+       The <STRONG>pechochar</STRONG> routine is functionally equivalent to  a  call  to  <STRONG>addch</STRONG>
+       followed  by a call to <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>, a call to <STRONG>waddch</STRONG> followed by a call
+       to <STRONG>wrefresh</STRONG>, or a call to <STRONG>waddch</STRONG> followed by a call to  <STRONG>prefresh</STRONG>.   The
+       knowledge  that  only  a single character is being output is taken into
+       consideration  and,  for   non-control   characters,   a   considerable
        performance gain might be seen by using these routines instead of their
        equivalents.  In the case of <STRONG>pechochar</STRONG>, the last location of the pad on
        the screen is reused for the arguments to <STRONG>prefresh</STRONG>.
 
 
 </PRE><H3><a name="h3-pecho_wchar">pecho_wchar</a></H3><PRE>
-       The <STRONG>pecho_wchar</STRONG>  function  is  the  analogous  wide-character  form  of
+       The  <STRONG>pecho_wchar</STRONG>  function  is  the  analogous  wide-character  form of
        <STRONG>pechochar</STRONG>.  It outputs one character to a pad and immediately refreshes
-       the pad.  It does this by a call to <STRONG>wadd_wch</STRONG>  followed  by  a  call  to
+       the  pad.   It  does  this  by a call to <STRONG>wadd_wch</STRONG> followed by a call to
        <STRONG>prefresh</STRONG>.
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       Routines  that  return  an integer return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> (SVr4
-       only specifies "an integer  value  other  than  <STRONG>ERR</STRONG>")  upon  successful
+       Functions that return an integer return <STRONG>ERR</STRONG> upon failure and  <STRONG>OK</STRONG>  (SVr4
+       specifies  only  "an  integer  value  other  than <STRONG>ERR</STRONG>") upon successful
        completion.
 
-       Routines  that  return  pointers return <STRONG>NULL</STRONG> on error, and set <STRONG>errno</STRONG> to
+       Functions that return pointers return <STRONG>NULL</STRONG> on error, and set  <STRONG>errno</STRONG>  to
        <STRONG>ENOMEM</STRONG>.
 
-       X/Open does not define any error conditions.  In this implementation
+       X/Open   Curses   does  not  define  any  error  conditions.   In  this
+       implementation
 
           <STRONG>prefresh</STRONG> and <STRONG>pnoutrefresh</STRONG>
                return an error if the window pointer is null, or if the window
 
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
-       Note that <STRONG>pechochar</STRONG> may be a macro.
+       <STRONG>pechochar</STRONG> may be a macro.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
        conditions.  The behavior of <STRONG>subpad</STRONG> if the parent window is not  a  pad
        is undocumented, and is not checked by the vendor Unix implementations:
 
-       <STRONG>o</STRONG>   SVr4  <EM>curses</EM>  sets  a  flag in the <STRONG>WINDOW</STRONG> structure in <STRONG>newpad</STRONG> which
+       <STRONG>o</STRONG>   SVr4  <EM>curses</EM>  sets  a  flag in the <EM>WINDOW</EM> structure in <STRONG>newpad</STRONG> which
            tells if the window is a <EM>pad</EM>.
 
            However, it uses this information only in <STRONG>waddch</STRONG> (to decide  if  it
            does not check in <STRONG>wrefresh</STRONG> to ensure  that  the  pad  is  refreshed
            properly.
 
-       <STRONG>o</STRONG>   Solaris  X/Open Curses checks if a window is a pad in <STRONG>wnoutrefresh</STRONG>,
+       <STRONG>o</STRONG>   Solaris  <EM>xcurses</EM>  checks whether a window is a pad in <STRONG>wnoutrefresh</STRONG>,
            returning <STRONG>ERR</STRONG> in that case.
 
            However, it only sets the flag for subwindows if the parent  window
            enough,  a  comment  in  the  source code states that the lack of a
            check was an MKS extension.
 
-       <STRONG>o</STRONG>   NetBSD 7 <EM>curses</EM> sets a flag in the <STRONG>WINDOW</STRONG> structure for <STRONG>newpad</STRONG>  and
+       <STRONG>o</STRONG>   NetBSD 7 <EM>curses</EM> sets a flag in the <EM>WINDOW</EM> structure for <STRONG>newpad</STRONG>  and
            <STRONG>subpad</STRONG>,   using   this   to   help  with  the  distinction  between
            <STRONG>wnoutrefresh</STRONG> and <STRONG>pnoutrefresh</STRONG>.
 
 
        This implementation
 
-       <STRONG>o</STRONG>   sets a flag in the <STRONG>WINDOW</STRONG> structure for <STRONG>newpad</STRONG> and <STRONG>subpad</STRONG>,
+       <STRONG>o</STRONG>   sets a flag in the <EM>WINDOW</EM> structure for <STRONG>newpad</STRONG> and <STRONG>subpad</STRONG>,
 
        <STRONG>o</STRONG>   allows  a  <STRONG>subwin</STRONG>  or <STRONG>derwin</STRONG> call to succeed having a pad parent by
            forcing the subwindow to be a pad,
 
 
 
-ncurses 6.4                       2023-11-25                      <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                      <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 93f433da5cc824e0f44ac0ef7b6865efc85ec750..97e81782b22e6c18a1ad1d62bc9b21570380c874 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_print.3x,v 1.34 2023/10/21 10:31:22 tom Exp @
+  * @Id: curs_print.3x,v 1.35 2023/12/16 20:32:22 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>curs_print 3x 2023-10-21 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_print 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_print 3x 2023-10-21 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_print 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>
 
 
 
 
-ncurses 6.4                       2023-10-21                    <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                    <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 35e39c72563e761def94c2f41488a768ab85a8db..47ac8e5e72e74f8e1378c8d5d3830565d19c882a 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_printw.3x,v 1.43 2023/11/25 11:31:06 tom Exp @
+  * @Id: curs_printw.3x,v 1.45 2023/12/18 00:03:28 tom Exp @
+  * https://minnie.tuhs.org/cgi-bin/utree.pl?file=4BSD/usr/src/lib/\
+  *   libcurses/printw.c
+  * https://minnie.tuhs.org/cgi-bin/utree.pl?file=V7/usr/include/\
+  *  varargs.h
+  * either header declares "va_list", but only one can be used
 -->
 <!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>curs_printw 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_printw 3x 2023-12-17 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_printw 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_printw 3x 2023-12-17 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
 
@@ -48,7 +53,7 @@
 
 </PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
        <STRONG>printw</STRONG>,  <STRONG>wprintw</STRONG>,  <STRONG>mvprintw</STRONG>,  <STRONG>mvwprintw</STRONG>,  <STRONG>vwprintw</STRONG>,  <STRONG>vw_printw</STRONG>  - write
-       formatted output to <EM>curses</EM> windows
+       formatted output to a <EM>curses</EM> window
 
 
 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
@@ -58,6 +63,7 @@
        <STRONG>int</STRONG> <STRONG>wprintw(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
        <STRONG>int</STRONG> <STRONG>mvprintw(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
        <STRONG>int</STRONG> <STRONG>mvwprintw(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
+
        <STRONG>int</STRONG> <STRONG>vw_printw(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>va_list</STRONG> <EM>varglist</EM><STRONG>);</STRONG>
 
        <EM>/*</EM> <EM>obsolete</EM> <EM>*/</EM>
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
-       The <STRONG>printw</STRONG>, <STRONG>wprintw</STRONG>, <STRONG>mvprintw</STRONG> and <STRONG>mvwprintw</STRONG> routines are  analogous  to
-       <STRONG>printf</STRONG>  [see <STRONG>printf(3)</STRONG>].  In effect, the string that would be output by
-       <STRONG>printf</STRONG> is output instead as though  <STRONG>waddstr</STRONG>  were  used  on  the  given
-       window.
+       <STRONG>printw</STRONG>, <STRONG>wprintw</STRONG>, <STRONG>mvprintw</STRONG>, and <STRONG>mvwprintw</STRONG> are  analogous  to  <STRONG>printf(3)</STRONG>.
+       In  effect,  the  string  that  would be output by <STRONG>printf(3)</STRONG> is instead
+       output as though <STRONG><A HREF="curs_addstr.3x.html">waddstr(3x)</A></STRONG> were used with  <EM>win</EM>  (or  <STRONG>stdscr</STRONG>)  as  its
+       first argument.
 
-       The  <STRONG>vwprintw</STRONG>  and  <STRONG>vw_printw</STRONG>  routines  are  analogous to <STRONG>vprintf</STRONG> [see
-       <STRONG>printf(3)</STRONG>] and perform a <STRONG>wprintw</STRONG> using a variable argument  list.   The
-       third  argument  is  a  <STRONG>va_list</STRONG>,  a  pointer to a list of arguments, as
-       defined in <STRONG>&lt;stdarg.h&gt;</STRONG>.
+       <STRONG>vwprintw</STRONG>  and  <STRONG>vw_printw</STRONG>  are  analogous  to  <STRONG>vprintf(3)</STRONG>, and perform a
+       <STRONG>wprintw</STRONG> using a variable  argument  list.   The  third  argument  is  a
+       <EM>va</EM><STRONG>_</STRONG><EM>list</EM>, a pointer to a list of arguments, as defined in <EM>stdarg.h</EM>.
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       Routines that return an integer return <STRONG>ERR</STRONG> upon failure  and  <STRONG>OK</STRONG>  (SVr4
-       only  specifies  "an  integer  value  other  than <STRONG>ERR</STRONG>") upon successful
-       completion.
+       These functions return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> upon success.
 
-       X/Open defines no error conditions.  In this implementation,  an  error
-       may be returned if it cannot allocate enough memory for the buffer used
-       to format the results.  It will return an error if the  window  pointer
-       is null.
+       In <EM>ncurses,</EM> failure occurs if the library cannot allocate enough memory
+       for the buffer into which the output is formatted,  or  if  the  window
+       pointer <EM>win</EM> is null.
 
        Functions  with  a  "mv"  prefix  first perform a cursor movement using
-       <STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
-       the window pointer is null.
-
+       <STRONG>wmove</STRONG>, and fail if the position is outside the window.
 
-</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       In  this  implementation,  <STRONG>vw_printw</STRONG>  and  <STRONG>vwprintw</STRONG>  are equivalent, to
-       support  legacy  applications.   However,  the  latter  (<STRONG>vwprintw</STRONG>)   is
-       obsolete:
 
-       <STRONG>o</STRONG>   The  XSI  Curses  standard, Issue 4 described these functions.  The
-           function <STRONG>vwprintw</STRONG> is marked TO BE WITHDRAWN, and is to be  replaced
-           by a function <STRONG>vw_printw</STRONG> using the <STRONG>&lt;stdarg.h&gt;</STRONG> interface.
+</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
+       No wide character counterpart  functions  are  defined  by  the  "wide"
+       <EM>ncurses</EM> configuration nor by any standard.  To format and write a wide-
+       character string to a <EM>curses</EM> window,  consider  using  <STRONG>swprintf(3)</STRONG>  and
+       <STRONG><A HREF="curs_addwstr.3x.html">waddwstr(3x)</A></STRONG> or similar.
 
-       <STRONG>o</STRONG>   The  Single Unix Specification, Version 2 states that <STRONG>vw_printw</STRONG>  is
-           preferred  to  <STRONG>vwprintw</STRONG>  since  the   latter   requires   including
-           <STRONG>&lt;varargs.h&gt;</STRONG>,  which  cannot be used in the same file as <STRONG>&lt;stdarg.h&gt;</STRONG>.
-           This implementation uses <STRONG>&lt;stdarg.h&gt;</STRONG> for both, because  that  header
-           is included in <STRONG>&lt;curses.h</STRONG>&gt;.
 
-       <STRONG>o</STRONG>   X/Open  Curses, Issue 5 (December 2007) marked <STRONG>vwprintw</STRONG> (along with
-           <STRONG>vwscanw</STRONG> and the termcap interface) as withdrawn.
+</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
+       X/Open  Curses,  Issue  4,  describes these functions.  It specifies no
+       error conditions for them.
 
+       <EM>ncurses</EM> defines <STRONG>vw_printw</STRONG> and <STRONG>vwprintw</STRONG> identically  to  support  legacy
+       applications.  However, the latter is obsolete.
 
-</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
-       While <STRONG>printw</STRONG> was implemented in 4BSD, it was unused until 4.2BSD (which
-       used  it in games).  That early version of curses was before the ANSI C
-       standard.  It did not use &lt;varargs.h&gt;, though that was  available.   In
-       1991  (a  couple of years after SVr4 was generally available, and after
-       the C standard was published), other developers  updated  the  library,
-       using   &lt;stdarg.h&gt;   internally  in  4.4BSD  curses.   Even  with  this
-       improvement, BSD curses  did  not  use  function  prototypes  (or  even
-       declare functions) in the &lt;curses.h&gt; header until 1992.
+       <STRONG>o</STRONG>   X/Open  Curses,  Issue  4,  Version  2  (1996),  marked <STRONG>vwprintw</STRONG> as
+           requiring <EM>varargs.h</EM> and "TO BE WITHDRAWN", and specified  <STRONG>vw_printw</STRONG>
+           using the <EM>stdarg.h</EM> interface.
 
-       SVr2  documented  <STRONG>printw</STRONG>,  <STRONG>wprintw</STRONG>  tersely  as  "printf on <EM>stdscr</EM>" and
-       tersely as "printf on <EM>win</EM>", respectively.
+       <STRONG>o</STRONG>   X/Open  Curses,  Issue  5,  Draft 2 (December 2007) marked <STRONG>vwprintw</STRONG>
+           (along with <STRONG>vwscanw</STRONG> and the termcap interface) as withdrawn.  After
+           incorporating  review  comments, this became X/Open Curses, Issue 7
+           (2009).
 
-       SVr3 added <STRONG>mvprintw</STRONG>, and <STRONG>mvwprintw</STRONG>, with a  three-line  summary  saying
-       that they were analogous to <STRONG>printf(3)</STRONG>, explaining that the string which
-       would be output from <STRONG>printf(3)</STRONG> would instead be output using <STRONG>waddstr</STRONG> on
-       the  given  window.   SVr3  also  added <STRONG>vwprintw</STRONG>, saying that the third
-       parameter is a <STRONG>va_list</STRONG>,  defined  in  &lt;varargs.h&gt;,  and  referring  the
-       reader  to  the  manual  pages  for  <EM>varargs</EM>  and  <STRONG>vprintf</STRONG> for detailed
-       descriptions.
+       <STRONG>o</STRONG>   <EM>ncurses</EM> provides <STRONG>vwprintw</STRONG>, but marks it as deprecated.
 
-       SVr4 added  no  new  variations  of  <STRONG>printw</STRONG>,  but  provided  for  using
-       &lt;varargs.h&gt; or &lt;stdarg.h&gt; to define the <STRONG>va_list</STRONG> type.
 
-       X/Open  Curses  added  <STRONG>vw_printw</STRONG>  to replace <STRONG>vwprintw</STRONG>, stating that its
-       <STRONG>va_list</STRONG> definition requires &lt;stdarg.h&gt;.
+</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+       While <STRONG>printw</STRONG> was implemented in 4BSD (November  1980),  it  was  unused
+       until  4.2BSD  (August  1983), which employed it for games.  That early
+       version of <EM>curses</EM> preceded the ANSI C standard of 1989.  It did not use
+       <EM>varargs.h</EM>,  though  that  had been available since Seventh Edition Unix
+       (1979).  In 1991 (a couple of years after SVr4 was generally available,
+       and  after  the C standard was published), other developers updated the
+       library, using <EM>stdarg.h</EM> internally in 4.4BSD <EM>curses.</EM>   Even  with  this
+       improvement,  BSD  <EM>curses</EM>  did  not  use  function prototypes (nor even
+       declare functions) in <EM>curses.h</EM> until 1992.
+
+       SVr2 (1984) documented <STRONG>printw</STRONG> and <STRONG>wprintw</STRONG> tersely as "printf on <STRONG>stdscr</STRONG>"
+       and "printf on <EM>win</EM>", respectively.
+
+       SVr3  (1987)  added  <STRONG>mvprintw</STRONG>  and <STRONG>mvwprintw</STRONG>, with a three-line summary
+       asserting that they were analogous to <STRONG>printf(3)</STRONG>,  explaining  that  the
+       string  that  <STRONG>printf(3)</STRONG> would write to the standard output stream would
+       instead be output  using  <STRONG>waddstr</STRONG>  to  the  given  window.   SVr3  also
+       implemented  <STRONG>vwprintw</STRONG>,  describing  its  third  parameter as a <EM>va</EM><STRONG>_</STRONG><EM>list</EM>,
+       defined in <EM>varargs.h</EM>, and referred the reader to the manual  pages  for
+       <EM>varargs</EM> and <EM>vprintf</EM> for detailed descriptions.
+
+       SVr4  (1989)  introduced  no new variations of <EM>printw</EM>, but provided for
+       using either <EM>varargs.h</EM> or <EM>stdarg.h</EM> to define the <EM>va</EM><STRONG>_</STRONG><EM>list</EM> type.
+
+       X/Open Curses, Issue 4 (1995), defined <STRONG>vw_printw</STRONG> to  replace  <STRONG>vwprintw</STRONG>,
+       stating that its <EM>va</EM><STRONG>_</STRONG><EM>list</EM> type is defined in <EM>stdarg.h</EM>.
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,    <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>,    <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>,    <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>,
-       <STRONG>printf(3)</STRONG>, <STRONG>vprintf(3)</STRONG>
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>, <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>, <STRONG>printf(3)</STRONG>, <STRONG>vprintf(3)</STRONG>
 
 
 
-ncurses 6.4                       2023-11-25                   <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
+ncurses 6.4                       2023-12-17                   <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
@@ -152,6 +160,7 @@ ncurses 6.4                       2023-11-25                   <STRONG><A HREF="
 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
 <li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
+<li><a href="#h2-NOTES">NOTES</a></li>
 <li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
 <li><a href="#h2-HISTORY">HISTORY</a></li>
 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
index 227427fa54fda21f71a84473a450e5de0bbe8cd4..74985fb118a1ac9b3001582c4f482063dc3d9484 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_refresh.3x,v 1.38 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_refresh.3x,v 1.39 2023/12/16 21:09:11 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>curs_refresh 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_refresh 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_refresh 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_refresh 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>                 Library calls                <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       Routines  that  return an integer return <STRONG>ERR</STRONG> upon failure, and <STRONG>OK</STRONG> (SVr4
-       only specifies "an integer  value  other  than  <STRONG>ERR</STRONG>")  upon  successful
+       These  routines  return  the  integer  <STRONG>ERR</STRONG>  upon  failure  and <STRONG>OK</STRONG> (SVr4
+       specifies only "an integer  value  other  than  <STRONG>ERR</STRONG>")  upon  successful
        completion.
 
        X/Open does not define any error conditions.  In this implementation
 
 
 
-ncurses 6.4                       2023-10-07                  <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                  <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 6b51f936d6828477389f216c3c7b825c716dc21f..a0b8d7cccec521839abc62029a9257c3025016b1 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_scanw.3x,v 1.43 2023/11/25 11:31:06 tom Exp @
+  * @Id: curs_scanw.3x,v 1.44 2023/12/17 22:50:40 tom Exp @
+  * https://minnie.tuhs.org/cgi-bin/utree.pl?file=4BSD/usr/src/lib/\
+  *  libcurses/scanw.c
+  * https://minnie.tuhs.org/cgi-bin/utree.pl?file=V7/usr/include/\
+  *  varargs.h
+  * either header declares "va_list", but only one can be used
 -->
 <!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>curs_scanw 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_scanw 3x 2023-12-17 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_scanw 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_scanw 3x 2023-12-17 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
-       The <STRONG>scanw</STRONG>, <STRONG>wscanw</STRONG> and <STRONG>mvscanw</STRONG> routines  are  analogous  to  <STRONG>scanf</STRONG>  [see
-       <STRONG>scanf(3)</STRONG>].   The  effect  of  these  routines is as though <STRONG>wgetstr</STRONG> were
-       called on the  window,  and  the  resulting  line  used  as  input  for
-       <STRONG>sscanf(3)</STRONG>.   Fields which do not map to a variable in the <EM>fmt</EM> field are
-       lost.
+       <STRONG>scanw</STRONG>, <STRONG>wscanw</STRONG>, <STRONG>mvscanw</STRONG>, and <STRONG>mvwscanw</STRONG> are  analogous  to  <STRONG>scanf(3)</STRONG>.   In
+       effect,  they  call  <STRONG><A HREF="curs_getstr.3x.html">wgetstr(3x)</A></STRONG>  with  <EM>win</EM>  (or  <STRONG>stdscr</STRONG>)  as its first
+       argument,  then  attempt  conversion  of  the  resulting  string   with
+       <STRONG>vsscanf(3)</STRONG>.   Fields in the string that do not map to a variable in the
+       <EM>fmt</EM> parameter are discarded.
 
-       The <STRONG>vwscanw</STRONG> and <STRONG>vw_scanw</STRONG> routines are  analogous  to  <STRONG>vscanf(3)</STRONG>.   They
-       perform a <STRONG>wscanw</STRONG> using a variable argument list.  The third argument is
-       a <STRONG>va_list</STRONG>, a pointer to a list of arguments, as defined in <STRONG>&lt;stdarg.h&gt;</STRONG>.
+       <STRONG>vwscanw</STRONG> and <STRONG>vw_scanw</STRONG> are analogous to <STRONG>vscanf(3)</STRONG>, and perform  a  <STRONG>wscanw</STRONG>
+       using  a  variable  argument  list.  The third argument is a <EM>va</EM><STRONG>_</STRONG><EM>list</EM>, a
+       pointer to a list of arguments, as defined in <EM>stdarg.h</EM>.
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       <STRONG>vwscanw</STRONG> returns <STRONG>ERR</STRONG> on failure and an integer equal to  the  number  of
-       fields scanned on success.
+       These functions return <STRONG>ERR</STRONG>  upon  failure  and  otherwise  a  count  of
+       successful conversions; this quantity may be zero.
 
-       Applications  may  use the return value from the <STRONG>scanw</STRONG>, <STRONG>wscanw</STRONG>, <STRONG>mvscanw</STRONG>
-       and <STRONG>mvwscanw</STRONG> routines to determine the  number  of  fields  which  were
-       mapped in the call.
+       In  <EM>ncurses,</EM> failure occurs if <STRONG>vsscanf(3)</STRONG> returns <STRONG>EOF</STRONG>, or if the window
+       pointer <EM>win</EM> is null.
 
-       Functions  with  a  "mv"  prefix  first perform a cursor movement using
-       <STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
-       the window pointer is null.
+       Functions with a "mv" prefix first  perform  a  cursor  movement  using
+       <STRONG>wmove</STRONG>, and fail if the position is outside the window.
+
+
+</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
+       No  wide  character  counterpart  functions  are  defined by the "wide"
+       <EM>ncurses</EM> configuration nor by any standard.  They  are  unnecessary:  to
+       retrieve  and  convert  a  wide-character string from a <EM>curses</EM> terminal
+       keyboard, use these functions with the <STRONG>scanf(3)</STRONG> conversions  "%lc"  and
+       "%ls" for wide characters and strings, respectively.
+
+       <EM>ncurses</EM>  implements <STRONG>vsscanf(3)</STRONG> internally if it is unavailable when the
+       library is configured.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       In this implementation, <STRONG>vw_scanw</STRONG> and <STRONG>vwscanw</STRONG> are equivalent, to support
-       legacy applications.  However, the latter (<STRONG>vwscanw</STRONG>) is obsolete:
+       X/Open Curses, Issue 4, describes these  functions.   It  specifies  no
+       error conditions for them.
 
-       <STRONG>o</STRONG>   The XSI Curses standard, Issue 4 described these functions,  noting
-           that  the  function <STRONG>vwscanw</STRONG> is marked TO BE WITHDRAWN, and is to be
-           replaced by a function <STRONG>vw_scanw</STRONG> using the <STRONG>&lt;stdarg.h&gt;</STRONG> interface.
+       <EM>ncurses</EM>  defines  <STRONG>vw_scanw</STRONG>  and  <STRONG>vwscanw</STRONG>  identically to support legacy
+       applications.  However, the latter is obsolete.
 
-       <STRONG>o</STRONG>   The Single Unix Specification, Version 2 states that  <STRONG>vw_scanw</STRONG>   is
-           preferred   to   <STRONG>vwscanw</STRONG>   since   the  latter  requires  including
-           <STRONG>&lt;varargs.h&gt;</STRONG>, which cannot be used in the same file  as  <STRONG>&lt;stdarg.h&gt;</STRONG>.
-           This  implementation  uses <STRONG>&lt;stdarg.h&gt;</STRONG> for both, because that header
-           is included in <STRONG>&lt;curses.h</STRONG>&gt;.
+       <STRONG>o</STRONG>   X/Open Curses,  Issue  4,  Version  2  (1996),  marked  <STRONG>vwscanw</STRONG>  as
+           requiring  <EM>varargs.h</EM>  and "TO BE WITHDRAWN", and specified <STRONG>vw_scanw</STRONG>
+           using the <EM>stdarg.h</EM> interface.
 
-       <STRONG>o</STRONG>   X/Open Curses, Issue 5 (December 2007) marked <STRONG>vwscanw</STRONG>  (along  with
-           <STRONG>vwprintw</STRONG> and the termcap interface) as withdrawn.
+       <STRONG>o</STRONG>   X/Open Curses, Issue 5, Draft  2  (December  2007)  marked  <STRONG>vwscanw</STRONG>
+           (along with <STRONG>vwscanw</STRONG> and the termcap interface) as withdrawn.  After
+           incorporating review comments, this became X/Open Curses,  Issue  7
+           (2009).
 
-       Both  XSI and The Single Unix Specification, Version 2 state that these
-       functions return <STRONG>ERR</STRONG> or <STRONG>OK</STRONG>.
+       <STRONG>o</STRONG>   <EM>ncurses</EM> provides <STRONG>vwscanw</STRONG>, but marks it as deprecated.
 
-       <STRONG>o</STRONG>   Since the underlying  <STRONG>scanf(3)</STRONG>  can  return  the  number  of  items
-           scanned, and the SVr4 code was documented to use this feature, this
-           is probably an editing error which was introduced  in  XSI,  rather
-           than being done intentionally.
+       X/Open Curses Issues 4 and 7 both state that these functions return <STRONG>ERR</STRONG>
+       or <STRONG>OK</STRONG>.  This is likely an erratum.
 
-       <STRONG>o</STRONG>   This  implementation  returns  the  number  of  items  scanned, for
-           compatibility with SVr4 curses.  As of  2018,  NetBSD  curses  also
-           returns  the  number  of  items  scanned.   Both ncurses and NetBSD
-           curses call <STRONG>vsscanf</STRONG> to scan the string, which returns <STRONG>EOF</STRONG> on error.
+       <STRONG>o</STRONG>   Since the underlying <STRONG>scanf(3)</STRONG>  returns  the  number  of  successful
+           conversions,  and  SVr4  <EM>curses</EM> was documented to use this feature,
+           this may have been an  editorial  solecism  introduced  by  X/Open,
+           rather than an intentional change.
 
-       <STRONG>o</STRONG>   Portable applications should only test if the return value is  <STRONG>ERR</STRONG>,
-           since the <STRONG>OK</STRONG> value (zero) is likely to be misleading.
+       <STRONG>o</STRONG>   This  implementation retains compatibility with SVr4 <EM>curses.</EM>  As of
+           2018,  NetBSD  <EM>curses</EM>  also  returns  the  number   of   successful
+           conversions.   Both  <EM>ncurses</EM>  and  NetBSD <EM>curses</EM> call <STRONG>vsscanf(3)</STRONG> to
+           scan the string, which returns <STRONG>EOF</STRONG> on error.
 
-           One  possible  way  to  get  useful  results would be to use a "%n"
-           conversion at the end of the format string to ensure that something
-           was processed.
+       <STRONG>o</STRONG>   Portable applications should test only if the return value is  <STRONG>ERR</STRONG>,
+           and  not  compare  it  to  <STRONG>OK</STRONG>,  since  that  value  (zero) might be
+           misleading.
+
+           One portable way to get useful results  would  be  to  use  a  "%n"
+           conversion  at the end of the format string, and check the value of
+           the  corresponding  variable  to  determine  how  many  conversions
+           succeeded.
 
 
 </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
-       While  <STRONG>scanw</STRONG>  was implemented in 4BSD, none of the BSD releases used it
-       until 4.4BSD (in a game).  That early version of curses was before  the
-       ANSI  C  standard.   It  did  not  use  &lt;varargs.h&gt;,  though  that  was
-       available.  In 1991  (a  couple  of  years  after  SVr4  was  generally
-       available,  and  after  the C standard was published), other developers
-       updated the library, using  &lt;stdarg.h&gt;  internally  in  4.4BSD  curses.
-       Even  with this improvement, BSD curses did not use function prototypes
-       (or even declare functions) in the &lt;curses.h&gt; header until 1992.
-
-       SVr2 documented <STRONG>scanw</STRONG>, <STRONG>wscanw</STRONG> tersely as  "scanf  through  <EM>stdscr</EM>"  and
-       tersely as "scanf through <EM>win</EM>", respectively.
-
-       SVr3 added <STRONG>mvscanw</STRONG>, and <STRONG>mvwscanw</STRONG>, with a three-line summary saying that
-       they were analogous to <STRONG>scanf(3)</STRONG>, explaining that the string which would
-       be  output  from  <STRONG>scanf(3)</STRONG> would instead be output using <STRONG>waddstr</STRONG> on the
-       given window.  SVr3 also added <STRONG>vwscanw</STRONG>, saying that the third parameter
-       is  a  <STRONG>va_list</STRONG>, defined in &lt;varargs.h&gt;, and referring the reader to the
-       manual  pages  for  <EM>varargs</EM>  and  <STRONG>vprintf</STRONG>  for  detailed  descriptions.
-       (Because the SVr3 documentation does not mention <STRONG>vscanf</STRONG>, that reference
-       to <STRONG>vprintf</STRONG> may not be an error).
-
-       SVr4  added  no  new  variations  of  <STRONG>scanw</STRONG>,  but  provided  for  using
-       &lt;varargs.h&gt; or &lt;stdarg.h&gt; to define the <STRONG>va_list</STRONG> type.
-
-       X/Open  Curses  added  <STRONG>vw_scanw</STRONG>  to  replace  <STRONG>vwscanw</STRONG>, stating that its
-       <STRONG>va_list</STRONG> definition requires &lt;stdarg.h&gt;.
+       <STRONG>scanw</STRONG>  was  implemented  in 4BSD (November 1980); that early version of
+       <EM>curses</EM> preceded the ANSI C standard of 1989.  The function  was  unused
+       in  Berkeley  distributions  for  over  ten  years, until 4.4BSD, which
+       employed it in a game.  The 4BSD <STRONG>scanw</STRONG> did not  use  <EM>varargs.h</EM>,  though
+       that  had been available since Seventh Edition Unix (1979).  In 1991 (a
+       couple of years after SVr4 was generally available,  and  after  the  C
+       standard  was  published),  other developers updated the library, using
+       <EM>stdarg.h</EM> internally in 4.4BSD <EM>curses.</EM>  Even with this improvement,  BSD
+       <EM>curses</EM>  did not use function prototypes (nor even declare functions) in
+       <EM>curses.h</EM> until 1992.
+
+       SVr2 (1984) documented <STRONG>scanw</STRONG>  and  <STRONG>wscanw</STRONG>  tersely  as  "scanf  through
+       <STRONG>stdscr</STRONG>" and "scanf through <EM>win</EM>", respectively.
+
+       SVr3 (1987) added <STRONG>mvscanw</STRONG>, and <STRONG>mvwscanw</STRONG>, stating
+
+              These  routines  correspond  to <STRONG>scanf(3S)</STRONG>, as do their arguments
+              and return values.  <STRONG>wgetstr</STRONG>() is called on the window,  and  the
+              resulting line is used as input for the scan.
+
+       SVr3  also  implemented  <STRONG>vwscanw</STRONG>,  describing  its third parameter as a
+       <EM>va</EM><STRONG>_</STRONG><EM>list</EM>, defined in <EM>varargs.h</EM>, and referred the reader  to  the  manual
+       pages  for <EM>varargs</EM> and <EM>vprintf</EM> for detailed descriptions.  (Because the
+       SVr3 documentation does not mention <EM>vscanf</EM>, the  reference  to  <EM>vprintf</EM>
+       might not be an error).
+
+       SVr4  (1989)  introduced  no  new variations of <EM>scanw</EM>, but provided for
+       using either <EM>varargs.h</EM> or <EM>stdarg.h</EM> to define the <EM>va</EM><STRONG>_</STRONG><EM>list</EM> type.
+
+       X/Open Curses, Issue 4 (1995), defined  <EM>vw</EM><STRONG>_</STRONG><EM>scanw</EM>  to  replace  <EM>vwscanw</EM>,
+       stating that its <EM>va</EM><STRONG>_</STRONG><EM>list</EM> type is defined in <EM>stdarg.h</EM>.
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,   <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>,    <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>,    <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>,
-       <STRONG>scanf(3)</STRONG>
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>, <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>, <STRONG>scanf(3)</STRONG>, <STRONG>vscanf(3)</STRONG>
 
 
 
-ncurses 6.4                       2023-11-25                    <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
+ncurses 6.4                       2023-12-17                    <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
@@ -171,6 +192,7 @@ ncurses 6.4                       2023-11-25                    <STRONG><A HREF=
 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
 <li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
+<li><a href="#h2-NOTES">NOTES</a></li>
 <li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
 <li><a href="#h2-HISTORY">HISTORY</a></li>
 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
index dce1c85565bb4b9ef990a340013630efb22b0c1a..0a7e003bc28b9dd8f83588491661ba230a2dd924 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_scr_dump.3x,v 1.35 2023/11/25 11:29:34 tom Exp @
+  * @Id: curs_scr_dump.3x,v 1.36 2023/12/16 21:10:18 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>curs_scr_dump 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_scr_dump 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_scr_dump 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_scr_dump 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       All routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> upon success.
+       These routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> upon success.
 
        X/Open defines no error conditions.  In this implementation, each  will
        return an error if the file cannot be opened.
 
 
 
-ncurses 6.4                       2023-11-25                 <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                 <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index eb775e8a443872f14d218f2689550037dd3a1ee6..48e7865fd883d52522930b7fd66c5d3c52c19b49 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_scroll.3x,v 1.35 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_scroll.3x,v 1.36 2023/12/16 22:52:35 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>curs_scroll 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_scroll 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_scroll 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_scroll 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
-       The  <STRONG>scroll</STRONG>  routine  scrolls  the  window  up one line.  This involves
-       moving the lines in the window data structure.  As an optimization,  if
-       the  scrolling  region of the window is the entire screen, the <EM>physical</EM>
-       <EM>screen</EM> may be scrolled at the same time.
+       <STRONG>scroll</STRONG>  scrolls  the  given window up one line.  That is, every visible
+       line we might number <EM>i</EM> becomes line <EM>i</EM>-1.  The text of the top  line  in
+       the  window  disappears  and  the  bottom  line is populated with blank
+       characters; see <STRONG><A HREF="curs_bkgd.3x.html">bkgd(3x)</A></STRONG> or <STRONG><A HREF="curs_bkgrnd.3x.html">bkgrnd(3x)</A></STRONG>.  As  an  optimization,  if  the
+       scrolling  region  of  the  window  is  the entire screen, the physical
+       screen may be scrolled at the same time; see <STRONG><A HREF="curs_variables.3x.html">curscr(3x)</A></STRONG>.
 
-       For positive <EM>n</EM>, the <STRONG>scrl</STRONG> and <STRONG>wscrl</STRONG> routines  scroll  the  window  up  <EM>n</EM>
-       lines  (line  <EM>i</EM>+<EM>n</EM> becomes <EM>i</EM>); otherwise scroll the window down <EM>n</EM> lines.
-       This involves moving the lines in the window character image structure.
-       The current cursor position is not changed.
+       <STRONG>scrl</STRONG> and <STRONG>wscrl</STRONG> scroll  <STRONG>stdscr</STRONG>  or  the  specified  window  up  or  down
+       depending on the sign of <EM>n.</EM>
 
-       For   these   functions   to   work,  scrolling  must  be  enabled  via
-       <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG>.
+       <STRONG>o</STRONG>   For positive <EM>n,</EM> line <EM>i</EM>+<EM>n</EM> becomes <EM>i</EM> (scrolling up);
 
+       <STRONG>o</STRONG>   for negative <EM>n,</EM> line <EM>i</EM>-<EM>n</EM> becomes <EM>i</EM> (scrolling down).
+
+       The  cursor does not move.  These functions perform no operation unless
+       scrolling is enabled for the window via <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG>.
 
-</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       These routines return <STRONG>ERR</STRONG> upon failure, and <STRONG>OK</STRONG> (SVr4 only specifies "an
-       integer value other than <STRONG>ERR</STRONG>") upon successful completion.
 
-       X/Open defines no error conditions.
+</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
+       These functions return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> upon success.
 
-       This  implementation returns an error if the window pointer is null, or
-       if scrolling is not enabled in the window, e.g., with <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG>.
+       <EM>ncurses</EM> returns <STRONG>ERR</STRONG> if scrolling is not  enabled  in  the  window,  for
+       example with <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG>, or if the <EM>WINDOW</EM> pointer is null.
 
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
-       Note that <STRONG>scrl</STRONG> and <STRONG>scroll</STRONG> may be macros.
-
-       The  SVr4  documentation  says  that  the  optimization  of  physically
-       scrolling  immediately  if  the scroll region is the entire screen "is"
-       performed, not "may be" performed.   This  implementation  deliberately
-       does  not guarantee that this will occur, to leave open the possibility
-       of smarter optimization of multiple scroll actions on the next update.
+       Unusually,  there  is  no <STRONG>wscroll</STRONG> function; <STRONG>scroll</STRONG> behaves as one would
+       expect <STRONG>wscroll</STRONG> to, accepting a <EM>WINDOW</EM> pointer argument.
 
-       Neither the SVr4 nor the XSI documentation specify whether the  current
-       attribute  or  current  color-pair  of  blanks  generated by the scroll
-       function is zeroed.  Under this implementation it is.
+       <STRONG>scrl</STRONG> and <STRONG>scroll</STRONG> may be implemented as macros.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       The XSI Curses standard, Issue 4 describes these functions.
+       X/Open Curses, Issue 4, describes these functions.  It defines no error
+       conditions.
+
+       SVr4  specifies  only "an integer value other than <STRONG>ERR</STRONG>" as a successful
+       return value.
+
+       SVr4  indicates  that  the   optimization   of   physically   scrolling
+       immediately  if  the scroll region is the entire screen "is" performed,
+       not "may be" performed.  <EM>ncurses</EM> deliberately does not  guarantee  that
+       this  will occur, to leave open the possibility of smarter optimization
+       of multiple scroll actions on the next update.
+
+       Neither SVr4 <EM>curses</EM> nor  X/Open  Curses  specify  whether  the  current
+       attribute  or  current  color  pair  of  blanks generated by the scroll
+       function are zeroed.  <EM>ncurses</EM> does so.
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
 
 
 
-ncurses 6.4                       2023-10-07                   <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                   <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 48e91609d7f2f106e08fb93f44c7b6de30994212..2ef16489e8d0b396ce46de9eb0d9273ad0eb9b86 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_slk.3x,v 1.66 2023/11/25 14:31:07 tom Exp @
+  * @Id: curs_slk.3x,v 1.67 2023/12/16 21:18:45 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>curs_slk 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_slk 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_slk 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_slk 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>                     Library calls                    <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
 
@@ -58,8 +58,8 @@
 
        <STRONG>int</STRONG> <STRONG>slk_init(int</STRONG> <EM>fmt</EM><STRONG>);</STRONG>
 
-       <STRONG>int</STRONG> <STRONG>slk_set(int</STRONG> <EM>labnum</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>label</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fmt</EM><STRONG>);</STRONG>
-       <STRONG>int</STRONG> <STRONG>slk_wset(int</STRONG> <EM>labnum</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>label</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fmt</EM><STRONG>);</STRONG>
+       <STRONG>int</STRONG> <STRONG>slk_set(int</STRONG> <EM>labnum</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>label</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>align</EM><STRONG>);</STRONG>
+       <STRONG>int</STRONG> <STRONG>slk_wset(int</STRONG> <EM>labnum</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>label</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>align</EM><STRONG>);</STRONG>
 
        <STRONG>char</STRONG> <STRONG>*slk_label(int</STRONG> <EM>labnum</EM><STRONG>);</STRONG>
 
@@ -72,9 +72,9 @@
        <STRONG>int</STRONG> <STRONG>slk_attron(const</STRONG> <STRONG>chtype</STRONG> <EM>attrs</EM><STRONG>);</STRONG>
        <STRONG>int</STRONG> <STRONG>slk_attroff(const</STRONG> <STRONG>chtype</STRONG> <EM>attrs</EM><STRONG>);</STRONG>
        <STRONG>int</STRONG> <STRONG>slk_attrset(const</STRONG> <STRONG>chtype</STRONG> <EM>attrs</EM><STRONG>);</STRONG>
-       <STRONG>int</STRONG> <STRONG>slk_attr_on(attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>void*</STRONG> <EM>opts</EM><STRONG>);</STRONG>
-       <STRONG>int</STRONG> <STRONG>slk_attr_off(const</STRONG> <STRONG>attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG> <EM>opts</EM><STRONG>);</STRONG>
-       <STRONG>int</STRONG> <STRONG>slk_attr_set(const</STRONG> <STRONG>attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void*</STRONG> <EM>opts</EM><STRONG>);</STRONG>
+       <STRONG>int</STRONG> <STRONG>slk_attr_on(attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
+       <STRONG>int</STRONG> <STRONG>slk_attr_off(const</STRONG> <STRONG>attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
+       <STRONG>int</STRONG> <STRONG>slk_attr_set(const</STRONG> <STRONG>attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void*</STRONG><EM>opts</EM><STRONG>);</STRONG>
        <EM>/*</EM> <EM>extension</EM> <EM>*/</EM>
        <STRONG>attr_t</STRONG> <STRONG>slk_attr(void);</STRONG>
 
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
-       The <STRONG>slk</STRONG>* functions manipulate the set of soft function-key labels  that
-       exist  on  many  terminals.   For those terminals that do not have soft
-       labels, <EM>curses</EM> takes over the bottom line of <STRONG>stdscr</STRONG>, reducing the  size
-       of  <STRONG>stdscr</STRONG> and the variable <STRONG>LINES</STRONG>.  <EM>curses</EM> standardizes on eight labels
-       of up to eight characters each.   In  addition  to  this,  the  <EM>ncurses</EM>
-       implementation  supports  a  mode where it simulates 12 labels of up to
-       five characters each.  This is  useful  for  PC-like  enduser  devices.
-       <EM>ncurses</EM>  simulates  this  mode  by  taking  over up to two lines at the
-       bottom of the screen; it does not try to use any hardware  support  for
-       this mode.
+       These functions manipulate the  soft  function  key  labels  that  some
+       hardware  terminals support.  For those terminals that do not have soft
+       labels, <EM>curses</EM> takes over the  bottom  line  of  <STRONG>stdscr</STRONG>,  reducing  its
+       vertical  size  and the value of <STRONG>LINES</STRONG> by one.  By default, <EM>curses</EM> uses
+       eight labels of up to eight characters each.
+
+       <EM>ncurses</EM> furthermore supports a mode comprising twelve labels of  up  to
+       five  characters  each,  following a convention associated with the IBM
+       PC/AT keyboard.  <EM>ncurses</EM> simulates this mode by taking over up  to  two
+       lines  at the bottom of the screen; it does not try to use any hardware
+       support for this mode.
 
 
 </PRE><H3><a name="h3-Initialization">Initialization</a></H3><PRE>
-       The  <STRONG>slk_init</STRONG>  routine  must  be  called  before  <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG> is
-       called.  If <STRONG>initscr</STRONG> eventually uses a line from <STRONG>stdscr</STRONG> to  emulate  the
-       soft  labels,  then  <EM>fmt</EM>  determines how the labels are arranged on the
-       screen:
+       <STRONG>slk_init</STRONG>  must  be  called  before  <STRONG>initscr</STRONG>  or  <STRONG>newterm</STRONG>.   If  <STRONG>initscr</STRONG>
+       eventually uses a line from <STRONG>stdscr</STRONG> to emulate the soft labels, then <EM>fmt</EM>
+       determines how the labels are arranged on the screen.
 
-          <STRONG>0</STRONG>  indicates a 3-2-3 arrangement of the labels.
+       <STRONG>0</STRONG>  indicates a 3-2-3 arrangement of the labels.
 
-          <STRONG>1</STRONG>  indicates a 4-4 arrangement
+       <STRONG>1</STRONG>  indicates a 4-4 arrangement
 
-          <STRONG>2</STRONG>  indicates the PC-like 4-4-4 mode.
+       <STRONG>2</STRONG>  indicates the PC-like 4-4-4 mode.
 
-          <STRONG>3</STRONG>  is again the PC-like 4-4-4 mode, but in addition an index line is
-             generated, helping the user to identify the key numbers easily.
+       <STRONG>3</STRONG>  is again the PC-like 4-4-4 mode, but in addition an  index  line  is
+          generated,  helping  the  user  to  associate  each  label  with its
+          numbered function key.  <STRONG>LINES</STRONG> and the vertical size  of  <STRONG>stdscr</STRONG>  are
+          further reduced.
 
 
 </PRE><H3><a name="h3-Labels">Labels</a></H3><PRE>
-       The  <STRONG>slk_set</STRONG>  routine  (and the <STRONG>slk_wset</STRONG> routine for the wide-character
-       library) has three parameters:
+       Populate  the  labels  with  normal strings (<STRONG>slk_set</STRONG>) or wide-character
+       strings (<STRONG>slk_wset</STRONG>).  Each function takes three parameters.
 
-          <EM>labnum</EM>
-               is the label number, from <STRONG>1</STRONG> to <STRONG>8</STRONG> (12 if <EM>fmt</EM> in <STRONG>slk_init</STRONG> is <STRONG>2</STRONG> or
+       <EM>labnum</EM>  is the label number, from <STRONG>1</STRONG> to <STRONG>8</STRONG> (12 if <EM>fmt</EM> in <STRONG>slk_init</STRONG> is <STRONG>2</STRONG> or
                <STRONG>3</STRONG>);
 
-          <EM>label</EM>
-               is  be the string to put on the label, up to eight (five if <EM>fmt</EM>
-               in <STRONG>slk_init</STRONG> is <STRONG>2</STRONG> or <STRONG>3</STRONG>) characters in length.  A null string  or
+       <EM>label</EM>   is  be the string to put on the label, up to eight (five if <EM>fmt</EM>
+               in <STRONG>slk_init</STRONG> is <STRONG>2</STRONG> or <STRONG>3</STRONG>) characters in length.  A empty string or
                a null pointer sets up a blank label.
 
-          <EM>fmt</EM>  is  either  <STRONG>0</STRONG>,  <STRONG>1</STRONG>,  or <STRONG>2</STRONG>, indicating whether the label is to be
-               left-justified,  centered,  or  right-justified,  respectively,
-               within the label.
+       <EM>align</EM>   is  <STRONG>0</STRONG>,  <STRONG>1</STRONG>,  or <STRONG>2</STRONG>, aligning <EM>label</EM> to the left, center, or right,
+               respectively, within the 8 (5) character cells housing it.
 
-       The  <STRONG>slk_label</STRONG>  routine  returns  the  current  label  for label number
-       <EM>labnum</EM>, with leading and trailing blanks stripped.
+       <STRONG>slk_label</STRONG> obtains the string assigned to label number <EM>labnum</EM>, with  any
+       leading and trailing blanks stripped.
 
 
-</PRE><H3><a name="h3-Screen-updates">Screen updates</a></H3><PRE>
-       The <STRONG>slk_refresh</STRONG> and <STRONG>slk_noutrefresh</STRONG> routines correspond to the <STRONG>wrefresh</STRONG>
-       and <STRONG>wnoutrefresh</STRONG> routines.
+</PRE><H3><a name="h3-Screen-Updates">Screen Updates</a></H3><PRE>
+       <STRONG>slk_refresh</STRONG>  and  <STRONG>slk_noutrefresh</STRONG>  affect  the  soft key label lines as
+       <STRONG>wrefresh</STRONG> and <STRONG>wnoutrefresh</STRONG> do the <EM>curses</EM> window.
 
        The <STRONG>slk_clear</STRONG> routine clears the soft labels from the screen.
 
-       The  <STRONG>slk_restore</STRONG> routine restores the soft labels to the screen after a
+       The <STRONG>slk_restore</STRONG> routine restores the soft labels to the screen after  a
        <STRONG>slk_clear</STRONG> has been performed.
 
-       The <STRONG>slk_touch</STRONG> routine forces all the soft labels to be output the  next
+       The  <STRONG>slk_touch</STRONG> routine forces all the soft labels to be output the next
        time a <STRONG>slk_noutrefresh</STRONG> is performed.
 
 
-</PRE><H3><a name="h3-Video-attributes">Video attributes</a></H3><PRE>
-       The   <STRONG>slk_attron</STRONG>,   <STRONG>slk_attrset</STRONG>,   <STRONG>slk_attroff</STRONG>  and  <STRONG>slk_attr</STRONG>  routines
-       correspond to <STRONG>attron</STRONG>,  <STRONG>attrset</STRONG>,  <STRONG>attroff</STRONG>  and  <STRONG>attr_get</STRONG>,  respectively.
-       They  have  an  effect  only if soft labels are simulated on the bottom
-       line of the screen.  The default highlight for soft keys is  A_STANDOUT
-       (as in System V <EM>curses</EM>, which does not document this fact).
+</PRE><H3><a name="h3-Video-Attributes">Video Attributes</a></H3><PRE>
+       The  <STRONG>slk_attron</STRONG>,  <STRONG>slk_attrset</STRONG>,  <STRONG>slk_attroff</STRONG>,  and   <STRONG>slk_attr</STRONG>   routines
+       correspond  to  <STRONG>attron</STRONG>,  <STRONG>attrset</STRONG>,  <STRONG>attroff</STRONG>, and <STRONG>attr_get</STRONG>, respectively.
+       They have an effect only if soft labels are  simulated  on  the  bottom
+       line  of  the  screen.   The  default  highlight for soft key labels is
+       <STRONG>A_STANDOUT</STRONG> (as in System V <EM>curses</EM>, which does not document this fact).
 
 
 </PRE><H3><a name="h3-Colors">Colors</a></H3><PRE>
-       The  <STRONG>slk_color</STRONG> routine corresponds to <STRONG>color_set</STRONG>.  It has an effect only
+       The <STRONG>slk_color</STRONG> routine corresponds to <STRONG>color_set</STRONG>.  It has an effect  only
        if soft labels are simulated on the bottom line of the screen.
 
-       Because <STRONG>slk_color</STRONG> accepts only <STRONG>short</STRONG> (signed  16-bit  integer)  values,
-       this   implementation  provides  <STRONG>extended_slk_color</STRONG>  which  accepts  an
-       integer value, e.g., 32-bits.
+       Because  <STRONG>slk_color</STRONG>  accepts  only <EM>short</EM> (signed 16-bit integer) values,
+       this implementation provides <STRONG>extended_slk_color</STRONG>, which accepts  an  <EM>int</EM>
+       value of at least 32 bits.
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       These routines return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> (SVr4 specifies only  "an
-       integer value other than <STRONG>ERR</STRONG>") upon successful completion.
+       Routines  that  return  an integer return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> (SVr4
+       specifies only "an integer  value  other  than  <STRONG>ERR</STRONG>")  upon  successful
+       completion.
+
+       X/Open Curses defines no error conditions.
 
-       X/Open defines no error conditions.  In this implementation
+       In this implementation
 
           <STRONG>slk_attr</STRONG>
                returns the attribute used for the soft keys.
 
 
 </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
-       X/Open  <EM>curses</EM>  documents the <EM>opts</EM> argument as reserved for future use,
+       X/Open  Curses  documents the <EM>opts</EM> argument as reserved for future use,
        saying that it must be null.  This implementation uses  that  parameter
-       in ABI 6 for the functions which have a color-pair parameter to support
+       in ABI 6 for the functions which have a color pair parameter to support
        extended color pairs.
 
-       For  functions  which modify the color, e.g., <STRONG>slk_attr_set</STRONG>, if <EM>opts</EM>  is
-       set  it  is  treated  as a pointer to <STRONG>int</STRONG>, and used to  set  the  color
-       pair instead of the <STRONG>short</STRONG> pair parameter.
+       For functions which modify the color, e.g., <STRONG>slk_attr_set</STRONG>,  if  <EM>opts</EM>  is
+       set  it  is treated as a pointer to <EM>int</EM>, and used to set the color pair
+       instead of the <EM>short</EM> pair parameter.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       The XSI <EM>curses</EM> standard, Issue 4,  described  the  soft-key  functions,
-       with some differences from SVr4 <EM>curses</EM>:
+       X/Open  Curses,  Issue  4,  describes  these   functions,   with   some
+       differences from SVr4 <EM>curses</EM>:
 
-       <STRONG>o</STRONG>   It  added  functions like the SVr4 attribute-manipulation functions
-           <STRONG>slk_attron</STRONG>,  <STRONG>slk_attroff</STRONG>,  <STRONG>slk_attrset</STRONG>,  but   which   use   <STRONG>attr_t</STRONG>
-           parameters  (rather  than  <STRONG>chtype</STRONG>),  along  with  a  reserved  <EM>opts</EM>
+       <STRONG>o</STRONG>   X/Open   added   functions  like  the  SVr4  attribute-manipulation
+           functions <STRONG>slk_attron</STRONG>, <STRONG>slk_attroff</STRONG>, and <STRONG>slk_attrset</STRONG>, but  which  use
+           <EM>attr</EM><STRONG>_</STRONG><EM>t</EM>  parameters (rather than <EM>chtype</EM>), along with a reserved <EM>opts</EM>
            parameter.
 
            Two of these new functions (unlike  the  SVr4  functions)  have  no
            provision for color: <STRONG>slk_attr_on</STRONG> and <STRONG>slk_attr_off</STRONG>.
 
-           The third function (<STRONG>slk_attr_set</STRONG>) has a color-pair parameter.
+           The third function (<STRONG>slk_attr_set</STRONG>) has a color pair parameter.
 
-       <STRONG>o</STRONG>   It added <STRONG>const</STRONG> qualifiers to parameters (unnecessarily), and
+       <STRONG>o</STRONG>   It added <EM>const</EM> qualifiers to parameters (unnecessarily), and
 
        <STRONG>o</STRONG>   It added <STRONG>slk_color</STRONG>.
 
 
        The function <STRONG>slk_attr</STRONG> was added by <EM>ncurses</EM> in 1996.
 
-       X/Open  <EM>curses</EM>  does  not  specify a limit for the number of colors and
-       color pairs which a terminal can support.  However, in its use of <STRONG>short</STRONG>
+       X/Open  Curses  does  not  specify a limit for the number of colors and
+       color pairs which a terminal can support.  However, in its use of <EM>short</EM>
        for  the  parameters,  it carries over SVr4's implementation detail for
        the compiled terminfo database, which uses signed 16-bit numbers.  This
        implementation  provides extended versions of those functions which use
-       <STRONG>int</STRONG> parameters, allowing applications to use larger  color-  and  pair-
+       <EM>int</EM> parameters, allowing applications to use larger  color-  and  pair-
        numbers.
 
 
          <STRONG>slk_attrset</STRONG>
          <STRONG>slk_start</STRONG>
 
-       X/Open <EM>curses</EM> added these:
+       X/Open Curses added these:
          <STRONG>slk_attr_off</STRONG>
          <STRONG>slk_attr_on</STRONG>
          <STRONG>slk_attr_set</STRONG>
 
 
 
-ncurses 6.4                       2023-11-25                      <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                      <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
@@ -321,8 +323,8 @@ ncurses 6.4                       2023-11-25                      <STRONG><A HRE
 <ul>
 <li><a href="#h3-Initialization">Initialization</a></li>
 <li><a href="#h3-Labels">Labels</a></li>
-<li><a href="#h3-Screen-updates">Screen updates</a></li>
-<li><a href="#h3-Video-attributes">Video attributes</a></li>
+<li><a href="#h3-Screen-Updates">Screen Updates</a></li>
+<li><a href="#h3-Video-Attributes">Video Attributes</a></li>
 <li><a href="#h3-Colors">Colors</a></li>
 </ul>
 </li>
index 0171617220fda52b3ee31c177dec19cda7d07a42..7386953567cf597e495c5d2fa8d7669476e2ce4b 100644 (file)
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_sp_funcs.3x,v 1.44 2023/11/25 15:48:03 tom Exp @
+  * @Id: curs_sp_funcs.3x,v 1.45 2023/12/16 20:32:22 tom Exp @
   * ***************************************************************************
   * ***************************************************************************
   * ***************************************************************************
 <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>curs_sp_funcs 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_sp_funcs 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_sp_funcs 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_sp_funcs 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG>
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
        This  implementation  can  be  configured to provide a set of functions
        which improve the ability to manage multiple screens.  This feature can
-       be added to any of the configurations supported by ncurses; it adds new
+       be added to any of the configurations supported by <EM>ncurses</EM>; it adds new
        entrypoints without changing the meaning of any of the existing ones.
 
 
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       These routines are specific to ncurses.  They  were  not  supported  on
+       These routines are specific to <EM>ncurses</EM>.  They  were  not  supported  on
        Version 7, BSD or System V implementations.  It is recommended that any
-       code   depending   on   ncurses   extensions   be   conditioned   using
+       code   depending   on   <EM>ncurses</EM>   extensions   be   conditioned   using
        <EM>NCURSES</EM><STRONG>_</STRONG><EM>SP</EM><STRONG>_</STRONG><EM>FUNCS</EM>.
 
 
 
 
 
-ncurses 6.4                       2023-11-25                 <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                 <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index ef3f0cd8dabd56bad33b8014cd7bce48cf00d2c6..85c315547c8d62b844b9aac4f5f6b1f9f87c495b 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_termcap.3x,v 1.74 2023/12/02 20:49:04 tom Exp @
+  * @Id: curs_termcap.3x,v 1.76 2023/12/18 00:22:30 tom Exp @
+  * See &lt;https://minnie.tuhs.org/cgi-bin/utree.pl?file=2BSD/src/\
+  *   termlib/termcap.c&gt;.
+  * See https://www.oreilly.com/openbook/opensources/book/kirkmck.html
+  * for much BSD release history.
+  * https://minnie.tuhs.org/cgi-bin/utree.pl?file=1BSD/s7/ttycap.c
+  * https://minnie.tuhs.org/cgi-bin/utree.pl?file=1BSD/man7/ttycap.7
+  * https://minnie.tuhs.org/cgi-bin/utree.pl?file=2BSD/src/termlib/
+  * https://minnie.tuhs.org/cgi-bin/utree.pl?file=2BSD/bin/etc/termcap
+  * https://minnie.tuhs.org/cgi-bin/utree.pl?file=3BSD/usr/src/lib/\
+  *   libtermlib/
+  * https://minnie.tuhs.org/cgi-bin/utree.pl?file=3BSD/usr/man/man3/\
+  *   termlib.3
+  * ...except in the source tree...
+  * https://minnie.tuhs.org/cgi-bin/utree.pl?file=4BSD/usr/src/lib/\
+  *   libtermlib/makefile
+  * Observe the `tncktc()`, `tnamatch()`, `tskip()`, and `tdecode()`
+  * entry points disappearing from termcap.c.
+  * 2BSD became a branch retaining support for non-virtual memory
+  * systems (like the PDP-11) whereas most BSD development focused on
+  * the VAX and other VM-enabled systems starting with 3BSD.
+  * This man page previously located a termcap.h in 2BSD, but that may
+  * be confusion arising from its backport to 2.9BSD (and still present
+  * in surviving sources for 2.11BSD, the "end of the line" for that
+  * branch's development).
+  * Observe the copyright notice in
+  *   https://minnie.tuhs.org/cgi-bin/utree.pl?file=4.3BSD/usr/contrib/\
+  *     jove/Makefile
+  * --much too late for 2BSD (1979).
 -->
 <!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>curs_termcap 3x 2023-12-02 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_termcap 3x 2023-12-17 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_termcap 3x 2023-12-02 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_termcap 3x 2023-12-17 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>                 Library calls                <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
 
        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
        <STRONG>#include</STRONG> <STRONG>&lt;term.h&gt;</STRONG>
 
-       <STRONG>extern</STRONG> <STRONG>char</STRONG> <STRONG>PC;</STRONG>
-       <STRONG>extern</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>UP;</STRONG>
-       <STRONG>extern</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>BC;</STRONG>
-       <STRONG>extern</STRONG> <STRONG>short</STRONG> <STRONG>ospeed;</STRONG>
+       <STRONG>char</STRONG> <STRONG>PC;</STRONG>
+       <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>UP;</STRONG>
+       <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>BC;</STRONG>
+       <STRONG>short</STRONG> <STRONG>ospeed;</STRONG>
 
        <STRONG>int</STRONG> <STRONG>tgetent(char</STRONG> <STRONG>*</STRONG><EM>bp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>name</EM><STRONG>);</STRONG>
        <STRONG>int</STRONG> <STRONG>tgetflag(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>id</EM><STRONG>);</STRONG>
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
-       These routines are included as a conversion aid for programs  that  use
-       the  <EM>termcap</EM>  library.  Their parameters are the same, but the routines
-       are emulated using the <EM>terminfo</EM> database.  Thus, they can only be  used
-       to  query  the  capabilities  of entries for which a terminfo entry has
-       been compiled.
+       <EM>ncurses</EM>  provides  the  foregoing  variables   and   functions   as   a
+       compatibility layer for programs that use the <EM>termcap</EM> library.  The API
+       is the same, but behavior is  emulated  using  the  <EM>terminfo</EM>  database.
+       Thus,  it  can  be  used  only  to  query  the capabilities of terminal
+       database entries for which a <EM>terminfo</EM> entry has been compiled.
 
 
 </PRE><H3><a name="h3-Initialization">Initialization</a></H3><PRE>
-       The <STRONG>tgetent</STRONG> routine loads the entry for <EM>name</EM>.  It returns:
+       <STRONG>tgetent</STRONG> loads the terminal database entry for <EM>name</EM>; see <STRONG><A HREF="term.7.html">term(7)</A></STRONG>.   This
+       must be done before calling any of the other functions.  It returns:
 
-          1  on success,
+          1   on success,
 
-          0  if there is no such entry (or that it is a generic  type,  having
-             too little information for curses applications to run), and
+          0   if  there is no such entry (or if the matching entry describes a
+              generic terminal,  having  too  little  information  for  <EM>curses</EM>
+              applications to run), and
 
-          -1 if the terminfo database could not be found.
+          -1  if the <EM>terminfo</EM> database could not be found.
 
-       This differs from the <EM>termcap</EM> library in two ways:
+       This implementation differs from those of historical <EM>termcap</EM> libraries.
 
-          <STRONG>o</STRONG>   The  emulation  ignores  the  buffer  pointer  <EM>bp</EM>.   The <EM>termcap</EM>
-              library would store a copy of the terminal  description  in  the
-              area  referenced  by  this pointer.  However, ncurses stores its
-              terminal descriptions in compiled binary form, which is not  the
-              same thing.
+          <STRONG>o</STRONG>   <EM>ncurses</EM>  ignores  the  buffer  pointer  <EM>bp</EM>,  as do other <EM>termcap</EM>
+              implementations conforming to  portions  of  X/Open  Curses  now
+              withdrawn.   The  BSD  <EM>termcap</EM> library would store a copy of the
+              terminal  type  description  in  the  area  referenced  by  this
+              pointer.   <EM>ncurses</EM> stores terminal type descriptions in compiled
+              form, which is not the same thing.
 
-          <STRONG>o</STRONG>   There is a difference in return codes.  The <EM>termcap</EM> library does
-              not check if the terminal description is marked with the <EM>generic</EM>
-              capability,   or   if   the  terminal  description  has  cursor-
-              addressing.
+          <STRONG>o</STRONG>   The meanings of the  return  values  differ.   The  BSD  <EM>termcap</EM>
+              library  does not check whether the terminal type description is
+              marked  with  the  <STRONG>gn</STRONG>  (<STRONG>generic</STRONG>)  capability,  nor  whether  the
+              terminal  type  description  supports  an  addressable cursor, a
+              property essential for any <EM>curses</EM> implementation to operate.
 
 
-</PRE><H3><a name="h3-Capability-Values">Capability Values</a></H3><PRE>
-       The <STRONG>tgetflag</STRONG> routine gets the boolean entry for <EM>id</EM>, or zero  if  it  is
-       not available.
-
-       The  <STRONG>tgetnum</STRONG>  routine gets the numeric entry for <EM>id</EM>, or -1 if it is not
+</PRE><H3><a name="h3-Retrieving-Capability-Values">Retrieving Capability Values</a></H3><PRE>
+       <STRONG>tgetflag</STRONG> reports the Boolean entry  for  <EM>id</EM>,  or  zero  if  it  is  not
        available.
 
-       The <STRONG>tgetstr</STRONG> routine returns the string entry for <EM>id</EM>, or zero if  it  is
-       not  available.   Use  <STRONG>tputs</STRONG>  to  output the returned string.  The <EM>area</EM>
-       parameter is used as follows:
+       <STRONG>tgetnum</STRONG> obtains the numeric entry for <EM>id</EM>, or -1 if it is not available.
+
+       <STRONG>tgetstr</STRONG>  returns  the  string  entry  for  <EM>id</EM>,  or  <STRONG>NULL</STRONG>  if  it is not
+       available.   Use  <STRONG>tputs</STRONG>  to  output  the  string  returned.   The  <EM>area</EM>
+       parameter is used as follows.
 
           <STRONG>o</STRONG>   It is assumed to be the address of a pointer to a buffer managed
               by the calling application.
 
-          <STRONG>o</STRONG>   However,  ncurses  checks  to  ensure that <STRONG>area</STRONG> is not NULL, and
-              also that the resulting buffer pointer is not NULL.   If  either
-              check fails, the <EM>area</EM> parameter is ignored.
+          <STRONG>o</STRONG>   However, <EM>ncurses</EM> checks to ensure that <EM>area</EM>  is  not  <STRONG>NULL</STRONG>,  and
+              also  that  the resulting buffer pointer is not <STRONG>NULL</STRONG>.  If either
+              check fails, <EM>area</EM> is ignored.
 
-          <STRONG>o</STRONG>   If  the  checks succeed, ncurses also copies the return value to
-              the buffer pointed to by  <EM>area</EM>,  and  the  <EM>area</EM>  value  will  be
-              updated to point past the null ending this value.
+          <STRONG>o</STRONG>   If the checks succeed, <EM>ncurses</EM> also copies the return  value  to
+              the  buffer  pointed to by <EM>area</EM>, and the library updates <EM>area</EM> to
+              point past the null character terminating this value.
 
-          <STRONG>o</STRONG>   The   return   value  itself  is  an  address  in  the  terminal
-              description which is loaded into memory.
+          <STRONG>o</STRONG>   The return value itself is  an  address  in  the  terminal  type
+              description loaded into memory.
 
-       Only the first two characters of the <STRONG>id</STRONG> parameter of <STRONG>tgetflag</STRONG>,  <STRONG>tgetnum</STRONG>
-       and <STRONG>tgetstr</STRONG> are compared in lookups.
 
+</PRE><H3><a name="h3-Applying-String-Capabilities">Applying String Capabilities</a></H3><PRE>
+       String capabilities can be parameterized; see subsection "Parameterized
+       Strings" in  <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.  <STRONG>tgoto</STRONG> applies its second and third arguments
+       to  the  parametric  placeholders in the capability stored in the first
+       argument.
 
-</PRE><H3><a name="h3-Formatting-Capabilities">Formatting Capabilities</a></H3><PRE>
-       The <STRONG>tgoto</STRONG> routine expands the given capability using the parameters.
-
-       <STRONG>o</STRONG>   Because  the  capability may have padding characters, the output of
-           <STRONG>tgoto</STRONG> should be passed to  <STRONG>tputs</STRONG>  rather  than  some  other  output
-           function such as <STRONG>printf(3)</STRONG>.
+       <STRONG>o</STRONG>   The capability may contain padding specifications;  see  subsection
+           "Delays  and  Padding"  of <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.  The output of <STRONG>tgoto</STRONG> should
+           thus be passed to <STRONG>tputs</STRONG> rather than some other output function such
+           as <STRONG>printf(3)</STRONG>.
 
        <STRONG>o</STRONG>   While  <STRONG>tgoto</STRONG>  is  assumed  to  be used for the two-parameter cursor
-           positioning  capability,  termcap  applications  also  use  it  for
+           positioning  capability,  <EM>termcap</EM>  applications  also  use  it  for
            single-parameter capabilities.
 
-           Doing  this  shows  a  quirk  in <STRONG>tgoto</STRONG>: most hardware terminals use
+           Doing  so  reveals  a  quirk  in <STRONG>tgoto</STRONG>: most hardware terminals use
            cursor addressing with <EM>row</EM> first, but the  original  developers  of
-           the termcap interface chose to put the <EM>column</EM> parameter first.  The
-           <STRONG>tgoto</STRONG> function swaps the order of parameters.  It  does  this  also
-           for  calls  requiring  only  a single parameter.  In that case, the
-           first parameter is merely a placeholder.
+           the  <EM>termcap</EM>  interface  chose  to  put  the <EM>col</EM> (column) parameter
+           first.  The <STRONG>tgoto</STRONG> function swaps the order of parameters.  It  does
+           this  even  for  calls  requiring only a single parameter.  In that
+           case, the first parameter is merely a placeholder.
 
-       <STRONG>o</STRONG>   Normally the ncurses library is compiled with terminfo support.  In
-           that  case,  <STRONG>tgoto</STRONG>  uses  an  internal version of <STRONG><A HREF="curs_terminfo.3x.html">tparm(3x)</A></STRONG> (a more
-           capable formatter).
+       <STRONG>o</STRONG>   Normally the <EM>ncurses</EM>  library  is  compiled  without  full  <EM>termcap</EM>
+           support.  In that case, <STRONG>tgoto</STRONG> uses an internal version of <STRONG><A HREF="curs_terminfo.3x.html">tparm(3x)</A></STRONG>
+           (a more capable function).
 
-           With terminfo support, <STRONG>tgoto</STRONG> is able to use some  of  the  terminfo
-           features,  but  not  all.   In  particular,  it allows only numeric
+           Because it uses <STRONG>tparm</STRONG> internally, <STRONG>tgoto</STRONG> is able to use  some  <EM>term-</EM>
+           <EM>info</EM>  features, but not all.  In particular, it allows only numeric
            parameters; <STRONG>tparm</STRONG> supports string parameters.
 
            However, <STRONG>tparm</STRONG> is not  a  <EM>termcap</EM>  feature,  and  portable  <EM>termcap</EM>
            applications should not rely upon its availability.
 
-       The  <STRONG>tputs</STRONG>  routine  is described on the <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> manual page.
-       It can retrieve capabilities by either termcap or terminfo name.
+       <STRONG>tputs</STRONG>  is described in <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>.  It can retrieve capabilities
+       by either <EM>termcap</EM> or <EM>terminfo</EM> name.
 
 
 </PRE><H3><a name="h3-Global-Variables">Global Variables</a></H3><PRE>
-       The variables <STRONG>PC</STRONG>, <STRONG>UP</STRONG> and <STRONG>BC</STRONG> are set by <STRONG>tgetent</STRONG> to the terminfo  entry's
+       The variables <STRONG>PC</STRONG>, <STRONG>UP</STRONG> and <STRONG>BC</STRONG> are set by <STRONG>tgetent</STRONG> to the <EM>terminfo</EM>  entry's
        data for <STRONG>pad_char</STRONG>, <STRONG>cursor_up</STRONG> and <STRONG>backspace_if_not_bs</STRONG>, respectively.  <STRONG>UP</STRONG>
-       is not used by ncurses.  <STRONG>PC</STRONG> is used in the <STRONG>tdelay_output</STRONG> function.   <STRONG>BC</STRONG>
-       is  used in the <STRONG>tgoto</STRONG> emulation.  The variable <STRONG>ospeed</STRONG> is set by ncurses
-       in a system-specific coding to reflect the terminal speed.
+       is not used by <EM>ncurses</EM>.  <STRONG>PC</STRONG> is used by <STRONG><A HREF="curs_util.3x.html">delay_output(3x)</A></STRONG>.  <STRONG>BC</STRONG> is used by
+       <STRONG>tgoto</STRONG> emulation.  The variable <STRONG>ospeed</STRONG> is set by <EM>ncurses</EM> using a system-
+       specific encoding to indicate the terminal's data rate.
 
 
 </PRE><H3><a name="h3-Releasing-Memory">Releasing Memory</a></H3><PRE>
-       The termcap functions provide no  means  for  freeing  memory,  because
-       legacy  termcap  implementations used only the buffer areas provided by
-       the caller via <STRONG>tgetent</STRONG>  and  <STRONG>tgetstr</STRONG>.   Those  buffers  are  unused  in
-       terminfo.
+       The <EM>termcap</EM> functions provide  no  means  of  freeing  memory,  because
+       legacy  <EM>termcap</EM>  implementations used only the buffer areas provided by
+       the caller via <STRONG>tgetent</STRONG> and <STRONG>tgetstr</STRONG>.  Those buffers are unused in  <EM>term-</EM>
+       <EM>info</EM>.
+
+       By  contrast,  <EM>terminfo</EM>  allocates  memory.   It  uses <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG> to
+       obtain the data  used  by  <STRONG>tgetent</STRONG>  and  the  functions  that  retrieve
+       capability values.  One could use
+              del_curterm(cur_term);
+       to  free  this  memory,  but  there  is an additional complication with
+       <EM>ncurses</EM>.  It uses a fixed-size pool of storage locations, one per value
+       of the <EM>TERM</EM> environment variable when <STRONG>tgetent</STRONG> is called.  The <STRONG>screen(1)</STRONG>
+       program relies upon this arrangement to improve its performance.
 
-       On  the  other  hand,  terminfo allocates memory.  It uses <STRONG>setupterm</STRONG> to
-       retrieve the data used  by  <STRONG>tgetent</STRONG>  and  the  functions  which  return
-       capability values such as <STRONG>tgetstr</STRONG>.  One could use
+       An application that uses only the <EM>termcap</EM>  functions,  not  the  higher
+       level  <EM>curses</EM>  API,  could  release  the  memory using <STRONG><A HREF="curs_terminfo.3x.html">del_curterm(3x)</A></STRONG>,
+       because the pool is freed using other functions; see <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>.
 
-               <STRONG>del_curterm(cur_term);</STRONG>
 
+</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
+       The return values of  <STRONG>tgetent</STRONG>,  <STRONG>tgetflag</STRONG>,  <STRONG>tgetname</STRONG>,  and  <STRONG>tgetstr</STRONG>  are
+       documented above.
 
-       to  free  this  memory,  but  there  is an additional complication with
-       ncurses.  It uses a fixed-size  <EM>pool</EM>  of  storage  locations,  one  per
-       setting  of  the  <EM>TERM</EM>  variable when <STRONG>tgetent</STRONG> is called.  The <STRONG>screen(1)</STRONG>
-       program relies upon this arrangement, to improve its performance.
+       <STRONG>tgoto</STRONG> returns <STRONG>NULL</STRONG> on error.  Error conditions include:
 
-       An application which uses only the low-level  termcap  functions  could
-       free  the  memory  using  <STRONG>del_curterm</STRONG>,  because the pool is freed using
-       other functions (see <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>).
+       <STRONG>o</STRONG>   uninitialized state (<STRONG>tgetent</STRONG> was not called successfully),
 
+       <STRONG>o</STRONG>   <EM>cap</EM> being a null pointer,
 
-</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       Except where explicitly noted, routines that return an  integer  return
-       <STRONG>ERR</STRONG>  upon  failure  and <STRONG>OK</STRONG> (SVr4 only specifies "an integer value other
-       than <STRONG>ERR</STRONG>") upon successful completion.
+       <STRONG>o</STRONG>   <EM>cap</EM> referring to a canceled capability,
 
-       Routines that return pointers return <STRONG>NULL</STRONG> on error.
+       <STRONG>o</STRONG>   <EM>cap</EM>  being  a  capability  with  string-valued  parameters (a <EM>term-</EM>
+           <EM>info</EM>-only feature), and
 
-       A few special cases apply:
+       <STRONG>o</STRONG>   <EM>cap</EM> being a capability with more than two parameters.
 
-       <STRONG>o</STRONG>   If the terminal database has not been initialized, these return  an
-           error.
+       See <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> regarding <STRONG>tputs</STRONG>.
 
-       <STRONG>o</STRONG>   The  calls  with  a  string  parameter  (<STRONG>tgoto</STRONG>, <STRONG>tputs</STRONG>) check if the
-           string is null, or cancelled.  Those return an error.
 
-       <STRONG>o</STRONG>   A call to <STRONG>tgoto</STRONG> using a capability with  string  parameters  is  an
-           error.
-
-       <STRONG>o</STRONG>   A call to <STRONG>tgoto</STRONG> using a capability with more than two parameters is
-           an error.
+</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
+       <EM>ncurses</EM> compares only the first two characters of the <EM>id</EM>  parameter  of
+       <STRONG>tgetflag</STRONG>, <STRONG>tgetnum</STRONG>, and <STRONG>tgetstr</STRONG> to the capability names in the database.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
+       These  functions  are  no  longer standardized (and the variables never
+       were); <EM>ncurses</EM> provides them  to  support  legacy  applications.   They
+       should not be used in new programs.
 
-</PRE><H3><a name="h3-Standards">Standards</a></H3><PRE>
-       These functions are provided for supporting  legacy  applications,  and
-       should not be used in new programs:
 
-       <STRONG>o</STRONG>   The  XSI  Curses  standard,  Issue  4  describes  these  functions.
-           However, they are marked TO BE WITHDRAWN  and  may  be  removed  in
-           future versions.
+</PRE><H3><a name="h3-Standards">Standards</a></H3><PRE>
+       <STRONG>o</STRONG>   X/Open   Curses,   Issue  4,  Version  2  (1996),  describes  these
+           functions.  However, they are marked "TO BE WITHDRAWN".
 
-       <STRONG>o</STRONG>   X/Open Curses, Issue 5 (December 2007) marked the termcap interface
-           (along with <STRONG>vwprintw</STRONG> and <STRONG>vwscanw</STRONG>) as withdrawn.
+       <STRONG>o</STRONG>   X/Open Curses, Issue 7 (2009) marked the <EM>termcap</EM>  interface  (along
+           with <STRONG>vwprintw</STRONG> and <STRONG>vwscanw</STRONG>) as withdrawn.
 
-       Neither the XSI Curses standard nor the SVr4 man pages  documented  the
-       return  values  of  <STRONG>tgetent</STRONG>  correctly,  though  all three were in fact
-       returned ever since SVr1.  In particular, an omission in the XSI Curses
-       documentation  has  been misinterpreted to mean that <STRONG>tgetent</STRONG> returns <STRONG>OK</STRONG>
+       Neither  X/Open  Curses  nor  the  SVr4 man pages documented the return
+       values of <STRONG>tgetent</STRONG> correctly, though all three  were  in  fact  returned
+       ever  since  SVr1.   In  particular,  an  omission in the X/Open Curses
+       specification has been misinterpreted to mean that <STRONG>tgetent</STRONG>  returns  <STRONG>OK</STRONG>
        or  <STRONG>ERR</STRONG>.   Because  the  purpose  of  these  functions  is  to  provide
-       compatibility  with  the  <EM>termcap</EM> library, that is a defect in XCurses,
-       Issue 4, Version 2 rather than in ncurses.
-
-
-</PRE><H3><a name="h3-Compatibility-with-BSD-Termcap">Compatibility with BSD Termcap</a></H3><PRE>
-       External  variables  are  provided  for  support  of  certain   termcap
-       applications.  However, termcap applications' use of those variables is
-       poorly documented, e.g., not distinguishing between input  and  output.
-       In  particular, some applications are reported to declare and/or modify
-       <STRONG>ospeed</STRONG>.
-
-       The comment that only the first two characters of the <STRONG>id</STRONG> parameter  are
-       used escapes many application developers.  The original BSD 4.2 termcap
-       library (and historical relics thereof) did not require a trailing null
-       NUL  on  the  parameter  name  passed to <STRONG>tgetstr</STRONG>, <STRONG>tgetnum</STRONG> and <STRONG>tgetflag</STRONG>.
-       Some applications assume that the termcap interface  does  not  require
-       the  trailing  NUL  for  the parameter name.  Taking into account these
-       issues:
-
-       <STRONG>o</STRONG>   As a special case,  <STRONG>tgetflag</STRONG>  matched  against  a  single-character
-           identifier   provided   that   was  at  the  end  of  the  terminal
-           description.  You should not rely upon this  behavior  in  portable
-           programs.   This  implementation  disallows matches against single-
-           character capability names.
-
-       <STRONG>o</STRONG>   This implementation disallows  matches  by  the  termcap  interface
-           against  extended  capability  names  which  are  longer  than  two
-           characters.
-
-       The BSD termcap function <STRONG>tgetent</STRONG> returns the text of a termcap entry in
-       the  buffer  passed  as an argument.  This library (like other terminfo
-       implementations) does not store terminal descriptions as text.  It sets
-       the buffer contents to a null-terminated string.
-
-
-</PRE><H3><a name="h3-Other-Compatibility">Other Compatibility</a></H3><PRE>
-       This  library includes a termcap.h header, for compatibility with other
-       implementations.  But the header  is  rarely  used  because  the  other
+       compatibility with the <EM>termcap</EM> library, that  is  a  defect  in  X/Open
+       Curses, Issue 4, Version 2 rather than in <EM>ncurses</EM>.
+
+   <STRONG>Compatibility</STRONG> <STRONG>with</STRONG> <STRONG>BSD</STRONG> <EM>termcap</EM>
+       Externally  visible  variables  are  provided  for  support  of certain
+       <EM>termcap</EM>  applications.   However,  their  correct   usage   is   poorly
+       documented; for example, it is unclear when reading and writing them is
+       meaningful.  In particular, some applications are reported  to  declare
+       and/or modify <STRONG>ospeed</STRONG>.
+
+       The  constraint  that only the first two characters of the <EM>id</EM> parameter
+       are used escapes many application developers.  The BSD <EM>termcap</EM>  library
+       did  not require a trailing null character on the capability identifier
+       passed to <STRONG>tgetstr</STRONG>,  <STRONG>tgetnum</STRONG>,  and  <STRONG>tgetflag</STRONG>.   Some  applications  thus
+       assume  that  the  <EM>termcap</EM> interface does not require the trailing null
+       character for the capability identifier.
+
+       <STRONG>o</STRONG>   <EM>ncurses</EM> disallows matches by the <EM>termcap</EM> interface against extended
+           capability   names   that  are  longer  than  two  characters;  see
+           <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
+
+       The BSD <EM>termcap</EM> function <STRONG>tgetent</STRONG> returns the text of a <EM>termcap</EM> entry in
+       the  buffer  passed  as an argument.  This library, like other <EM>terminfo</EM>
+       implementations, does not store terminal type descriptions as text.  It
+       sets the buffer contents to a null-terminated string.
+
+
+</PRE><H3><a name="h3-Header-File">Header File</a></H3><PRE>
+       This  library  includes a <EM>termcap.h</EM> header for compatibility with other
+       implementations, but the  header  is  rarely  used  because  the  other
        implementations are not strictly compatible.
 
-       The original BSD termcap (through 4.3BSD) had no header file which gave
-       function prototypes, because that was a feature of ANSI C.  BSD termcap
-       was  written  several  years before C was standardized.  However, there
-       were two different termcap.h header files in the BSD sources:
 
-       <STRONG>o</STRONG>   One was used internally by the <STRONG>jove</STRONG> editor in 2BSD through  4.4BSD.
-           It defined global symbols for the termcap variables which it used.
+</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+       Bill  Joy  originated  a  forerunner  of <EM>termcap</EM> called "ttycap", dated
+       September 1977, and released in 1BSD (March 1978).  It used many of the
+       same  function  names  as the later <EM>termcap</EM>, such as <STRONG>tgetent</STRONG>, <STRONG>tgetflag</STRONG>,
+       <STRONG>tgetnum</STRONG>, and <STRONG>tgetstr</STRONG>.
+
+       A clear descendant, the <EM>termlib</EM> library, followed in 2BSD  (May  1979),
+       adding <STRONG>tgoto</STRONG> and <STRONG>tputs</STRONG>.  The former applied at that time only to cursor
+       positioning  capabilities,  thus  the  overly  specific  name.   Little
+       changed  in 3BSD (late 1979) except the addition of test programs and a
+       <EM>termlib</EM> man page, which documented the API shown in section  "SYNOPSIS"
+       above.
+
+       4BSD  (November 1980) renamed <EM>termlib</EM> to <EM>termcap</EM> and added another test
+       program.  The library remained much the same though 4.3BSD (June 1986).
+       4.4BSD-Lite (June 1994) refactored it but left the API unchanged.
+
+       Function  prototypes  were  a feature of the forthcoming ANSI C (1989).
+       Thus the library provided no header file declaring them.  Nevertheless,
+       the  BSD  sources  included  two  different <EM>termcap.h</EM> header files over
+       time.
 
-       <STRONG>o</STRONG>   The  other  appeared in 4.4BSD Lite Release 2 (mid-1993) as part of
-           <EM>libedit</EM> (also known as the  <EM>editline</EM>  library).   The  CSRG  source
-           history  shows that this was added in mid-1992.  The <EM>libedit</EM> header
-           file was used  internally,  as  a  convenience  for  compiling  the
-           <EM>editline</EM>  library.   It declared function prototypes, but no global
-           variables.
+       <STRONG>o</STRONG>   One was used internally by <STRONG>jove(1)</STRONG> from 4.3BSD onward.  It delcared
+           global symbols for the <EM>termcap</EM> variables that it used.
 
-       The header file from <EM>libedit</EM> was added to NetBSD's termcap  library  in
-       mid-1994.
+       <STRONG>o</STRONG>   The  other appeared in 4.4BSD-Lite Release 2 (June 1995) as part of
+           <EM>libedit</EM> (also known as the <EM>editline</EM> library).  CSRG source  history
+           shows that this was added in mid-1992.  The <EM>libedit</EM> header file was
+           used  internally  as  a  convenience  for  compiling  the  <EM>editline</EM>
+           library.  It declared function prototypes, but no global variables.
+           This header file was added to NetBSD's <EM>termcap</EM> library in mid-1994.
 
-       Meanwhile,  GNU  termcap  was under development, starting in 1990.  The
-       first release (termcap 1.0) in 1991 included a termcap.h  header.   The
-       second  release  (termcap 1.1) in September 1992 modified the header to
-       use <STRONG>const</STRONG> for the function prototypes in the  header  where  one  would
-       expect  the  parameters  to be read-only.  This was a difference versus
-       the original BSD termcap.  The prototype for <STRONG>tputs</STRONG> also  differed,  but
-       in that instance, it was <EM>libedit</EM> which differed from BSD termcap.
+       Meanwhile, GNU <EM>termcap</EM> began development in 1990.   Its  first  release
+       (1.0)  in  1991  included  a  <EM>termcap.h</EM>  header.   Its  second (1.1) in
+       September 1992 modified the  header  to  use  <EM>const</EM>  for  the  function
+       prototypes  in  the  header where one would expect the parameters to be
+       read-only.   BSD  <EM>termcap</EM>  did  not.   The  prototype  for  <STRONG>tputs</STRONG>  also
+       differed,  but  in that instance, it was <EM>libedit</EM> that differed from BSD
+       <EM>termcap</EM>.
 
-       A copy of GNU termcap 1.3 was bundled with <EM>bash</EM> in mid-1993, to support
-       the <STRONG>readline(3)</STRONG> library.
+       GNU <EM>termcap</EM> 1.3 was bundled  with  <EM>bash</EM>  in  mid-1993  to  support  the
+       <STRONG>readline(3)</STRONG> library.
 
-       A termcap.h file was provided in ncurses 1.8.1 (November  1993).   That
-       reflected influence by <STRONG>emacs(1)</STRONG> (rather than <STRONG>jove(1)</STRONG>) and GNU termcap:
+       <EM>ncurses</EM>  1.8.1 (November 1993) provided a <EM>termcap.h</EM> file.  It reflected
+       influence  from  GNU  <EM>termcap</EM>  and  <STRONG>emacs(1)</STRONG>  (rather  than   <STRONG>jove(1)</STRONG>),
+       providing the following interface:
 
-       <STRONG>o</STRONG>   it provided declarations for a few global symbols used by <STRONG>emacs</STRONG>
+       <STRONG>o</STRONG>   global symbols used by <EM>emacs</EM>,
 
-       <STRONG>o</STRONG>   it provided function prototypes (using <STRONG>const</STRONG>).
+       <STRONG>o</STRONG>   <EM>const</EM>-qualified function prototypes, and
 
-       <STRONG>o</STRONG>   a prototype for <STRONG>tparam</STRONG> (a GNU termcap feature) was provided.
+       <STRONG>o</STRONG>   a prototype for <STRONG>tparam</STRONG>, a GNU <EM>termcap</EM> feature.
 
-       Later (in mid-1996) the <STRONG>tparam</STRONG> function was removed from ncurses.  As a
-       result, there are differences between any of the four  implementations,
-       which  must  be  taken into account by programs which can work with all
-       termcap library interfaces.
+       Later  (in mid-1996) the <STRONG>tparam</STRONG> function was removed from <EM>ncurses</EM>.  Any
+       two of the four implementations thus differ, and programs  that  intend
+       to work with all <EM>termcap</EM> library interfaces must account for that fact.
 
 
 </PRE><H2><a name="h2-BUGS">BUGS</a></H2><PRE>
-       If you call <STRONG>tgetstr</STRONG> to fetch  <STRONG>ca</STRONG>  or  any  other  parameterized  string
-       capability,  be aware that it is returned in <EM>terminfo</EM> notation, not the
-       older and not-quite-compatible <EM>termcap</EM> notation.  This does  not  cause
-       problems  if  all  you  do  with  it is call <STRONG>tgoto</STRONG> or <STRONG>tparm</STRONG>, which both
-       expand <EM>terminfo</EM>-style strings as <EM>terminfo</EM> does.  (The  <STRONG>tgoto</STRONG>  function,
-       if  configured  to  support  <EM>termcap,</EM>  checks  if  the string is indeed
-       <EM>terminfo</EM>-style by looking for "<STRONG>%p</STRONG>" parameters or  "<STRONG>&lt;</STRONG>...<STRONG>&gt;</STRONG>"  delays,  and
-       invokes  a  <EM>termcap</EM>-style  parser  if  the  string  appears  not to use
-       <EM>terminfo</EM> syntax.)
-
-       Because <EM>terminfo</EM>'s syntax for padding in  string  capabilities  differs
+       If  you  call  <STRONG>tgetstr</STRONG>  to  fetch  <STRONG>ca</STRONG> or any other parameterized string
+       capability, be aware that it is returned in <EM>terminfo</EM> notation, not  the
+       older  and  not-quite-compatible <EM>termcap</EM> notation.  This does not cause
+       problems if all you do with it is  call  <STRONG>tgoto</STRONG>  or  <STRONG>tparm</STRONG>,  which  both
+       expand  <EM>terminfo</EM>-style  strings  as  <EM>terminfo</EM>  does.   (If  <EM>ncurses</EM>  is
+       configured to support <EM>termcap,</EM> <STRONG>tgoto</STRONG> checks whether the string is <EM>term-</EM>
+       <EM>info</EM>-style  by  looking  for  "<STRONG>%p</STRONG>"  parameters  or  "<STRONG>&lt;</STRONG>...<STRONG>&gt;</STRONG>" delays, and
+       invokes a <EM>termcap</EM>-style parser if the string appears not to  use  <EM>term-</EM>
+       <EM>info</EM> syntax.)
+
+       Because  <EM>terminfo</EM>'s  syntax  for padding in string capabilities differs
        from <EM>termcap</EM>'s, users can be surprised.
 
-       <STRONG>o</STRONG>   <STRONG>tputs("50")</STRONG>  in  a <EM>terminfo</EM> system transmits "50" rather than busy-
+       <STRONG>o</STRONG>   <STRONG>tputs("50")</STRONG> in a <EM>terminfo</EM> system transmits "50" rather  than  busy-
            waiting for 50 milliseconds.
 
-       <STRONG>o</STRONG>   However, if <EM>ncurses</EM> is configured to support <EM>termcap</EM>, it  may  also
+       <STRONG>o</STRONG>   However,  if  <EM>ncurses</EM> is configured to support <EM>termcap</EM>, it may also
            have been configured to support BSD-style padding.
 
-           In  that  case,  <STRONG>tputs</STRONG>  inspects  strings passed to it, looking for
+           In that case, <STRONG>tputs</STRONG> inspects strings  passed  to  it,  looking  for
            digits at the beginning of the string.
 
-           <STRONG>tputs("50")</STRONG> in a <EM>termcap</EM> system may busy-wait for  50  milliseconds
+           <STRONG>tputs("50")</STRONG>  in  a <EM>termcap</EM> system may busy-wait for 50 milliseconds
            rather than transmitting "50".
 
-       <EM>termcap</EM>   has   nothing   analogous  to  <EM>terminfo</EM>'s  <STRONG>sgr</STRONG>  string.   One
-       consequence is that <EM>termcap</EM> applications assume that <STRONG>me</STRONG> (equivalent  to
-       <EM>terminfo</EM>'s <STRONG>sgr0</STRONG> capability) does not reset the alternate character set.
-       <EM>ncurses</EM> checks for, and modifies the  data  shared  with,  the  <EM>termcap</EM>
-       interface to accommodate the latter's limitation in this respect.
+       <EM>termcap</EM>  has  nothing  analogous  to  <EM>terminfo</EM>'s   <STRONG>sgr</STRONG>   string.    One
+       consequence  is  that <EM>termcap</EM> applications assume that "<STRONG>me</STRONG>" (equivalent
+       to <EM>terminfo</EM>'s <STRONG>sgr0</STRONG> capability) does not reset the  alternate  character
+       set.   <EM>ncurses</EM>  checks  for,  and  modifies  the  data shared with, the
+       <EM>termcap</EM> interface  to  accommodate  the  latter's  limitation  in  this
+       respect.
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG>putc(3)</STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG>putc(3)</STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
        https://invisible-island.net/ncurses/tctest.html
 
 
 
-ncurses 6.4                       2023-12-02                  <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
+ncurses 6.4                       2023-12-17                  <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
@@ -366,20 +406,21 @@ ncurses 6.4                       2023-12-02                  <STRONG><A HREF="c
 <li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
 <ul>
 <li><a href="#h3-Initialization">Initialization</a></li>
-<li><a href="#h3-Capability-Values">Capability Values</a></li>
-<li><a href="#h3-Formatting-Capabilities">Formatting Capabilities</a></li>
+<li><a href="#h3-Retrieving-Capability-Values">Retrieving Capability Values</a></li>
+<li><a href="#h3-Applying-String-Capabilities">Applying String Capabilities</a></li>
 <li><a href="#h3-Global-Variables">Global Variables</a></li>
 <li><a href="#h3-Releasing-Memory">Releasing Memory</a></li>
 </ul>
 </li>
 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
+<li><a href="#h2-NOTES">NOTES</a></li>
 <li><a href="#h2-PORTABILITY">PORTABILITY</a>
 <ul>
 <li><a href="#h3-Standards">Standards</a></li>
-<li><a href="#h3-Compatibility-with-BSD-Termcap">Compatibility with BSD Termcap</a></li>
-<li><a href="#h3-Other-Compatibility">Other Compatibility</a></li>
+<li><a href="#h3-Header-File">Header File</a></li>
 </ul>
 </li>
+<li><a href="#h2-HISTORY">HISTORY</a></li>
 <li><a href="#h2-BUGS">BUGS</a></li>
 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
 </ul>
index 5b6c90aec1c0673752b567d7e674572da08a05a1..eb8b33e4929407bae967d6b56fc0df921b5e84ee 100644 (file)
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_terminfo.3x,v 1.122 2023/12/03 00:10:20 tom Exp @
+  * @Id: curs_terminfo.3x,v 1.123 2023/12/16 21:11:53 tom Exp @
   * ***************************************************************************
   * ***************************************************************************
   * ***************************************************************************
 <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>curs_terminfo 3x 2023-12-02 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_terminfo 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_terminfo 3x 2023-12-02 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_terminfo 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
 
@@ -86,9 +86,9 @@
        <STRONG>int</STRONG> <STRONG>del_curterm(TERMINAL</STRONG> <STRONG>*</STRONG><EM>oterm</EM><STRONG>);</STRONG>
        <STRONG>int</STRONG> <STRONG>restartterm(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>term</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>filedes</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>errret</EM><STRONG>);</STRONG>
 
-       <STRONG>char</STRONG> <STRONG>*tparm(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
-            <EM>or</EM>
-       <STRONG>char</STRONG> <STRONG>*tparm(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>long</STRONG> <EM>p1</EM> <EM>...</EM> <STRONG>long</STRONG> <EM>p9</EM><STRONG>);</STRONG>
+       <STRONG>char</STRONG> <STRONG>*tparm(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> ...<STRONG>);</STRONG>
+            <EM>/*</EM> <EM>or</EM> <EM>*/</EM>
+       <STRONG>char</STRONG> <STRONG>*tparm(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>long</STRONG> <EM>p1</EM> ... <STRONG>long</STRONG> <EM>p9</EM><STRONG>);</STRONG>
 
        <STRONG>int</STRONG> <STRONG>tputs(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>affcnt</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>(*</STRONG><EM>putc</EM><STRONG>)(int));</STRONG>
        <STRONG>int</STRONG> <STRONG>putp(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
        <STRONG>int</STRONG> <STRONG>tigetnum(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG>
        <STRONG>char</STRONG> <STRONG>*tigetstr(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG>
 
-       <STRONG>char</STRONG> <STRONG>*tiparm(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
+       <STRONG>char</STRONG> <STRONG>*tiparm(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> ...<STRONG>);</STRONG>
 
        <EM>/*</EM> <EM>extensions</EM> <EM>*/</EM>
        <STRONG>char</STRONG> <STRONG>*tiparm_s(int</STRONG> <EM>expected</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>mask</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
 
        <STRONG>o</STRONG>   <EM>attrs</EM> of type <STRONG>attr_t</STRONG> for the attributes and
 
-       <STRONG>o</STRONG>   <EM>pair</EM> of type <STRONG>short</STRONG> for the color-pair number.
+       <STRONG>o</STRONG>   <EM>pair</EM> of type <STRONG>short</STRONG> for the color pair number.
 
        The <STRONG>vid_attr</STRONG> and <STRONG>vid_puts</STRONG> routines are designed to  use  the  attribute
        constants with the <STRONG>WA_</STRONG> prefix.
        The  formatting functions <STRONG>tparm</STRONG> and <STRONG>tiparm</STRONG> extend the storage allocated
        by <STRONG>setupterm</STRONG>:
 
-       <STRONG>o</STRONG>   the "static" terminfo variables [a-z].  Before ncurses  6.3,  those
-           were  shared by all screens.  With ncurses 6.3, those are allocated
+       <STRONG>o</STRONG>   the "static" terminfo variables [a-z].  Before <EM>ncurses</EM>  6.3,  those
+           were  shared by all screens.  With <EM>ncurses</EM> 6.3, those are allocated
            per screen.  See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for details.
 
-       <STRONG>o</STRONG>   to improve performance, ncurses 6.3 caches the result of  analyzing
+       <STRONG>o</STRONG>   to improve performance, <EM>ncurses</EM> 6.3 caches the result of  analyzing
            terminfo  strings  for  their parameter types.  That is stored as a
            binary tree referenced from the <STRONG>TERMINAL</STRONG> structure.
 
        non-portable.  All other functions are as described by X/Open.
 
 
-</PRE><H3><a name="h3-Compatibility-macros">Compatibility macros</a></H3><PRE>
+</PRE><H3><a name="h3-Compatibility-Macros">Compatibility Macros</a></H3><PRE>
        This  implementation  provides  a  few  macros  for  compatibility with
        systems before SVr4 (see  <EM>HISTORY</EM>).   Those  include  <STRONG>crmode</STRONG>,  <STRONG>fixterm</STRONG>,
        <STRONG>gettmode</STRONG>, <STRONG>nocrmode</STRONG>, <STRONG>resetterm</STRONG>, <STRONG>saveterm</STRONG>, and <STRONG>setterm</STRONG>.
        those symbols as macros for BSD compatibility.
 
 
-</PRE><H3><a name="h3-Legacy-data">Legacy data</a></H3><PRE>
+</PRE><H3><a name="h3-Legacy-Data">Legacy Data</a></H3><PRE>
        <STRONG>setupterm</STRONG> copies the terminal name to the array <STRONG>ttytype</STRONG>.  This  is  not
        part of X/Open Curses, but is assumed by some applications.
 
        stored in the arrays described here.
 
 
-</PRE><H3><a name="h3-Output-buffering">Output buffering</a></H3><PRE>
-       Older  versions  of  <STRONG>ncurses</STRONG> assumed that the file descriptor passed to
+</PRE><H3><a name="h3-Output-Buffering">Output Buffering</a></H3><PRE>
+       Older  versions  of  <EM>ncurses</EM> assumed that the file descriptor passed to
        <STRONG>setupterm</STRONG> from <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG> uses buffered I/O, and would write to
        the  corresponding  stream.   In  addition  to  the limitation that the
        terminal was left  in  block-buffered  mode  on  exit  (like  System  V
-       curses),  it  was  problematic because <STRONG>ncurses</STRONG> did not allow a reliable
+       curses),  it  was  problematic because <EM>ncurses</EM> did not allow a reliable
        way to cleanup on receiving SIGTSTP.
 
        The current version (ncurses6) uses output buffers managed directly  by
-       <STRONG>ncurses</STRONG>.  Some of the low-level functions described in this manual page
+       <EM>ncurses</EM>.  Some of the low-level functions described in this manual page
        write to the standard output.  They are  not  signal-safe.   The  high-
-       level  functions  in  <STRONG>ncurses</STRONG> use alternate versions of these functions
+       level  functions  in  <EM>ncurses</EM> use alternate versions of these functions
        using the more reliable buffering scheme.
 
 
-</PRE><H3><a name="h3-Function-prototypes">Function prototypes</a></H3><PRE>
+</PRE><H3><a name="h3-Function-Prototypes">Function Prototypes</a></H3><PRE>
        The X/Open Curses prototypes  are  based  on  the  SVr4  curses  header
        declarations,  which  were  defined at the same time the C language was
        first standardized in the late 1980s.
            In  response  to review comments by Thomas E. Dickey, X/Open Curses
            Issue 7 proposed the <STRONG>tiparm</STRONG> function in mid-2009.
 
-           While <STRONG>tiparm</STRONG> is always provided in ncurses, the older form is  only
+           While <STRONG>tiparm</STRONG> is always provided in <EM>ncurses</EM>, the older form is  only
            available  as  a build-time configuration option.  If not specially
            configured, <STRONG>tparm</STRONG> is the same as <STRONG>tiparm</STRONG>.
 
            parameters.   However,  only a few terminfo capabilities use string
            parameters (e.g., the ones used for programmable function keys).
 
-           The ncurses library checks usage of these capabilities, and returns
+           The <EM>ncurses</EM> library checks usage of these capabilities, and returns
            an  error  if  the capability mishandles string parameters.  But it
            cannot check if a calling program provides  strings  in  the  right
            places for the <STRONG>tparm</STRONG> calls.
            The  <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>  program  checks  its use of these capabilities with a
            table, so that it calls <STRONG>tparm</STRONG> correctly.
 
-
-</PRE><H3><a name="h3-Special-TERM-treatment">Special TERM treatment</a></H3><PRE>
+   <STRONG>Special</STRONG> <EM>TERM</EM> <STRONG>treatment</STRONG>
        If configured to use the terminal-driver, e.g., for the MinGW port,
 
        <STRONG>o</STRONG>   <STRONG>setupterm</STRONG> interprets a missing/empty <EM>TERM</EM> variable as  the  special
            string.
 
 
-</PRE><H3><a name="h3-Other-portability-issues">Other portability issues</a></H3><PRE>
+</PRE><H3><a name="h3-Other-Portability-Issues">Other Portability Issues</a></H3><PRE>
        In  System  V Release 4, <STRONG>set_curterm</STRONG> has an <STRONG>int</STRONG> return type and returns
        <STRONG>OK</STRONG> or <STRONG>ERR</STRONG>.  We have chosen to implement the X/Open Curses semantics.
 
 
        X/Open  notes  that after calling <STRONG>mvcur</STRONG>, the curses state may not match
        the actual terminal state, and that an  application  should  touch  and
-       refresh  the  window before resuming normal curses calls.  Both <STRONG>ncurses</STRONG>
+       refresh  the  window before resuming normal curses calls.  Both <EM>ncurses</EM>
        and System V Release 4 curses implement <STRONG>mvcur</STRONG>  using  the  SCREEN  data
        allocated  in either <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG>.  So though it is documented as
        a terminfo function, <STRONG>mvcur</STRONG> is really a curses  function  which  is  not
 
 
 
-ncurses 6.4                       2023-12-02                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
@@ -724,12 +723,11 @@ ncurses 6.4                       2023-12-02                 <STRONG><A HREF="cu
 <li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li>
 <li><a href="#h2-PORTABILITY">PORTABILITY</a>
 <ul>
-<li><a href="#h3-Compatibility-macros">Compatibility macros</a></li>
-<li><a href="#h3-Legacy-data">Legacy data</a></li>
-<li><a href="#h3-Output-buffering">Output buffering</a></li>
-<li><a href="#h3-Function-prototypes">Function prototypes</a></li>
-<li><a href="#h3-Special-TERM-treatment">Special TERM treatment</a></li>
-<li><a href="#h3-Other-portability-issues">Other portability issues</a></li>
+<li><a href="#h3-Compatibility-Macros">Compatibility Macros</a></li>
+<li><a href="#h3-Legacy-Data">Legacy Data</a></li>
+<li><a href="#h3-Output-Buffering">Output Buffering</a></li>
+<li><a href="#h3-Function-Prototypes">Function Prototypes</a></li>
+<li><a href="#h3-Other-Portability-Issues">Other Portability Issues</a></li>
 </ul>
 </li>
 <li><a href="#h2-HISTORY">HISTORY</a></li>
index 748c5fe550e1f353a4e00ab5631dbe63cabfba59..b7e6078eb20074c17c837e60272a8f43a5f4324c 100644 (file)
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_threads.3x,v 1.49 2023/11/25 14:09:12 tom Exp @
+  * @Id: curs_threads.3x,v 1.50 2023/12/16 20:32:22 tom Exp @
   * ***************************************************************************
   * ***************************************************************************
 -->
 <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>curs_threads 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_threads 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_threads 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_threads 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>                 Library calls                <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>
 
 
 
 
-ncurses 6.4                       2023-11-25                  <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                  <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 3a5baa2d564e0664c2af6e3053154dfa2d1bdf29..295fa5216690aac169ea36310d3413bcb1be24fc 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_trace.3x,v 1.40 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_trace.3x,v 1.41 2023/12/16 20:50:14 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>curs_trace 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_trace 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_trace 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_trace 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>
 
@@ -76,8 +76,8 @@
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
-       The <EM>curses</EM> <EM>trace</EM> routines are used for debugging the ncurses libraries,
-       as  well  as  applications  which  use  the  ncurses  libraries.   Some
+       The <EM>curses</EM> <EM>trace</EM> routines are used for debugging the <EM>ncurses</EM> libraries,
+       as  well  as  applications  which  use  the  <EM>ncurses</EM>  libraries.   Some
        limitations apply:
 
        <STRONG>o</STRONG>   Aside from <STRONG>curses_trace</STRONG>, the other functions are normally available
            parameter  updates  the  trace mask, and returns the previous trace
            mask.
 
-           When the trace mask is nonzero, ncurses creates the file "trace" in
+           When the trace mask is nonzero, <EM>ncurses</EM> creates the file "trace" in
            the  current  directory for output.  If the file already exists, no
            tracing is done.
 
 
 
 </PRE><H3><a name="h3-Initialization">Initialization</a></H3><PRE>
-       These  functions  check  the <STRONG>NCURSES_TRACE</STRONG> environment variable, to set
+       These  functions  check  the <EM>NCURSES</EM><STRONG>_</STRONG><EM>TRACE</EM> environment variable, to set
        the tracing feature as if <STRONG>curses_trace</STRONG> was called:
 
            filter,  initscr,  new_prescr,  newterm,   nofilter,   restartterm,
 
        Because  the  command-line  utilities may call initialization functions
        such  as  <STRONG>setupterm</STRONG>,  <STRONG>tgetent</STRONG>  or  <STRONG>use_extended_names</STRONG>,  some  of  their
-       debugging output may be directed to the <EM>trace</EM> file if the <STRONG>NCURSES_TRACE</STRONG>
+       debugging output may be directed to the <EM>trace</EM> file if the <EM>NCURSES</EM><STRONG>_</STRONG><EM>TRACE</EM>
        environment variable is set:
 
        <STRONG>o</STRONG>   messages produced in the utility are written to the standard error.
 
        <STRONG>o</STRONG>   messages produced by the underlying library are written to <EM>trace</EM>.
 
-       If ncurses is built without tracing, none of the latter  are  produced,
+       If <EM>ncurses</EM> is built without tracing, none of the latter  are  produced,
        and fewer diagnostics are provided by the command-line utilities.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
        These functions are not part of the XSI interface.  Some  other  curses
        implementations  are  known  to have similar features, but they are not
-       compatible with ncurses:
+       compatible with <EM>ncurses</EM>:
 
        <STRONG>o</STRONG>   SVr4 provided <STRONG>traceon</STRONG> and <STRONG>traceoff</STRONG>, to  control  whether  debugging
            information  was  written to the "trace" file.  While the functions
            a debug-library is built.
 
            PDCurses  has  a  short description of these functions, with a note
-           that they are not present in X/Open Curses, ncurses or NetBSD.   It
+           that they are not present in X/Open Curses, <EM>ncurses</EM> or NetBSD.   It
            does  not  mention  SVr4,  but the functions' inclusion in a header
            file section labeled "Quasi-standard" hints at the origin.
 
        <STRONG>o</STRONG>   NetBSD does not provide functions  for  enabling/disabling  traces.
-           It     uses    environment    variables    <STRONG>CURSES_TRACE_MASK</STRONG>    and
-           <STRONG>CURSES_TRACE_FILE</STRONG> to  determine  what  is  traced,  and  where  the
+           It     uses    environment    variables    <EM>CURSES</EM><STRONG>_</STRONG><EM>TRACE</EM><STRONG>_</STRONG><EM>MASK</EM>    and
+           <EM>CURSES</EM><STRONG>_</STRONG><EM>TRACE</EM><STRONG>_</STRONG><EM>FILE</EM> to  determine  what  is  traced,  and  where  the
            results  are  written.  This is available only when a debug-library
            is built.
 
            The NetBSD tracing feature is undocumented.
 
-       A few ncurses functions are not  provided  when  symbol  versioning  is
+       A few <EM>ncurses</EM> functions are not  provided  when  symbol  versioning  is
        used:
 
            _nc_tracebits, _tracedump, _tracemouse
 
 
 
-ncurses 6.4                       2023-10-07                    <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                    <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index a09055b37c65e4a22476bd6eb67c7681e6dad4f8..ce1aec47f8fe0c8cc9553cdc856aaccc84df4a36 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_util.3x,v 1.90 2023/12/02 21:10:36 tom Exp @
+  * @Id: curs_util.3x,v 1.91 2023/12/16 20:32:22 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>curs_util 3x 2023-12-02 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_util 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_util 3x 2023-12-02 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_util 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>                    Library calls                   <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
 
        <STRONG>o</STRONG>   Then  it  asks  for the screen size via operating system calls.  If
            successful, it overrides the values from the terminal database.
 
-       <STRONG>o</STRONG>   Finally (unless <STRONG>use_env</STRONG> was called with <STRONG>FALSE</STRONG>  parameter),  <STRONG>ncurses</STRONG>
+       <STRONG>o</STRONG>   Finally (unless <STRONG>use_env</STRONG> was called with <STRONG>FALSE</STRONG>  parameter),  <EM>ncurses</EM>
            examines  the <EM>LINES</EM> or <EM>COLUMNS</EM> environment variables, using a value
            in those to override the  results  from  the  operating  system  or
            terminal database.
 
-           <STRONG>Ncurses</STRONG>  also  updates  the  screen  size  in response to <STRONG>SIGWINCH</STRONG>,
-           unless overridden by the <EM>LINES</EM> or <EM>COLUMNS</EM> environment variables,
+           <EM>curses</EM> also updates the screen size in response to <STRONG>SIGWINCH</STRONG>, unless
+           overridden by the <EM>LINES</EM> or <EM>COLUMNS</EM> environment variables,
 
 
 </PRE><H3><a name="h3-use_tioctl">use_tioctl</a></H3><PRE>
        The <STRONG>use_tioctl</STRONG> routine, if used, should be  called  before  <STRONG>initscr</STRONG>  or
        <STRONG>newterm</STRONG>  are  called  (because  those  compute the screen size).  After
-       <STRONG>use_tioctl</STRONG> is called with <STRONG>TRUE</STRONG> as an  argument,  <STRONG>ncurses</STRONG>  modifies  the
+       <STRONG>use_tioctl</STRONG> is called with <STRONG>TRUE</STRONG> as an  argument,  <EM>ncurses</EM>  modifies  the
        last step in its computation of screen size as follows:
 
        <STRONG>o</STRONG>   checks  if the <EM>LINES</EM> and <EM>COLUMNS</EM> environment variables are set to a
            number greater than zero.
 
-       <STRONG>o</STRONG>   for each, <STRONG>ncurses</STRONG> updates the  corresponding  environment  variable
+       <STRONG>o</STRONG>   for each, <EM>ncurses</EM> updates the  corresponding  environment  variable
            with  the  value  that it has obtained via operating system call or
            from the terminal database.
 
-       <STRONG>o</STRONG>   <STRONG>ncurses</STRONG> re-fetches the value of the environment variables  so  that
+       <STRONG>o</STRONG>   <EM>ncurses</EM> re-fetches the value of the environment variables  so  that
            it is still the environment variables which set the screen size.
 
        The <STRONG>use_env</STRONG> and <STRONG>use_tioctl</STRONG> routines combine as follows.
 
        <STRONG>o</STRONG>   the  data  written  is  a  copy  of  the  <STRONG>WINDOW</STRONG> structure, and its
            associated character cells.  The format differs between  the  wide-
-           character  (<STRONG>ncursesw</STRONG>)  and  non-wide  (<STRONG>ncurses</STRONG>) libraries.  You can
+           character  (<EM>ncursesw</EM>)  and  non-wide  (<EM>ncurses</EM>) libraries.  You can
            transfer data between the two, however.
 
        <STRONG>o</STRONG>   the retrieved window is always created as a  top-level  window  (or
 
 
 </PRE><H3><a name="h3-nofilter_use_tioctl">nofilter/use_tioctl</a></H3><PRE>
-       The  <STRONG>nofilter</STRONG>  and  <STRONG>use_tioctl</STRONG>  routines are specific to <STRONG>ncurses</STRONG>.  They
+       The  <STRONG>nofilter</STRONG>  and  <STRONG>use_tioctl</STRONG>  routines are specific to <EM>ncurses</EM>.  They
        were not supported on Version 7, BSD or System V  implementations.   It
-       is  recommended  that  any  code  depending  on  <STRONG>ncurses</STRONG>  extensions be
+       is  recommended  that  any  code  depending  on  <EM>ncurses</EM>  extensions be
        conditioned using <STRONG>NCURSES_VERSION</STRONG>.
 
 
 
        <STRONG>o</STRONG>   Most implementations simply dump the binary <STRONG>WINDOW</STRONG> structure to the
            file.   These  include SVr4 curses, NetBSD and PDCurses, as well as
-           older <STRONG>ncurses</STRONG> versions.  This implementation (as well as the X/Open
+           older <EM>ncurses</EM> versions.  This implementation (as well as the X/Open
            variant of Solaris curses, dated 1995) uses textual dumps.
 
            The  implementations  which  use  binary  dumps  use block-I/O (the
        before  initializing  curses),  this  implementation  returns   strings
        "M-^@", "M-^A", etc.
 
-       X/Open Curses documents <STRONG>unctrl</STRONG> as declared in <STRONG>&lt;unctrl.h&gt;</STRONG>, which <STRONG>ncurses</STRONG>
-       does.  However, <STRONG>ncurses</STRONG>' <STRONG>&lt;curses.h&gt;</STRONG> includes <STRONG>&lt;unctrl.h&gt;</STRONG>,  matching  the
+       X/Open Curses documents <STRONG>unctrl</STRONG> as declared in <STRONG>&lt;unctrl.h&gt;</STRONG>, which <EM>ncurses</EM>
+       does.  However, <EM>ncurses</EM>' <STRONG>&lt;curses.h&gt;</STRONG> includes <STRONG>&lt;unctrl.h&gt;</STRONG>,  matching  the
        behavior of SVr4 curses.  Other implementations may not do that.
 
 
 </PRE><H3><a name="h3-use_env_use_tioctl">use_env/use_tioctl</a></H3><PRE>
-       If  <STRONG>ncurses</STRONG>  is  configured  to provide the sp-functions extension, the
+       If  <EM>ncurses</EM>  is  configured  to provide the sp-functions extension, the
        state of <STRONG>use_env</STRONG> and <STRONG>use_tioctl</STRONG> may be  updated  before  creating  each
        <EM>screen</EM>  rather  than  once  only  (<STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG>).  This feature of
        <STRONG>use_env</STRONG> is not provided by other implementations of curses.
 
 
 
-ncurses 6.4                       2023-12-02                     <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                     <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 78a5c3021894fb4b7182f5a07dc64b1c002394a9..ed617925dfe01eeb30647559f318b31acf203dff 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_variables.3x,v 1.34 2023/11/25 14:32:36 tom Exp @
+  * @Id: curs_variables.3x,v 1.35 2023/12/16 21:05:52 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>curs_variables 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_variables 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_variables 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_variables 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>               Library calls              <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>
 
        <STRONG>int</STRONG> <STRONG>COLOR_PAIRS;</STRONG>
        <STRONG>int</STRONG> <STRONG>COLORS;</STRONG>
        <STRONG>int</STRONG> <STRONG>COLS;</STRONG>
-       <STRONG>int</STRONG> <STRONG>ESCDELAY;</STRONG>
        <STRONG>int</STRONG> <STRONG>LINES;</STRONG>
-       <STRONG>int</STRONG> <STRONG>TABSIZE;</STRONG>
        <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> <STRONG>curscr;</STRONG>
-       <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> <STRONG>newscr;</STRONG>
        <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> <STRONG>stdscr;</STRONG>
+       <EM>/*</EM> <EM>extensions</EM> <EM>*/</EM>
+       <STRONG>int</STRONG> <STRONG>ESCDELAY;</STRONG>
+       <STRONG>int</STRONG> <STRONG>TABSIZE;</STRONG>
+       <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> <STRONG>newscr;</STRONG>
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -92,7 +93,7 @@
        library.
 
 
-</PRE><H3><a name="h3-bool_-TRUE_-FALSE">bool, TRUE, FALSE</a></H3><PRE>
+</PRE><H3><a name="h3-bool_-TRUE_-FALSE"><EM>bool,</EM> TRUE, FALSE</a></H3><PRE>
        X/Open Issue 4 <EM>curses</EM>  (1996)  preceded  the  ISO  C99  and  ISO  C++98
        standards,  each of which also defined a Boolean data type.  The <EM>curses</EM>
        library requires an integral type <EM>bool</EM> and constants <STRONG>TRUE</STRONG> and <STRONG>FALSE</STRONG>  to
        values indicating failure and success, respectively.
 
 
-</PRE><H3><a name="h3-chtype">chtype</a></H3><PRE>
+</PRE><H3><a name="h3-chtype"><EM>chtype</EM></a></H3><PRE>
        The <EM>chtype</EM> integral type combines a ("narrow",  8-bit)  character  with
        attributes  encoding  the character's <EM>rendition</EM>, such as the styling of
        its  typeface  and/or  foreground  and  background  colors.   See,  for
        example, <STRONG><A HREF="curs_addch.3x.html">addch(3x)</A></STRONG>, <STRONG><A HREF="curs_attr.3x.html">attron(3x)</A></STRONG>, and <STRONG><A HREF="curs_inch.3x.html">inch(3x)</A></STRONG>.
 
 
-</PRE><H3><a name="h3-cchar_t_-attr_t">cchar_t, attr_t</a></H3><PRE>
+</PRE><H3><a name="h3-cchar_t_-attr_t"><EM>cchar_t,</EM> attr_t</a></H3><PRE>
        <EM>chtype</EM>  is  too small for the standard C library's wide-character type,
        <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM>.  <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> is a type that can accommodate an <EM>attr</EM><STRONG>_</STRONG><EM>t</EM>  and  enough
        wide  characters  to  store  what  Unicode  terms a <EM>grapheme</EM> <EM>cluster</EM> (a
 
 
 
-ncurses 6.4                       2023-11-25                <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 6adcc64a6fafd73e3c27092b208ce02e9d2429f4..763ae7c7470bd43e8ab6faaecae8b3b3495ce699 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_window.3x,v 1.43 2023/11/25 14:17:29 tom Exp @
+  * @Id: curs_window.3x,v 1.44 2023/12/16 20:32:22 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>curs_window 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_window 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_window 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_window 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
 
            X/Open  curses  does  not  even  make that check, and will delete a
            parent window which still has subwindows.
 
-       <STRONG>o</STRONG>   Since release 4.0 (1996), ncurses maintains a list of  windows  for
+       <STRONG>o</STRONG>   Since release 4.0 (1996), <EM>ncurses</EM> maintains a list of  windows  for
            each  screen,  to  ensure  that  a  window has no subwindows before
            allowing deletion.
 
-       <STRONG>o</STRONG>   NetBSD copied this feature of ncurses in 2003.
+       <STRONG>o</STRONG>   NetBSD copied this feature of <EM>ncurses</EM> in 2003.
            PDCurses follows the scheme used in Solaris X/Open curses.
 
 
 
 
 
-ncurses 6.4                       2023-11-25                   <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                   <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index c6377da3504d0c45fd589667c64ec17b66a0cfda..3f79ad1f38ce48752a4664a2c01b1670f1f318bf 100644 (file)
   * authorization.                                                           *
   ****************************************************************************
   * Author: Thomas E. Dickey 1997,1999,2000,2005
-  * @Id: default_colors.3x,v 1.47 2023/11/25 14:26:30 tom Exp @
+  * @Id: default_colors.3x,v 1.48 2023/12/16 20:32:22 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>default_colors 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>default_colors 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">default_colors 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">default_colors 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>               Library calls              <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>
 
               <EM>use</EM><STRONG>_</STRONG><EM>default</EM><STRONG>_</STRONG><EM>colors();</EM>
               <EM>assume</EM><STRONG>_</STRONG><EM>default</EM><STRONG>_</STRONG><EM>colors(-1,-1);</EM>
 
-       These are ncurses extensions.  For other curses implementations,  color
-       number  -1  does  not  mean  anything,  just  as  for  ncurses before a
+       These are <EM>ncurses</EM> extensions.  For other curses implementations,  color
+       number  -1  does  not  mean  anything,  just  as  for  <EM>ncurses</EM> before a
        successful call of <STRONG>use_default_colors</STRONG> or <STRONG>assume_default_colors</STRONG>.
 
        Other curses implementations do not  allow  an  application  to  modify
        color  pair  0.  They assume that the background is COLOR_BLACK, but do
        not ensure that the color pair 0 is painted to  match  the  assumption.
        If   your   application  does  not  use  either  <STRONG>use_default_colors</STRONG>  or
-       <STRONG>assume_default_colors</STRONG> ncurses will paint a white foreground (text) with
+       <STRONG>assume_default_colors</STRONG> <EM>ncurses</EM> will paint a white foreground (text) with
        black background for color pair 0.
 
 
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       These routines are specific to ncurses.  They  were  not  supported  on
+       These routines are specific to <EM>ncurses</EM>.  They  were  not  supported  on
        Version 7, BSD or System V implementations.  It is recommended that any
        code depending on them be conditioned using NCURSES_VERSION.
 
 
 
 
-ncurses 6.4                       2023-11-25                <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 5a0aab20174ac869a7badaaf798f1cf381c3e42f..ad69c118524fb13340cda4b6752822cd158be6dc 100644 (file)
   * authorization.                                                           *
   ****************************************************************************
   * Author: Thomas E. Dickey 1997
-  * @Id: define_key.3x,v 1.39 2023/11/25 14:26:30 tom Exp @
+  * @Id: define_key.3x,v 1.40 2023/12/16 20:32:22 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>define_key 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>define_key 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">define_key 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">define_key 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>
 
@@ -90,7 +90,7 @@
 
 
 
-ncurses 6.4                       2023-11-25                    <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                    <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index e15ca18a654bbdf87454fcf582f4545125680874..5b2722ceea02c99f28cae1eb51a84023d3112b8f 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: form.3x,v 1.50 2023/11/25 13:59:44 tom Exp @
+  * @Id: form.3x,v 1.51 2023/12/16 20:32:22 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>form 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>form 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">form 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">form 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>                         Library calls                        <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>
 
@@ -85,8 +85,8 @@
 
 </PRE><H3><a name="h3-Routine-Name-Index">Routine Name Index</a></H3><PRE>
        The  following table lists each <STRONG>form</STRONG> routine and the name of the manual
-       page on which it is described.  Routines flagged with "*" are  ncurses-
-       specific, not present in SVr4.
+       page  on  which  it  is  described.   Routines  flagged  with  "*"  are
+       <EM>ncurses</EM>-specific, not present in SVr4.
 
        <STRONG>curses</STRONG> Routine Name     Manual Page Name
        --------------------------------------------------
 
        It is not part of X/Open Curses.
 
-       Aside from ncurses, there are few implementations:
+       Aside from <EM>ncurses</EM>, there are few implementations:
 
        <STRONG>o</STRONG>   systems based on SVr4 source code, e.g., Solaris.
 
        <STRONG>o</STRONG>   NetBSD curses.
 
        A few  functions  in  this  implementation  are  extensions  added  for
-       ncurses,   but   not   provided   by   other   implementations,   e.g.,
+       <EM>ncurses</EM>,   but   not   provided   by   other   implementations,   e.g.,
        <STRONG>form_driver_w</STRONG>, <STRONG>unfocus_current_field</STRONG>.
 
 
 </PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
-       Juergen Pfeifer.  Manual pages and adaptation for ncurses  by  Eric  S.
+       Juergen Pfeifer.  Manual pages and adaptation for <EM>ncurses</EM>  by  Eric  S.
        Raymond.
 
 
 
 
 
-ncurses 6.4                       2023-11-25                          <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                          <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 0737994c120d7ad6cafce1f2e9ca2787bb8b2f15..8c1ac74c3daf7a37d1f8f8848d2f30f1f786fefc 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: form_field_buffer.3x,v 1.42 2023/11/25 13:58:47 tom Exp @
+  * @Id: form_field_buffer.3x,v 1.43 2023/12/16 20:32:22 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>form_field_buffer 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>form_field_buffer 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">form_field_buffer 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">form_field_buffer 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>            Library calls           <STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>
 
        These routines emulate the System  V  forms  library.   They  were  not
        supported on Version 7 or BSD versions.
 
-       The   <STRONG>set_max_field</STRONG>   function   checks   for   an   ncurses  extension
+       The   <STRONG>set_max_field</STRONG>   function   checks   for   an   <EM>ncurses</EM>  extension
        <STRONG>O_INPUT_FIELD</STRONG> which allows a dynamic field to shrink if the  new  limit
        is smaller than the current field size.
 
 
 
 
-ncurses 6.4                       2023-11-25             <STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16             <STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index c5d2ea72c100ec7bab2dc05b4916aa43d717e0c9..9780e0a95d824ce9490864ce1595fc0da297692d 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: form_field_validation.3x,v 1.50 2023/11/25 13:58:47 tom Exp @
+  * @Id: form_field_validation.3x,v 1.51 2023/12/16 20:32:22 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>form_field_validation 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>form_field_validation 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">form_field_validation 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">form_field_validation 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>        Library calls       <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>
 
        where <EM>a</EM>, <EM>b</EM>, <EM>c</EM>, and <EM>d</EM> are numbers in  the  range  0  to  255.   Trailing
        blanks in the buffer are ignored.  The address itself is not validated.
 
-       This  is  an ncurses extension; this field type may not be available in
+       This  is  an <EM>ncurses</EM> extension; this field type may not be available in
        other curses implementations.
 
 
 
 
 
-ncurses 6.4                       2023-11-25         <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16         <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 37e26f7f2f91f92ce67d5db91ba363cbbf558563..4ceeb10bea35f4b92a863d36b620ea63e5e528ed 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: form_page.3x,v 1.34 2023/11/25 13:58:47 tom Exp @
+  * @Id: form_page.3x,v 1.35 2023/12/16 20:32:22 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>form_page 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>form_page 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">form_page 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">form_page 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="form_page.3x.html">form_page(3x)</A></STRONG>                    Library calls                   <STRONG><A HREF="form_page.3x.html">form_page(3x)</A></STRONG>
 
        These  routines  emulate  the  System  V  forms library.  They were not
        supported on Version 7 or BSD versions.
 
-       The <STRONG>unfocus_current_field</STRONG> function is an ncurses extension.
+       The <STRONG>unfocus_current_field</STRONG> function is an <EM>ncurses</EM> extension.
 
 
 </PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
 
 
 
-ncurses 6.4                       2023-11-25                     <STRONG><A HREF="form_page.3x.html">form_page(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                     <STRONG><A HREF="form_page.3x.html">form_page(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 25d13e5d70cb8d911845f6d4f295d8a34a2bc397..fa8f050975bfd3719f19a08684a73aa433a67628 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: form_requestname.3x,v 1.32 2023/11/25 13:58:47 tom Exp @
+  * @Id: form_requestname.3x,v 1.33 2023/12/16 20:32:22 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>form_requestname 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>form_requestname 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">form_requestname 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">form_requestname 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="form_requestname.3x.html">form_requestname(3x)</A></STRONG>             Library calls            <STRONG><A HREF="form_requestname.3x.html">form_requestname(3x)</A></STRONG>
 
@@ -74,7 +74,7 @@
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       These  routines  are  specific  to ncurses.  They were not supported on
+       These  routines  are  specific  to <EM>ncurses</EM>.  They were not supported on
        Version 7, BSD or System V implementations.  It is recommended that any
        code depending on them be conditioned using NCURSES_VERSION.
 
@@ -89,7 +89,7 @@
 
 
 
-ncurses 6.4                       2023-11-25              <STRONG><A HREF="form_requestname.3x.html">form_requestname(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16              <STRONG><A HREF="form_requestname.3x.html">form_requestname(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 0939532f923c46760fb7957c2fde21b09b89b551..b3ba683a29b7fd1f03826d8accf612d817942e00 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: infocmp.1m,v 1.101 2023/12/02 20:49:04 tom Exp @
+  * @Id: infocmp.1m,v 1.102 2023/12/16 20:32:22 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>infocmp 1m 2023-12-02 ncurses 6.4 User commands</TITLE>
+<TITLE>infocmp 1m 2023-12-16 ncurses 6.4 User commands</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">infocmp 1m 2023-12-02 ncurses 6.4 User commands</H1>
+<H1 class="no-header">infocmp 1m 2023-12-16 ncurses 6.4 User commands</H1>
 <PRE>
 <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>                      User commands                     <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>
 
        that were not needed.
 
    <STRONG>Changing</STRONG> <STRONG>Databases</STRONG> <STRONG>[-A</STRONG> <EM>directory</EM>] [-B <EM>directory</EM>]
-       Like  other  <STRONG>ncurses</STRONG>  utilities,  <STRONG>infocmp</STRONG>  looks   for   the   terminal
+       Like  other  <EM>ncurses</EM>  utilities,  <STRONG>infocmp</STRONG>  looks   for   the   terminal
        descriptions   in  several  places.   You  can  use  the  <EM>TERMINFO</EM>  and
        <EM>TERMINFO</EM><STRONG>_</STRONG><EM>DIRS</EM> environment variables to override the compiled-in default
        list  of  places  to  search.   See <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, as well as the <EM>Fetching</EM>
             according to the type and the name of the  corresponding  terminal
             entry.
 
-            Before  ncurses  5.0,  the split between the <STRONG>-e</STRONG> and <STRONG>-E</STRONG> options was
+            Before  <EM>ncurses</EM>  5.0,  the split between the <STRONG>-e</STRONG> and <STRONG>-E</STRONG> options was
             not needed; but support for extended  names  required  making  the
             arrays   of  terminal  capabilities  separate  from  the  TERMTYPE
             structure.
             contents  of  two  source  files, since it excludes the inferences
             that <STRONG>infocmp</STRONG> makes to fill in missing data.
 
-       <STRONG>-V</STRONG>   reports the version of ncurses which was used in this program, and
+       <STRONG>-V</STRONG>   reports the version of <EM>ncurses</EM> which was used in this program, and
             exits.
 
        <STRONG>-v</STRONG> <EM>n</EM> prints  out  tracing  information on standard error as the program
             runs.
 
             The optional parameter <EM>n</EM> is a number  from  1  to  10,  inclusive,
-            indicating the desired level of detail of information.  If ncurses
+            indicating the desired level of detail of information.  If <EM>ncurses</EM>
             is built  without  tracing  support,  the  optional  parameter  is
             ignored.
 
        (AT&amp;T) wrote the first <STRONG>infocmp</STRONG> in early 1984, for System V Release 3.
 
        Eric Raymond  used  the  AT&amp;T  documentation  in  1995  to  provide  an
-       equivalent  <STRONG>infocmp</STRONG>  for  ncurses.   In  addition,  he  added a few new
+       equivalent  <STRONG>infocmp</STRONG>  for  <EM>ncurses</EM>.   In  addition,  he  added a few new
        features such as:
 
        <STRONG>o</STRONG>   the  <STRONG>-e</STRONG>  option,  to  support   <EM>fallback</EM>   (compiled-in)   terminal
        For a complete list, see the <EM>EXTENSIONS</EM> section.
 
        In  2010,  Roy  Marples  provided an <STRONG>infocmp</STRONG> program for NetBSD.  It is
-       less capable than the SVr4 or ncurses  versions  (e.g.,  it  lacks  the
+       less capable than the SVr4 or <EM>ncurses</EM>  versions  (e.g.,  it  lacks  the
        sorting  options  documented in X/Open), but does include the <STRONG>-x</STRONG> option
-       adapted from ncurses.
+       adapted from <EM>ncurses</EM>.
 
 
 </PRE><H2><a name="h2-BUGS">BUGS</a></H2><PRE>
 
 
 
-ncurses 6.4                       2023-12-02                       <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>
+ncurses 6.4                       2023-12-16                       <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index a77c9c4f140328f6e1a8b02096f2ce7fd89bf1e9..8f507c239a413abf31bb1626793eb487006f3f0a 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: infotocap.1m,v 1.37 2023/11/25 14:32:36 tom Exp @
+  * @Id: infotocap.1m,v 1.39 2023/12/10 14:12:43 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>infotocap 1m 2023-11-25 ncurses 6.4 User commands</TITLE>
+<TITLE>infotocap 1m 2023-12-10 ncurses 6.4 User commands</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">infotocap 1m 2023-11-25 ncurses 6.4 User commands</H1>
+<H1 class="no-header">infotocap 1m 2023-12-10 ncurses 6.4 User commands</H1>
 <PRE>
 <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>                    User commands                   <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>
 
@@ -90,7 +90,7 @@
 
 
 
-ncurses 6.4                       2023-11-25                     <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>
+ncurses 6.4                       2023-12-10                     <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 164a4e20d7db1e3fb0be0c111bd39d99f84e7b19..7bdce9de91a73374254441a1f6be48762ec27c45 100644 (file)
   * authorization.                                                           *
   ****************************************************************************
   * Author: Thomas E. Dickey 2003
-  * @Id: key_defined.3x,v 1.31 2023/11/25 14:26:30 tom Exp @
+  * @Id: key_defined.3x,v 1.32 2023/12/16 20:32:22 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>key_defined 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>key_defined 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">key_defined 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">key_defined 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>
 
@@ -83,7 +83,7 @@
 
 
 
-ncurses 6.4                       2023-11-25                   <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                   <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 382f61c3de5cb43a2fbae461a79c16cd857b9977..ddea78d3949f0534847f725b9899be2ebee833dd 100644 (file)
   * authorization.                                                           *
   ****************************************************************************
   * Author: Thomas E. Dickey 1999
-  * @Id: keybound.3x,v 1.33 2023/11/25 14:26:30 tom Exp @
+  * @Id: keybound.3x,v 1.34 2023/12/16 20:32:22 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>keybound 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>keybound 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">keybound 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">keybound 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>                     Library calls                    <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>
 
@@ -86,7 +86,7 @@
 
 
 
-ncurses 6.4                       2023-11-25                      <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                      <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 2524ae1ec9bd60eaf815fe768f49f51ec6e786dc..3f0f1f2467b3a9bc542ecc8111dc75a7b85bd337 100644 (file)
   * authorization.                                                           *
   ****************************************************************************
   * Author: Thomas E. Dickey 1997
-  * @Id: keyok.3x,v 1.37 2023/11/25 14:26:30 tom Exp @
+  * @Id: keyok.3x,v 1.38 2023/12/16 20:32:22 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>keyok 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>keyok 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">keyok 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">keyok 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>                        Library calls                       <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>
 
@@ -85,7 +85,7 @@
 
 
 
-ncurses 6.4                       2023-11-25                         <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                         <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 36cce56abebd3d998a8ac13c1ef0b6f69b0b4727..d81dc994734327df203e9580a10d4e03c8e02add 100644 (file)
   * authorization.                                                           *
   ****************************************************************************
   * Author: Thomas E. Dickey
-  * @Id: legacy_coding.3x,v 1.23 2023/11/25 14:26:30 tom Exp @
+  * @Id: legacy_coding.3x,v 1.24 2023/12/16 20:32:22 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>legacy_coding 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>legacy_coding 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">legacy_coding 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">legacy_coding 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>                Library calls               <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>
 
@@ -84,9 +84,9 @@
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       This  routine  is specific to ncurses.  It was not supported on Version
+       This  routine  is specific to <EM>ncurses</EM>.  It was not supported on Version
        7, BSD or System V implementations.  It is recommended  that  any  code
-       depending on ncurses extensions be conditioned using NCURSES_VERSION.
+       depending on <EM>ncurses</EM> extensions be conditioned using NCURSES_VERSION.
 
 
 </PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
@@ -98,7 +98,7 @@
 
 
 
-ncurses 6.4                       2023-11-25                 <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                 <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index b7a59ed43aea03fee8e9f34cdc5e1809a19156f7..b3f14cee217e8155ad19a1c31d9454d295cd2262 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: menu.3x,v 1.41 2023/11/25 13:59:44 tom Exp @
+  * @Id: menu.3x,v 1.42 2023/12/16 20:32:22 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>menu 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>menu 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">menu 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">menu 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>                         Library calls                        <STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>
 
 
        It is not part of X/Open Curses.
 
-       Aside from ncurses, there are few implementations:
+       Aside from <EM>ncurses</EM>, there are few implementations:
 
        <STRONG>o</STRONG>   systems based on SVr4 source code, e.g., Solaris.
 
 
 
 </PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
-       Juergen Pfeifer.  Manual pages and adaptation for ncurses  by  Eric  S.
+       Juergen Pfeifer.  Manual pages and adaptation for <EM>ncurses</EM>  by  Eric  S.
        Raymond.
 
 
 
 
 
-ncurses 6.4                       2023-11-25                          <STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                          <STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 14f0dbd58d3bd2f54ede5a51bfc71b8590eb2d42..57e11543163e6b49ec64191233ceb8cb98d622eb 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: menu_driver.3x,v 1.43 2023/11/25 13:58:47 tom Exp @
+  * @Id: menu_driver.3x,v 1.44 2023/12/16 20:32:22 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>menu_driver 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>menu_driver 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">menu_driver 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">menu_driver 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="menu_driver.3x.html">menu_driver(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="menu_driver.3x.html">menu_driver(3x)</A></STRONG>
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
        These routines emulate the  System  V  menu  library.   They  were  not
        supported  on  Version 7 or BSD versions.  The support for mouse events
-       is ncurses specific.
+       is <EM>ncurses</EM> specific.
 
 
 </PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
 
 
 
-ncurses 6.4                       2023-11-25                   <STRONG><A HREF="menu_driver.3x.html">menu_driver(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                   <STRONG><A HREF="menu_driver.3x.html">menu_driver(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 1b567167c37b7d905a1b77e2091780bb786aebd4..8b4d4d47132a5b54a017f03c4feadb7b61de2cac 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: menu_requestname.3x,v 1.30 2023/11/25 13:58:47 tom Exp @
+  * @Id: menu_requestname.3x,v 1.31 2023/12/16 20:32:22 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>menu_requestname 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>menu_requestname 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">menu_requestname 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">menu_requestname 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="menu_requestname.3x.html">menu_requestname(3x)</A></STRONG>             Library calls            <STRONG><A HREF="menu_requestname.3x.html">menu_requestname(3x)</A></STRONG>
 
@@ -74,7 +74,7 @@
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       These  routines  are  specific  to ncurses.  They were not supported on
+       These  routines  are  specific  to <EM>ncurses</EM>.  They were not supported on
        Version 7, BSD or System V implementations.  It is recommended that any
        code depending on them be conditioned using NCURSES_VERSION.
 
@@ -89,7 +89,7 @@
 
 
 
-ncurses 6.4                       2023-11-25              <STRONG><A HREF="menu_requestname.3x.html">menu_requestname(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16              <STRONG><A HREF="menu_requestname.3x.html">menu_requestname(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 5623415371d6c2370b54638f55732ddef9f62fd1..1521ee4c6edbbf5c8763749eecdb71ff626ee93f 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: menu_spacing.3x,v 1.34 2023/11/25 13:58:47 tom Exp @
+  * @Id: menu_spacing.3x,v 1.35 2023/12/16 20:32:22 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>menu_spacing 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>menu_spacing 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">menu_spacing 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">menu_spacing 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="menu_spacing.3x.html">menu_spacing(3x)</A></STRONG>                 Library calls                <STRONG><A HREF="menu_spacing.3x.html">menu_spacing(3x)</A></STRONG>
 
@@ -98,7 +98,7 @@
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       These routines are specific to ncurses.  They  were  not  supported  on
+       These routines are specific to <EM>ncurses</EM>.  They  were  not  supported  on
        Version 7, BSD or System V implementations.  It is recommended that any
        code depending on them be conditioned using NCURSES_VERSION.
 
 
 
 
-ncurses 6.4                       2023-11-25                  <STRONG><A HREF="menu_spacing.3x.html">menu_spacing(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                  <STRONG><A HREF="menu_spacing.3x.html">menu_spacing(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 0d05e802d1f0be808a4dc48a2b2d1ae059a096f3..5054afdce0c94f5178a17263781bcdb81ac2a643 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: ncurses.3x,v 1.185 2023/12/03 00:14:35 tom Exp @
+  * @Id: ncurses.3x,v 1.187 2023/12/17 23:44:14 tom Exp @
+  * X/Open Curses Issue 7 assumes some optimization will be done, but
+  * does not mandate it in any way.
 -->
 <!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>ncurses 3x 2023-12-02 ncurses 6.4 Library calls</TITLE>
+<TITLE>ncurses 3x 2023-12-17 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">ncurses 3x 2023-12-02 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">ncurses 3x 2023-12-17 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>                      Library calls                     <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
-       The  <STRONG>ncurses</STRONG>  library  routines  give  the  user a terminal-independent
+       The  <EM>ncurses</EM>  library  routines  give  the  user a terminal-independent
        method of updating  character  screens  with  reasonable  optimization.
-       This  implementation  is  "new  curses"  (ncurses)  and is the approved
+       This  implementation  is  "new  curses"  (<EM>ncurses</EM>)  and is the approved
        replacement for 4.4BSD classic curses,  which  has  been  discontinued.
-       This describes <STRONG>ncurses</STRONG> version 6.4 (patch 20231202).
+       This describes <EM>ncurses</EM> version 6.4 (patch 20231217).
 
-       The  <STRONG>ncurses</STRONG>  library emulates the curses library of System V Release 4
+       The  <EM>ncurses</EM>  library emulates the curses library of System V Release 4
        Unix ("SVr4"), and XPG4 (X/Open Portability Guide) curses  (also  known
        as  XSI  curses).   XSI  stands for X/Open System Interfaces Extension.
-       The <STRONG>ncurses</STRONG> library is freely redistributable in source form.
+       The <EM>ncurses</EM> library is freely redistributable in source form.
 
        <EM>ncurses</EM> man pages employ several sections to clarify matters  of  usage
        and interoperability with other <EM>curses</EM> implementations.
        directory) that describe curses  actions.   See  also  the  section  on
        <STRONG>ALTERNATE</STRONG> <STRONG>CONFIGURATIONS</STRONG>.
 
-       The   <STRONG>ncurses</STRONG>   package   supports:  overall  screen,  window  and  pad
+       The   <EM>ncurses</EM>   package   supports:  overall  screen,  window  and  pad
        manipulation; output to  windows  and  pads;  reading  terminal  input;
        control  over terminal and <STRONG>curses</STRONG> input and output options; environment
        query routines; color manipulation; use of soft  label  keys;  terminfo
        Initialization" of <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
 
 
-</PRE><H3><a name="h3-Datatypes">Datatypes</a></H3><PRE>
-       The  <STRONG>ncurses</STRONG>  library  permits  manipulation of data structures, called
-       <EM>windows</EM>,  which  can  be  thought  of  as  two-dimensional  arrays   of
-       characters  representing all or part of a CRT screen.  A default window
-       called <STRONG>stdscr</STRONG>, which is the size of the terminal screen,  is  supplied.
-       Others may be created with <STRONG>newwin</STRONG>.
-
-       Note  that  <STRONG>curses</STRONG>  does not handle overlapping windows, that's done by
-       the <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG> library.  This means that you can either  use  <STRONG>stdscr</STRONG>  or
-       divide  the  screen  into  tiled  windows  and not using <STRONG>stdscr</STRONG> at all.
-       Mixing the two will result in unpredictable, and undesired, effects.
-
-       Windows are referred to by variables declared as <STRONG>WINDOW</STRONG> <STRONG>*</STRONG>.  These  data
-       structures  are  manipulated with routines described here and elsewhere
-       in the <STRONG>ncurses</STRONG> manual pages.  Among those, the most basic routines  are
-       <STRONG>move</STRONG>  and  <STRONG>addch</STRONG>.  More general versions of these routines are included
-       with names beginning with <STRONG>w</STRONG>, allowing the user  to  specify  a  window.
-       The routines not beginning with <STRONG>w</STRONG> affect <STRONG>stdscr</STRONG>.
-
-       After  using  routines  to  manipulate a window, <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG> is called,
-       telling <STRONG>curses</STRONG> to make the user's CRT screen  look  like  <STRONG>stdscr</STRONG>.   The
-       characters  in  a  window  are  actually of type <STRONG>chtype</STRONG>, (character and
-       attribute data) so that other information about the character may  also
-       be stored with each character.
+</PRE><H3><a name="h3-Overview">Overview</a></H3><PRE>
+       A  <EM>curses</EM>  library abstracts the terminal screen by representing all or
+       part of it as a <EM>WINDOW</EM> data structure.  A <EM>window</EM> is a rectangular  grid
+       of  character  cells,  addressed  by row and column coordinates (<EM>y</EM>, <EM>x</EM>),
+       with the upper left corner as (0, 0).  A window called <STRONG>stdscr</STRONG>, the same
+       size  as  the terminal screen, is always available.  Create others with
+       <STRONG><A HREF="curs_window.3x.html">newwin(3x)</A></STRONG>.
+
+       A <EM>curses</EM> library does not manage overlapping windows.   (See  <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG>
+       if  you  desire this.)  You can either use <STRONG>stdscr</STRONG> to manage one screen-
+       filling window, or tile the screen into non-overlapping windows and not
+       use   <STRONG>stdscr</STRONG>  at  all.   Mixing  the  two  approaches  will  result  in
+       unpredictable, and undesired, effects.
+
+       Functions permit manipulation of a window and  the  <EM>cursor</EM>  identifying
+       the  cell  within  it  at  which  the next output operation will occur.
+       Among those, the most basic are <STRONG><A HREF="curs_move.3x.html">move(3x)</A></STRONG> and <STRONG><A HREF="curs_addch.3x.html">addch(3x)</A></STRONG>: these place the
+       cursor  and  write  a  character  to  <STRONG>stdscr</STRONG>, respectively.  As a rule,
+       window-addressing functions feature names  prefixed  (or  infixed,  see
+       below) with "w"; these allow the user to specify a pointer to a <EM>WINDOW.</EM>
+       Counterparts not thus prefixed (or  infixed)  affect  <STRONG>stdscr</STRONG>.   Because
+       moving  the  cursor  prior  to  another  operation is so common, <EM>curses</EM>
+       generally also provides functions with a "mv" prefix as a  convenience.
+       Thus,  the library defines all of <STRONG>addch</STRONG>, <STRONG>waddch</STRONG>, <STRONG>mvaddch</STRONG>, and <STRONG>mvwaddch</STRONG>.
+       When both prefixes are present, the order  of  arguments  is  a  <EM>WINDOW</EM>
+       pointer first, then a <EM>y</EM> and <EM>x</EM> coordinate pair.
+
+       Updating   the  terminal  screen  with  every  <EM>curses</EM>  call  can  cause
+       unpleasant flicker or inefficient use of the communications channel  to
+       the  device.   Therefore,  after using <EM>curses</EM> functions to accumulate a
+       set of desired updates  that  make  sense  to  present  together,  call
+       <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>  to  tell  the  library to make the user's screen look like
+       <STRONG>stdscr</STRONG>.  <EM>ncurses</EM> <EM>optimizes</EM> its output by computing a minimal number  of
+       operations  to mutate the screen from its state at the previous refresh
+       to the new one.  Effective optimization  demands  accurate  information
+       about  the  terminal  device: the management of such information is the
+       province of the <STRONG><A HREF="curs_terminfo.3x.html">terminfo(3x)</A></STRONG> API, a feature of  every  standard  <EM>curses</EM>
+       implementation.
 
        Special windows called <EM>pads</EM> may also be manipulated.  These are windows
-       which are not constrained to the size of the screen and whose  contents
-       need   not   be   completely  displayed.   See  <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>  for  more
-       information.
-
-       In addition to drawing characters on the screen, video  attributes  and
-       colors  may  be  supported,  causing  the characters to show up in such
-       modes as underlined, in reverse video, or in color  on  terminals  that
-       support  such  display  enhancements.   Line  drawing characters may be
-       specified to be output.  On input, <STRONG>curses</STRONG> is  also  able  to  translate
-       arrow  and  function  keys  that  transmit escape sequences into single
-       values.  The video  attributes,  line  drawing  characters,  and  input
-       values  use names, defined in <STRONG>&lt;curses.h&gt;</STRONG>, such as <STRONG>A_REVERSE</STRONG>, <STRONG>ACS_HLINE</STRONG>,
-       and <STRONG>KEY_LEFT</STRONG>.
-
-
-</PRE><H3><a name="h3-Environment-variables">Environment variables</a></H3><PRE>
-       If the environment variables <EM>LINES</EM> and  <EM>COLUMNS</EM>  are  set,  or  if  the
-       program   is  executing  in  a  window  environment,  line  and  column
-       information in  the  environment  will  override  information  read  by
-       <EM>terminfo</EM>.   This  would  affect a program running in an AT&amp;T 630 layer,
-       for  example,  where  the  size  of  a  screen   is   changeable   (see
-       <STRONG>ENVIRONMENT</STRONG>).
-
-       If  the  environment  variable  <EM>TERMINFO</EM>  is defined, any program using
-       <STRONG>curses</STRONG> checks for a local terminal definition before  checking  in  the
-       standard  place.   For  example,  if  <EM>TERM</EM>  is set to <STRONG>att4424</STRONG>, then the
-       compiled terminal definition is found in
-
-           <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
-
-       (The <STRONG>a</STRONG> is copied from the first letter of <STRONG>att4424</STRONG> to avoid creation  of
-       huge  directories.)   However,  if  <EM>TERMINFO</EM>  is  set to <STRONG>$HOME/myterms</STRONG>,
-       <STRONG>curses</STRONG> first checks
-
-           <STRONG>$HOME/myterms/a/att4424</STRONG>,
-
-       and if that fails, it then checks
-
-           <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
-
-       This is useful for developing experimental definitions  or  when  write
-       permission in <STRONG>/usr/share/terminfo</STRONG> is not available.
-
-       The integer variables <STRONG>LINES</STRONG> and <STRONG>COLS</STRONG> are defined in <STRONG>&lt;curses.h&gt;</STRONG> and will
-       be filled in by <STRONG>initscr</STRONG> with the size of  the  screen.   The  constants
-       <STRONG>TRUE</STRONG> and <STRONG>FALSE</STRONG> have the values <STRONG>1</STRONG> and <STRONG>0</STRONG>, respectively.
-
-       The  <STRONG>curses</STRONG>  routines also define the <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> variable <STRONG>curscr</STRONG> which is
-       used for certain low-level operations like  clearing  and  redrawing  a
-       screen  containing  garbage.   The  <STRONG>curscr</STRONG>  can  be  used in only a few
-       routines.
-
-
-</PRE><H3><a name="h3-Routine-and-Argument-Names">Routine and Argument Names</a></H3><PRE>
-       Many <STRONG>curses</STRONG> routines have two or more versions.  The routines  prefixed
-       with <EM>w</EM> require a window argument.  The routines prefixed with <EM>p</EM> require
-       a pad argument.  Those without a prefix generally use <STRONG>stdscr</STRONG>.
-
-       The routines prefixed with <STRONG>mv</STRONG> require a <EM>y</EM> and <EM>x</EM> coordinate to  move  to
-       before performing the appropriate action.  The <STRONG>mv</STRONG> routines imply a call
-       to <STRONG>move</STRONG> before the call to the other routine.  The coordinate <EM>y</EM>  always
-       refers  to  the row (of the window), and <EM>x</EM> always refers to the column.
-       The upper left-hand corner is always (0,0), not (1,1).
-
-       The routines prefixed with <STRONG>mvw</STRONG> take both a window argument and <EM>x</EM> and  <EM>y</EM>
-       coordinates.   The  window  argument  is  always  specified  before the
-       coordinates.
-
-       In each case, <EM>win</EM> is the window affected, and <EM>pad</EM> is the pad  affected;
-       <EM>win</EM> and <EM>pad</EM> are always pointers to type <STRONG>WINDOW</STRONG>.
-
-       Option  setting  routines require a Boolean flag <EM>bf</EM> with the value <STRONG>TRUE</STRONG>
-       or <STRONG>FALSE</STRONG>; <EM>bf</EM> is always of type <STRONG>bool</STRONG>.  Most of the data  types  used  in
-       the  library  routines,  such  as  <STRONG>WINDOW</STRONG>, <STRONG>SCREEN</STRONG>, <STRONG>bool</STRONG>, and <STRONG>chtype</STRONG> are
-       defined in <STRONG>&lt;curses.h&gt;</STRONG>.  Types used for the terminfo  routines  such  as
-       <STRONG>TERMINAL</STRONG> are defined in <STRONG>&lt;term.h&gt;</STRONG>.
-
-       This   manual   page  describes  functions  which  may  appear  in  any
-       configuration of the library.  There are two common  configurations  of
-       the library:
-
-          <EM>ncurses</EM>
-               the  "normal"  library,  which  handles  8-bit characters.  The
-               normal  (8-bit)  library  stores   characters   combined   with
-               attributes in <STRONG>chtype</STRONG> data.
-
-               Attributes  alone (no corresponding character) may be stored in
-               <STRONG>chtype</STRONG> or the equivalent <STRONG>attr_t</STRONG> data.  In either case, the data
-               is stored in something like an integer.
-
-               Each cell (row and column) in a <STRONG>WINDOW</STRONG> is stored as a <STRONG>chtype</STRONG>.
-
-          <EM>ncursesw</EM>
-               the   so-called   "wide"   library,   which  handles  multibyte
-               characters (see the section on <STRONG>ALTERNATE</STRONG> <STRONG>CONFIGURATIONS</STRONG>).   The
-               "wide"  library  includes  all  of  the calls from the "normal"
-               library.  It adds about one third more calls using  data  types
-               which store multibyte characters:
-
-               <STRONG>cchar_t</STRONG>
-                    corresponds to <STRONG>chtype</STRONG>.  However it is a structure, because
-                    more data is stored than can fit  into  an  integer.   The
-                    characters  are  large  enough  to  require a full integer
-                    value - and there may be more than one character per cell.
-                    The  video  attributes  and  color  are stored in separate
-                    fields of the structure.
-
-                    Each cell (row and column) in a  <STRONG>WINDOW</STRONG>  is  stored  as  a
-                    <STRONG>cchar_t</STRONG>.
-
-                    The  <STRONG><A HREF="curs_getcchar.3x.html">setcchar(3x)</A></STRONG>  and  <STRONG><A HREF="curs_getcchar.3x.html">getcchar(3x)</A></STRONG>  functions  store and
-                    retrieve the data from a <STRONG>cchar_t</STRONG> structure.
-
-               <STRONG>wchar_t</STRONG>
-                    stores a "wide" character.  Like <STRONG>chtype</STRONG>, this  may  be  an
-                    integer.
-
-               <STRONG>wint_t</STRONG>
-                    stores  a  <STRONG>wchar_t</STRONG> or <STRONG>WEOF</STRONG> - not the same, though both may
-                    have the same size.
-
-               The "wide" library provides new functions which  are  analogous
-               to  functions  in  the  "normal"  library.   There  is a naming
-               convention which relates many of the  normal/wide  variants:  a
-               "_w"  is  inserted  into the name.  For example, <STRONG>waddch</STRONG> becomes
-               <STRONG>wadd_wch</STRONG>.
-
-
-</PRE><H3><a name="h3-Routine-Name-Index">Routine Name Index</a></H3><PRE>
-       The following table lists the <STRONG>curses</STRONG> routines provided in the  "normal"
-       and  "wide"  libraries  and the names of the manual pages on which they
-       are described.  Routines flagged with  "*"  are  ncurses-specific,  not
-       described by XPG4 or present in SVr4.
-
-                    <STRONG>curses</STRONG> Routine Name      Manual Page Name
+       that are not constrained to the size of the terminal screen  and  whose
+       contents need not be completely displayed.  See <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>.
+
+       In  addition  to drawing characters on the screen, rendering attributes
+       and colors may be supported, causing the characters to show up in  such
+       modes  as  underlined,  in reverse video, or in color on terminals that
+       support such display enhancements.  See <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>.
+
+       <EM>curses</EM> predefines symbols for a small set of line graphics  characters,
+       corresponding  to  the  VT100  line  drawing  set.   See <STRONG><A HREF="curs_addch.3x.html">waddch(3x)</A></STRONG> and
+       <STRONG><A HREF="curs_add_wch.3x.html">wadd_wch(3x)</A></STRONG>.
+
+       <EM>curses</EM> is implemented using the  operating  system's  terminal  driver;
+       keystroke  events are not received as scan codes but as byte sequences.
+       Graphical keycaps (alphanumeric and punctuation keys,  and  the  space)
+       appear  as-is.   Everything  else,  including  the  tab,  enter/return,
+       keypad, arrow, and function keys, appears as a control character  or  a
+       multibyte  <EM>escape</EM>  <EM>sequence.</EM>   <EM>curses</EM>  translates these into unique <EM>key</EM>
+       <EM>codes.</EM>  See <STRONG><A HREF="curs_getch.3x.html">getch(3x)</A></STRONG>.
+
+
+</PRE><H3><a name="h3-Effects-of-GUIs-and-Environment-Variables">Effects of GUIs and Environment Variables</a></H3><PRE>
+       The selection of an approprate value of <EM>TERM</EM> in the process environment
+       is essential to correct <EM>curses</EM> and <EM>terminfo</EM> library operation.  A well-
+       configured system selects a correct <EM>TERM</EM> value  automatically;  <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>
+       may assist with troubleshooting exotic situations.
+
+       If  the  environment  variables  <EM>LINES</EM>  and  <EM>COLUMNS</EM> are set, or if the
+       <EM>curses</EM> program is executing in a graphical windowing  environment,  the
+       information  obtained  thence  overrides that obtained by <EM>terminfo</EM>.  An
+       <EM>ncurses</EM> extension supports resizable terminals; see <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>.
+
+       If the environment variable  <EM>TERMINFO</EM>  is  defined,  a  <EM>curses</EM>  program
+       checks  first  for  a  terminal  type  description  in  the location it
+       identifies.   <EM>TERMINFO</EM>  is  useful  for  developing  experimental  type
+       descriptions  or  when  write  permission to <EM>/usr/share/terminfo</EM> is not
+       available.
+
+       See section "ENVIRONMENT" below.
+
+
+</PRE><H3><a name="h3-Naming-Conventions">Naming Conventions</a></H3><PRE>
+       Many <EM>curses</EM> functions have two or more versions.  Those  prefixed  with
+       "w"  require  a  window  argument.   Four  functions  prefixed with "p"
+       require a pad argument.  Those without a prefix  generally  operate  on
+       <STRONG>stdscr</STRONG>.
+
+       In  function  synopses,  <EM>ncurses</EM> man pages apply the following names to
+       parameters.
+
+                        <EM>bf</EM>    <EM>bool</EM> (<STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>)
+                        <EM>win</EM>   pointer to <EM>WINDOW</EM>
+                        <EM>pad</EM>   pointer to <EM>WINDOW</EM> that is a pad
+
+
+</PRE><H3><a name="h3-Wide-and-Non-wide-Character-Configurations">Wide and Non-wide Character Configurations</a></H3><PRE>
+       This manual page describes functions that appear in  any  configuration
+       of  the  library.   There  are  two  common configurations; see section
+       "ALTERNATE CONFIGURATIONS" below.
+
+       <EM>ncurses</EM>   is the library in its "non-wide" configuration, handling only
+                 eight-bit  characters.   It  stores a character combined with
+                 attributes in a <EM>chtype</EM> datum.
+
+                 Attributes alone (with no  corresponding  character)  can  be
+                 stored  in  variables  of  <EM>chtype</EM>  or <EM>attr</EM><STRONG>_</STRONG><EM>t</EM> type.  In either
+                 case, they are represented as an integral bit mask.
+
+                 Each cell of a <EM>WINDOW</EM> is stored as a <EM>chtype.</EM>
+
+       <EM>ncursesw</EM>  is the library in its  "wide"  configuration,  which  handles
+                 character encodings requiring a larger data type than <EM>char</EM> (a
+                 byte-sized type) can represent.  It adds about one third more
+                 calls  using  additional  data  types  that  can  store  such
+                 <EM>multibyte</EM> characters.
+
+                 <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>  corresponds to the non-wide configuration's  <EM>chtype.</EM>
+                          It  always  a structure type, because it stores more
+                          data than can fit into an integer.  A character code
+                          may be larger than can fit in a C <EM>char,</EM> and moreover
+                          more than one character may occupy a cell  (as  with
+                          accent  marks and other diacritics).  Each character
+                          is of type <EM>wchar</EM><STRONG>_</STRONG><EM>t;</EM> a complex character contains one
+                          spacing  character  and  zero  or  more  non-spacing
+                          characters (see below).  Attributes and  color  data
+                          are  stored in separate fields of the structure, not
+                          combined as in <EM>chtype.</EM>
+
+                          Each cell (row and column) <EM>WINDOW</EM>  is  stored  as  a
+                          <EM>cchar</EM><STRONG>_</STRONG><EM>t.</EM>
+
+                 The   <STRONG><A HREF="curs_getcchar.3x.html">setcchar(3x)</A></STRONG>   and  <STRONG><A HREF="curs_getcchar.3x.html">getcchar(3x)</A></STRONG>  functions  store  and
+                 retrieve the data from a <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> structure.  The wide library
+                 API  of <EM>ncurses</EM> depends on two data types standardized by ISO
+                 C95.
+
+                 <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM>  stores a wide character.  Like <EM>chtype,</EM> this  may  be
+                          an  integer.  Depending on the character encoding, a
+                          wide character  may  be  <EM>spacing,</EM>  meaning  that  it
+                          occupies  a  character  cell by itself and typically
+                          accompanies  cursor   advancement   on   input,   or
+                          <EM>combining,</EM> meaning that it occupies the same cell as
+                          a  spacing  character,  is  often  regarded   as   a
+                          "modifier" of the base glyph with which it combines,
+                          and typically does not advance the cursor on input.
+
+                 <EM>wint</EM><STRONG>_</STRONG><EM>t</EM>   can  store  a  <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM>   or   the   constant   <STRONG>WEOF</STRONG>,
+                          analogously  to the <EM>int</EM>-sized character manipulation
+                          functions of ISO C and their constant <STRONG>EOF</STRONG>.
+
+                 The  wide  library   provides   additional   functions   that
+                 complement  those  in  the non-wide library where the size of
+                 the underlying character type  is  significant.   A  somewhat
+                 regular  naming  convention relates many of the wide variants
+                 to their non-wide counterparts;  where  a  non-wide  function
+                 name  contains  "ch"  or "str", prefix it with "_w" to obtain
+                 the wide counterpart.  For example, <STRONG>waddch</STRONG> becomes <STRONG>wadd_wch</STRONG>.
+
+                 This convention is inapplicable  to  some  non-wide  function
+                 names,  so  other  transformations  are  used  for  the  wide
+                 configuration: in the window background management functions,
+                 "bkgd"   becomes  "bkgrnd";  the  window  border-drawing  and
+                 -clearing functions are suffixed with "_set".
+
+
+</PRE><H3><a name="h3-Function-Name-Index">Function Name Index</a></H3><PRE>
+       The following table lists the <EM>curses</EM> functions provided in the non-wide
+       and  wide  APIs  and  the  corresponding  man pages that describe them.
+       Those flagged with  "*"  are  <EM>ncurses</EM>-specific,  neither  described  by
+       X/Open Curses nor present in SVr4.
+
+                    <STRONG><EM>curses</EM></STRONG> Function Name     Man Page
                     ---------------------------------------------
                     COLOR_PAIR               <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
                     PAIR_NUMBER              <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
                     addchnstr                <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
                     addchstr                 <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
                     addnstr                  <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
-
                     addnwstr                 <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
                     addstr                   <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
                     addwstr                  <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
                     erasewchar               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
                     exit_curses              <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>*
                     exit_terminfo            <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>*
+
                     extended_color_content   <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>*
                     extended_pair_content    <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>*
                     extended_slk_color       <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>*
                     flushinp                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
                     free_pair                <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>*
                     get_wch                  <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
-
                     get_wstr                 <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
                     getattrs                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
                     getbegx                  <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
                     insertln                 <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
                     insnstr                  <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
                     insstr                   <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
+
                     instr                    <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
                     intrflush                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
                     inwstr                   <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
                     is_idcok                 <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
                     is_idlok                 <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
                     is_immedok               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
-
                     is_keypad                <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
                     is_leaveok               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
                     is_linetouched           <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
                     mvin_wchnstr             <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
                     mvin_wchstr              <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
                     mvinch                   <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
+
                     mvinchnstr               <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
                     mvinchstr                <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
                     mvinnstr                 <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
                     mvins_wstr               <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
                     mvinsch                  <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
                     mvinsnstr                <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
-
                     mvinsstr                 <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
                     mvinstr                  <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
                     mvinwstr                 <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
                     nocbreak                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
                     nodelay                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
                     noecho                   <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
+
                     nofilter                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>*
                     nonl                     <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
                     noqiflush                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
                     overwrite                <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
                     pair_content             <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
                     pecho_wchar              <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
-
                     pechochar                <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
                     pnoutrefresh             <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
                     prefresh                 <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
                     subpad                   <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
                     subwin                   <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
                     syncok                   <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
+
                     term_attrs               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
                     termattrs                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
                     termname                 <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
                     tgetstr                  <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
                     tgoto                    <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
                     tigetflag                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
-
                     tigetnum                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
                     tigetstr                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
                     timeout                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
                     wbkgrndset               <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
                     wborder                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
                     wborder_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
+
                     wchgat                   <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
                     wclear                   <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
                     wclrtobot                <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
                     wdelch                   <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
                     wdeleteln                <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
                     wecho_wchar              <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
-
                     wechochar                <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
                     wenclose                 <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
                     werase                   <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
        (i.e., these should not be used as the right-hand  side  of  assignment
        statements).
 
-       Functions  with  a  "mv"  prefix  first perform a cursor movement using
-       <STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
-       the  window  pointer  is  null.   Most  "mv"-prefixed functions (except
-       variadic functions such as <STRONG>mvprintw</STRONG>) are provided both  as  macros  and
-       functions.
+       Functions  with a "mv" prefix first perform cursor movement using <STRONG>wmove</STRONG>
+       and return an error if the position is  outside  the  window,  or  (for
+       "mvw"  functions)  if  the  <EM>WINDOW</EM> pointer is null.  Most "mv"-prefixed
+       functions (except variadic functions such  as  <STRONG>mvprintw</STRONG>)  are  provided
+       both as macros and functions.
 
        Routines that return pointers return <STRONG>NULL</STRONG> on error.
 
 
 </PRE><H2><a name="h2-ENVIRONMENT">ENVIRONMENT</a></H2><PRE>
        The  following  environment  symbols  are  useful  for  customizing the
-       runtime behavior of the <STRONG>ncurses</STRONG> library.  The most important ones  have
+       runtime behavior of the <EM>ncurses</EM> library.  The most important ones  have
        been already discussed in detail.
 
 
        variable.  Very few terminfo entries provide this feature.
 
        Because this name is also used in development environments to represent
-       the C compiler's name, <STRONG>ncurses</STRONG> ignores it if it does not happen to be a
+       the C compiler's name, <EM>ncurses</EM> ignores it if it does not happen to be a
        single character.
 
 
 </PRE><H3><a name="h3-BAUDRATE"><EM>BAUDRATE</EM></a></H3><PRE>
        The  debugging  library  checks  this  environment  variable  when  the
        application has redirected output to a file.   The  variable's  numeric
-       value  is  used  for  the baudrate.  If no value is found, <STRONG>ncurses</STRONG> uses
+       value  is  used  for  the baudrate.  If no value is found, <EM>ncurses</EM> uses
        9600.  This allows testers to construct repeatable test-cases that take
        into account costs that depend on baudrate.
 
        Specify the width of the screen in characters.  Applications running in
        a windowing environment usually are able to obtain  the  width  of  the
        window  in  which they are executing.  If neither the <EM>COLUMNS</EM> value nor
-       the terminal's screen size is available, <STRONG>ncurses</STRONG> uses  the  size  which
+       the terminal's screen size is available, <EM>ncurses</EM> uses  the  size  which
        may be specified in the terminfo database (i.e., the <STRONG>cols</STRONG> capability).
 
        It  is  important  that  your  application  use  a correct size for the
 
 
 </PRE><H3><a name="h3-ESCDELAY"><EM>ESCDELAY</EM></a></H3><PRE>
-       Specifies the total time, in milliseconds, for which ncurses will await
+       Specifies the total time, in milliseconds, for which <EM>ncurses</EM> will await
        a character sequence, e.g., a function key.  The  default  value,  1000
        milliseconds,  is enough for most uses.  However, it is made a variable
        to accommodate unusual applications.
 
 
 </PRE><H3><a name="h3-HOME"><EM>HOME</EM></a></H3><PRE>
-       Tells <STRONG>ncurses</STRONG> where your home directory is.  That is where it may  read
+       Tells <EM>ncurses</EM> where your home directory is.  That is where it may  read
        and write auxiliary terminal descriptions:
 
            $HOME/.termcap
 
        This variable lets you customize the mouse.  The variable must be three
        numeric  digits  1-3  in  any  order,  e.g.,  123 or 321.  If it is not
-       specified, <STRONG>ncurses</STRONG> uses 132.
+       specified, <EM>ncurses</EM> uses 132.
 
 
 </PRE><H3><a name="h3-NCURSES_ASSUMED_COLORS"><EM>NCURSES_ASSUMED_COLORS</EM></a></H3><PRE>
        are   white-on-black   (see   <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>).   You  may  set  the
        foreground and background color values with this  environment  variable
        by  proving  a  2-element list: foreground,background.  For example, to
-       tell ncurses to not assume anything  about  the  colors,  set  this  to
+       tell <EM>ncurses</EM> to not assume anything  about  the  colors,  set  this  to
        "-1,-1".   To  make  it  green-on-black, set it to "2,0".  Any positive
        value from zero to the terminfo <STRONG>max_colors</STRONG> value is allowed.
 
 
 </PRE><H3><a name="h3-NCURSES_CONSOLE2"><EM>NCURSES_CONSOLE2</EM></a></H3><PRE>
-       This applies only to the MinGW port of ncurses.
+       This applies only to the MinGW port of <EM>ncurses</EM>.
 
        The <STRONG>Console2</STRONG> program's handling  of  the  Microsoft  Console  API  call
        <STRONG>CreateConsoleScreenBuffer</STRONG>  is  defective.   Applications which use this
 
 
 </PRE><H3><a name="h3-NCURSES_GPM_TERMS"><EM>NCURSES_GPM_TERMS</EM></a></H3><PRE>
-       This applies only to ncurses configured to use the GPM interface.
+       This applies only to <EM>ncurses</EM> configured to use the GPM interface.
 
        If  present, the environment variable is a list of one or more terminal
        names against which the <EM>TERM</EM> environment variable is matched.   Setting
        it  to  an  empty  value disables the GPM interface; using the built-in
        support for xterm, etc.
 
-       If the environment variable is absent, ncurses will attempt to open GPM
+       If the environment variable is absent, <EM>ncurses</EM> will attempt to open GPM
        if <EM>TERM</EM> contains "linux".
 
 
 </PRE><H3><a name="h3-NCURSES_NO_HARD_TABS"><EM>NCURSES_NO_HARD_TABS</EM></a></H3><PRE>
-       <STRONG>Ncurses</STRONG>  may  use tabs as part of the cursor movement optimization.  In
-       some cases, your terminal driver may not handle  these  properly.   Set
-       this  environment variable to disable the feature.  You can also adjust
-       your <STRONG>stty(1)</STRONG> settings to avoid the problem.
+       <EM>ncurses</EM>  may use tabs as part of cursor movement optimization.  In some
+       cases, your terminal driver may not handle these  properly.   Set  this
+       environment variable to any value to disable the feature.  You can also
+       adjust your <STRONG>stty(1)</STRONG> settings to avoid the problem.
 
 
 </PRE><H3><a name="h3-NCURSES_NO_MAGIC_COOKIE"><EM>NCURSES_NO_MAGIC_COOKIE</EM></a></H3><PRE>
        Some terminals  use  a  magic-cookie  feature  which  requires  special
        handling  to  make  highlighting  and  other  video  attributes display
        properly.   You  can  suppress  the  highlighting  entirely  for  these
-       terminals by setting this environment variable.
+       terminals by setting this environment variable to any value.
 
 
 </PRE><H3><a name="h3-NCURSES_NO_PADDING"><EM>NCURSES_NO_PADDING</EM></a></H3><PRE>
 
           <STRONG>o</STRONG>   continued though 5.9 patch 20130126
 
-       <STRONG>ncurses</STRONG> enabled buffered output during terminal  initialization.   This
+       <EM>ncurses</EM> enabled buffered output during terminal  initialization.   This
        was  done  (as  in  SVr4  curses) for performance reasons.  For testing
-       purposes, both of <STRONG>ncurses</STRONG> and certain applications,  this  feature  was
+       purposes, both of <EM>ncurses</EM> and certain applications,  this  feature  was
        made  optional.  Setting the <EM>NCURSES</EM><STRONG>_</STRONG><EM>NO</EM><STRONG>_</STRONG><EM>SETBUF</EM> variable disabled output
        buffering, leaving the output in the original (usually  line  buffered)
        mode.
 
-       In  the  current implementation, ncurses performs its own buffering and
+       In  the  current implementation, <EM>ncurses</EM> performs its own buffering and
        does not require this workaround.  It does not modify the buffering  of
        the standard output.
 
        The  reason  for the change was to make the behavior for interrupts and
        other  signals   more   robust.    One   drawback   is   that   certain
-       nonconventional  programs  would  mix ordinary stdio calls with ncurses
-       calls and (usually) work.  This is no longer possible since ncurses  is
+       nonconventional  programs  would  mix ordinary stdio calls with <EM>ncurses</EM>
+       calls and (usually) work.  This is no longer possible since <EM>ncurses</EM>  is
        not  using the buffered standard output but its own output (to the same
        file descriptor).  As a special case, the low-level calls such as  <STRONG>putp</STRONG>
        still use the standard output.  But high-level curses calls do not.
 
 
 </PRE><H3><a name="h3-NCURSES_NO_UTF8_ACS"><EM>NCURSES_NO_UTF8_ACS</EM></a></H3><PRE>
-       During  initialization,  the  <STRONG>ncurses</STRONG>  library checks for special cases
+       During  initialization,  the  <EM>ncurses</EM>  library checks for special cases
        where VT100 line-drawing (and the corresponding alternate character set
        capabilities)  described  in  the  terminfo  are  known  to be missing.
        Specifically, when  running  in  a  UTF-8  locale,  the  Linux  console
-       emulator  and  the GNU screen program ignore these.  Ncurses checks the
-       <EM>TERM</EM> environment variable for these.   For  other  special  cases,  you
-       should  set this environment variable.  Doing this tells ncurses to use
-       Unicode values which correspond to the VT100 line-drawing glyphs.  That
-       works  for  the special cases cited, and is likely to work for terminal
-       emulators.
+       emulator  and  the GNU screen program ignore these.  <EM>ncurses</EM> <EM>checks</EM> <EM>the</EM>
+       <EM>TERM</EM> <EM>environment</EM> <EM>variable</EM> <EM>for</EM> <EM>these.</EM>   <EM>For</EM>  <EM>other</EM>  <EM>special</EM>  <EM>cases,</EM>  <EM>you</EM>
+       <EM>should</EM>  <EM>set</EM> <EM>this</EM> <EM>environment</EM> <EM>variable.</EM>  <EM>Doing</EM> <EM>this</EM> <EM>tells</EM> <EM>ncurses</EM> <EM>to</EM> <EM>use</EM>
+       <EM>Unicode</EM> <EM>values</EM> <EM>which</EM> <EM>correspond</EM> <EM>to</EM> <EM>the</EM> <EM>VT100</EM> <EM>line-drawing</EM> <EM>glyphs.</EM>  <EM>That</EM>
+       <EM>works</EM>  <EM>for</EM>  <EM>the</EM> <EM>special</EM> <EM>cases</EM> <EM>cited,</EM> <EM>and</EM> <EM>is</EM> <EM>likely</EM> <EM>to</EM> <EM>work</EM> <EM>for</EM> <EM>terminal</EM>
+       <EM>emulators.</EM>
 
        When setting this variable, you should  set  it  to  a  nonzero  value.
        Setting  it  to zero (or to a nonnumber) disables the special check for
        "linux" and "screen".
 
-       As an alternative to the environment variable, ncurses  checks  for  an
+       As an alternative to the environment variable, <EM>ncurses</EM>  checks  for  an
        extended  terminfo  capability  <STRONG>U8</STRONG>.  This is a numeric capability which
        can be compiled using <STRONG>tic</STRONG> <STRONG>-x</STRONG>.  For example
 
                   U8#1, use=xterm,
 
        The name "U8" is chosen to be two characters, to permit it to  be  used
-       by applications that use ncurses' termcap interface.
+       by applications that use <EM>ncurses</EM>' termcap interface.
 
 
 </PRE><H3><a name="h3-NCURSES_TRACE"><EM>NCURSES_TRACE</EM></a></H3><PRE>
-       During   initialization,  the  <STRONG>ncurses</STRONG>  debugging  library  checks  the
+       During   initialization,  the  <EM>ncurses</EM>  debugging  library  checks  the
        <EM>NCURSES</EM><STRONG>_</STRONG><EM>TRACE</EM> environment variable.  If it is  defined,  to  a  numeric
-       value,  <STRONG>ncurses</STRONG>  calls  the  <STRONG>trace</STRONG>  function,  using  that value as the
+       value,  <EM>ncurses</EM>  calls  the  <STRONG>trace</STRONG>  function,  using  that value as the
        argument.
 
        The argument values, which are defined  in  <STRONG>curses.h</STRONG>,  provide  several
 
 
 </PRE><H3><a name="h3-TERMCAP"><EM>TERMCAP</EM></a></H3><PRE>
-       If the <STRONG>ncurses</STRONG>  library  has  been  configured  with  <EM>termcap</EM>  support,
-       <STRONG>ncurses</STRONG>  will  check for a terminal's description in termcap form if it
+       If the <EM>ncurses</EM>  library  has  been  configured  with  <EM>termcap</EM>  support,
+       <EM>ncurses</EM>  will  check for a terminal's description in termcap form if it
        is not available in the terminfo database.
 
        The <EM>TERMCAP</EM> environment variable contains either a terminal description
        (with  newlines  stripped  out),  or  a  file  name  telling  where the
        information denoted by the <EM>TERM</EM> environment variable exists.  In either
-       case,  setting  it  directs  <STRONG>ncurses</STRONG> to ignore the usual place for this
+       case,  setting  it  directs  <EM>ncurses</EM> to ignore the usual place for this
        information, e.g., /etc/termcap.
 
 
 </PRE><H3><a name="h3-TERMINFO"><EM>TERMINFO</EM></a></H3><PRE>
-       <STRONG>ncurses</STRONG> can be configured to read  from  multiple  terminal  databases.
+       <EM>ncurses</EM> can be configured to read  from  multiple  terminal  databases.
        The  <EM>TERMINFO</EM>  variable overrides the location for the default terminal
        database.  Terminal descriptions (in terminal  format)  are  stored  in
        terminal databases:
            and  the  <EM>TERMINFO</EM> variable is used by <EM>curses</EM> applications on those
            systems to override the default location of the terminal database.
 
-       <STRONG>o</STRONG>   If <STRONG>ncurses</STRONG> is built to use hashed databases,  then  each  entry  in
+       <STRONG>o</STRONG>   If <EM>ncurses</EM> is built to use hashed databases,  then  each  entry  in
            this list may be the path of a hashed database file, e.g.,
 
                /usr/share/terminfo.db
            existence  of  the  directory tree, reading it directly rather than
            using the terminfo library calls.
 
-       <STRONG>o</STRONG>   If <STRONG>ncurses</STRONG> is built  with  a  support  for  reading  termcap  files
+       <STRONG>o</STRONG>   If <EM>ncurses</EM> is built  with  a  support  for  reading  termcap  files
            directly,  then  an entry in this list may be the path of a termcap
            file.
 
-       <STRONG>o</STRONG>   If the <EM>TERMINFO</EM> variable begins with "hex:" or "b64:", <STRONG>ncurses</STRONG> uses
+       <STRONG>o</STRONG>   If the <EM>TERMINFO</EM> variable begins with "hex:" or "b64:", <EM>ncurses</EM> uses
            the  remainder of that variable as a compiled terminal description.
            You might produce the base64 format using <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>:
 
        of the default  terminal  database.   The  complete  list  of  database
        locations in order follows:
 
-          <STRONG>o</STRONG>   the  last  terminal  database to which <STRONG>ncurses</STRONG> wrote, if any, is
+          <STRONG>o</STRONG>   the  last  terminal  database to which <EM>ncurses</EM> wrote, if any, is
               searched first
 
           <STRONG>o</STRONG>   the location specified by the <EM>TERMINFO</EM> environment variable
           <STRONG>o</STRONG>   locations listed in the <EM>TERMINFO</EM><STRONG>_</STRONG><EM>DIRS</EM> environment variable
 
           <STRONG>o</STRONG>   one or more locations whose names are  configured  and  compiled
-              into the ncurses library, i.e.,
+              into the <EM>ncurses</EM> library, i.e.,
 
              <STRONG>o</STRONG>   /usr/share/terminfo   (corresponding   to  the  <EM>TERMINFO</EM><STRONG>_</STRONG><EM>DIRS</EM>
                  variable)
        (i.e., ":") on Unix, semicolons on OS/2 EMX.
 
        There  is  no  corresponding  feature  in  System  V terminfo; it is an
-       extension developed for <STRONG>ncurses</STRONG>.
+       extension developed for <EM>ncurses</EM>.
 
 
 </PRE><H3><a name="h3-TERMPATH"><EM>TERMPATH</EM></a></H3><PRE>
-       If <EM>TERMCAP</EM> does not hold a file name then <STRONG>ncurses</STRONG> checks  the  <EM>TERMPATH</EM>
+       If <EM>TERMCAP</EM> does not hold a file name then <EM>ncurses</EM> checks  the  <EM>TERMPATH</EM>
        environment  variable.  This is a list of filenames separated by spaces
        or colons (i.e., ":") on Unix, semicolons on OS/2 EMX.
 
-       If the <EM>TERMPATH</EM> environment variable is not set, <STRONG>ncurses</STRONG> looks  in  the
+       If the <EM>TERMPATH</EM> environment variable is not set, <EM>ncurses</EM> looks  in  the
        files
 
            /etc/termcap, /usr/share/misc/termcap and $HOME/.termcap,
 
 </PRE><H2><a name="h2-ALTERNATE-CONFIGURATIONS">ALTERNATE CONFIGURATIONS</a></H2><PRE>
        Several   different  configurations  are  possible,  depending  on  the
-       configure script options used when building <STRONG>ncurses</STRONG>.  There are  a  few
+       configure script options used when building <EM>ncurses</EM>.  There are  a  few
        main  options  whose  effects are visible to the applications developer
-       using <STRONG>ncurses</STRONG>:
+       using <EM>ncurses</EM>:
 
        --disable-overwrite
-            The standard include for <STRONG>ncurses</STRONG> is as noted in <STRONG>SYNOPSIS</STRONG>:
+            The standard include for <EM>ncurses</EM> is as noted in <STRONG>SYNOPSIS</STRONG>:
 
                 <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
 
-            This option is used to avoid filename conflicts  when  <STRONG>ncurses</STRONG>  is
-            not the main implementation of curses of the computer.  If <STRONG>ncurses</STRONG>
+            This option is used to avoid filename conflicts  when  <EM>ncurses</EM>  is
+            not the main implementation of curses of the computer.  If <EM>ncurses</EM>
             is installed  disabling  overwrite,  it  puts  its  headers  in  a
             subdirectory, e.g.,
 
                 than  <STRONG>curses.h</STRONG>  may require a specific value for <STRONG>_XOPEN_SOURCE</STRONG>
                 (or a system-specific symbol).
 
-            The <STRONG>curses.h</STRONG>  file  which  is  installed  for  the  wide-character
-            library  is  designed  to  be compatible with the normal library's
-            header.  Only the size of the <STRONG>WINDOW</STRONG> structure differs,  and  very
-            few applications require more than a pointer to <STRONG>WINDOW</STRONG>s.
+            The <EM>curses.h</EM> header file installed for the wide-character  library
+            is  designed  to be compatible with the non-wide library's header.
+            Only the size of the <EM>WINDOW</EM> structure  differs;  few  applications
+            require more than pointers to <EM>WINDOW</EM>s.
 
             If  the  headers  are  installed  allowing  overwrite,  the  wide-
             character library's headers should be  installed  last,  to  allow
 
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
-       If standard output from a <STRONG>ncurses</STRONG> program is re-directed  to  something
+       If standard output from a <EM>ncurses</EM> program is re-directed  to  something
        which  is not a tty, screen updates will be directed to standard error.
        This was an undocumented feature of AT&amp;T System V Release 3 curses.
 
 
 
 </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
-       The  <STRONG>ncurses</STRONG> library can be compiled with an option (<STRONG>-DUSE_GETCAP</STRONG>) that
+       The  <EM>ncurses</EM> library can be compiled with an option (<STRONG>-DUSE_GETCAP</STRONG>) that
        falls back to the old-style /etc/termcap file  if  the  terminal  setup
        code  cannot  find a terminfo entry corresponding to <EM>TERM</EM>.  Use of this
        feature is not  recommended,  as  it  essentially  includes  an  entire
-       termcap  compiler  in  the <STRONG>ncurses</STRONG> startup code, at significant cost in
+       termcap  compiler  in  the <EM>ncurses</EM> startup code, at significant cost in
        core and startup cycles.
 
-       The <STRONG>ncurses</STRONG> library includes facilities for capturing mouse  events  on
+       The <EM>ncurses</EM> library includes facilities for capturing mouse  events  on
        certain  terminals  (including  xterm).   See the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual
        page for details.
 
-       The <STRONG>ncurses</STRONG>  library  includes  facilities  for  responding  to  window
+       The <EM>ncurses</EM>  library  includes  facilities  for  responding  to  window
        resizing   events,   e.g.,   when   running   in  an  xterm.   See  the
        <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG> and <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual pages for details.  In  addition,
        the library may be configured with a <STRONG>SIGWINCH</STRONG> handler.
 
-       The  <STRONG>ncurses</STRONG> library extends the fixed set of function key capabilities
+       The  <EM>ncurses</EM> library extends the fixed set of function key capabilities
        of terminals by allowing the application designer to define  additional
        key  sequences at runtime.  See the <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG> <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>, and
        <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG> manual pages for details.
 
-       The <STRONG>ncurses</STRONG> library can exploit the  capabilities  of  terminals  which
+       The <EM>ncurses</EM> library can exploit the  capabilities  of  terminals  which
        implement  the  ISO-6429  SGR  39  and  SGR 49 controls, which allow an
        application to reset  the  terminal  to  its  original  foreground  and
        background  colors.   From  the  users' perspective, the application is
        independently,  providing better control over color contrasts.  See the
        <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG> manual page for details.
 
-       The <STRONG>ncurses</STRONG> library  includes  a  function  for  directing  application
+       The <EM>ncurses</EM> library  includes  a  function  for  directing  application
        output  to  a  printer  attached  to  the  terminal  device.   See  the
        <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       The <STRONG>ncurses</STRONG> library is intended to be BASE-level  conformant  with  XSI
+       The <EM>ncurses</EM> library is intended to be BASE-level  conformant  with  XSI
        Curses.    The  EXTENDED  XSI  Curses  functionality  (including  color
        support) is supported.
 
        A small number of local differences (that  is,  individual  differences
-       between  the XSI Curses and <STRONG>ncurses</STRONG> calls) are described in <STRONG>PORTABILITY</STRONG>
+       between  the XSI Curses and <EM>ncurses</EM> calls) are described in <STRONG>PORTABILITY</STRONG>
        sections of the library man pages.
 
 
 
 
 </PRE><H3><a name="h3-Extensions-versus-portability">Extensions versus portability</a></H3><PRE>
-       Most  of the extensions provided by ncurses have not been standardized.
+       Most  of the extensions provided by <EM>ncurses</EM> have not been standardized.
        Some  have  been  incorporated  into  other  implementations,  such  as
        PDCurses or NetBSD curses.  Here are a few to consider:
 
            &lt;stdio.h&gt;.
 
            BSD curses included &lt;curses.h&gt;  and  &lt;unctrl.h&gt;  from  an  internal
-           header "curses.ext" ("ext" was a short name for <EM>externs</EM>).
+           header file <EM>curses.ext</EM> ("ext" abbreviated "externs").
 
            BSD  curses  used  &lt;stdio.h&gt; internally (for <STRONG>printw</STRONG> and <STRONG>scanw</STRONG>), but
            nothing in &lt;curses.h&gt; itself relied upon &lt;stdio.h&gt;.
        <STRONG>o</STRONG>   X/Open  Curses  is  inconsistent  with  respect  to  SVr4 regarding
            &lt;unctrl.h&gt;.
 
-           As  noted  in  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>,  ncurses  includes  &lt;unctrl.h&gt;   from
+           As  noted  in  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>,  <EM>ncurses</EM>  includes  &lt;unctrl.h&gt;   from
            &lt;curses.h&gt; (like SVr4).
 
        <STRONG>o</STRONG>   X/Open's comments about &lt;term.h&gt; and &lt;termios.h&gt; may refer to HP-UX
            and AIX:
 
            HP-UX curses includes &lt;term.h&gt; from &lt;curses.h&gt; to declare <STRONG>setupterm</STRONG>
-           in curses.h, but ncurses (and Solaris curses) do not.
+           in curses.h, but <EM>ncurses</EM> (and Solaris curses) do not.
 
-           AIX  curses includes &lt;term.h&gt; and &lt;termios.h&gt;.  Again, ncurses (and
+           AIX  curses includes &lt;term.h&gt; and &lt;termios.h&gt;.  Again, <EM>ncurses</EM> (and
            Solaris curses) do not.
 
        <STRONG>o</STRONG>   X/Open says that &lt;curses.h&gt; <EM>may</EM> include &lt;term.h&gt;, but there  is  no
            old  versions  of  AIX  curses required including &lt;curses.h&gt; before
            including &lt;term.h&gt;.
 
-           Because ncurses header files include the headers needed  to  define
-           datatypes used in the headers, ncurses header files can be included
+           Because <EM>ncurses</EM> header files include the headers needed  to  define
+           datatypes used in the headers, <EM>ncurses</EM> header files can be included
            in any order.  But for portability, you should  include  &lt;curses.h&gt;
            before &lt;term.h&gt;.
 
            file does not necessarily make all symbols in it visible (there are
            ifdef's to consider).
 
-           For  instance,  in  ncurses &lt;wchar.h&gt; <EM>may</EM> be included if the proper
-           symbol is defined, and if ncurses is configured for  wide-character
+           For  instance,  in  <EM>ncurses</EM> &lt;wchar.h&gt; <EM>may</EM> be included if the proper
+           symbol is defined, and if <EM>ncurses</EM> is configured for  wide-character
            support.   If  the  header  is  included,  its  symbols may be made
            visible.  That depends on the value used for <STRONG>_XOPEN_SOURCE</STRONG>  feature
            test macro.
 
            None of the X/Open Curses implementations require an application to
            include &lt;stdarg.h&gt;  before  &lt;curses.h&gt;  because  they  either  have
-           allowed  for  a  special type, or (like ncurses) include &lt;stdarg.h&gt;
+           allowed  for  a  special type, or (like <EM>ncurses</EM>) include &lt;stdarg.h&gt;
            directly to provide a portable interface.
 
 
 
 
 
-ncurses 6.4                       2023-12-02                       <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
+ncurses 6.4                       2023-12-17                       <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
@@ -1511,10 +1523,11 @@ ncurses 6.4                       2023-12-02                       <STRONG><A HR
 <li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
 <ul>
 <li><a href="#h3-Initialization">Initialization</a></li>
-<li><a href="#h3-Datatypes">Datatypes</a></li>
-<li><a href="#h3-Environment-variables">Environment variables</a></li>
-<li><a href="#h3-Routine-and-Argument-Names">Routine and Argument Names</a></li>
-<li><a href="#h3-Routine-Name-Index">Routine Name Index</a></li>
+<li><a href="#h3-Overview">Overview</a></li>
+<li><a href="#h3-Effects-of-GUIs-and-Environment-Variables">Effects of GUIs and Environment Variables</a></li>
+<li><a href="#h3-Naming-Conventions">Naming Conventions</a></li>
+<li><a href="#h3-Wide-and-Non-wide-Character-Configurations">Wide and Non-wide Character Configurations</a></li>
+<li><a href="#h3-Function-Name-Index">Function Name Index</a></li>
 </ul>
 </li>
 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
index 749c3f215a1063a8259c461468192e2528ce5592..101b95ac1b271838b1b2e88b104ad185a7f32138 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: MKncu_config.in,v 1.19 2023/12/02 21:37:31 tom Exp @
+  * @Id: MKncu_config.in,v 1.20 2023/12/16 21:43:05 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>ncursesw6-config 1 2023-12-02 ncurses 6.4 User commands</TITLE>
+<TITLE>ncursesw6-config 1 2023-12-16 ncurses 6.4 User commands</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">ncursesw6-config 1 2023-12-02 ncurses 6.4 User commands</H1>
+<H1 class="no-header">ncursesw6-config 1 2023-12-16 ncurses 6.4 User commands</H1>
 <PRE>
 <STRONG><A HREF="ncursesw6-config.1.html">ncursesw6-config(1)</A></STRONG>              User commands             <STRONG><A HREF="ncursesw6-config.1.html">ncursesw6-config(1)</A></STRONG>
 
 
 
 
-ncurses 6.4                       2023-12-02               <STRONG><A HREF="ncursesw6-config.1.html">ncursesw6-config(1)</A></STRONG>
+ncurses 6.4                       2023-12-16               <STRONG><A HREF="ncursesw6-config.1.html">ncursesw6-config(1)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 2f13ede8ec551df26b961ff85f6077bc97582d62..f1c7084423f9daf1a76dc9982810549413d5fb4f 100644 (file)
   * authorization.                                                           *
   ****************************************************************************
   * Author: Thomas E. Dickey
-  * @Id: new_pair.3x,v 1.43 2023/11/25 14:26:30 tom Exp @
+  * @Id: new_pair.3x,v 1.44 2023/12/16 20:32:22 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>new_pair 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>new_pair 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">new_pair 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">new_pair 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>                     Library calls                    <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>
 
 
 
 
-ncurses 6.4                       2023-11-25                      <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                      <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 8a1bc0349f896929943d1aa578e2e66eca53eef0..751fe6b8b4639c2ee924d12a276c0310abe25b3d 100644 (file)
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: panel.3x,v 1.59 2023/11/25 14:08:47 tom Exp @
+  * @Id: panel.3x,v 1.60 2023/12/16 21:24:43 tom Exp @
   * ---------
   * ---------
   * ---------
 <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>panel 3x 2023-11-25 ncurses 6.4 Library calls</TITLE>
+<TITLE>panel 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">panel 3x 2023-11-25 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">panel 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG>                        Library calls                       <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG>
 
 
 
 
-ncurses 6.4                       2023-11-25                         <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                         <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 6ec8747c8dc90ff05d08c341f05b6069eb3bce2e..9bf622b18e841d103b7e4d5e0f3f0f5628ba3dee 100644 (file)
   * authorization.                                                           *
   ****************************************************************************
   * Author: Thomas E. Dickey 1996-on
-  * @Id: resizeterm.3x,v 1.53 2023/12/02 20:49:04 tom Exp @
+  * @Id: resizeterm.3x,v 1.54 2023/12/16 20:32:22 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>resizeterm 3x 2023-12-02 ncurses 6.4 Library calls</TITLE>
+<TITLE>resizeterm 3x 2023-12-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">resizeterm 3x 2023-12-02 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">resizeterm 3x 2023-12-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>
 
 
 
 
-ncurses 6.4                       2023-12-02                    <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>
+ncurses 6.4                       2023-12-16                    <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 010df1d57e0ce16b600826af807e8860657e1dca..ce5e2b2545d6f1842bbdc03d4f8a7d3d93b15ca4 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: scr_dump.5,v 1.39 2023/11/25 14:21:48 tom Exp @
+  * @Id: scr_dump.5,v 1.40 2023/12/16 21:07:24 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>scr_dump 5 2023-11-25 ncurses 6.4 File formats</TITLE>
+<TITLE>scr_dump 5 2023-12-16 ncurses 6.4 File formats</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">scr_dump 5 2023-11-25 ncurses 6.4 File formats</H1>
+<H1 class="no-header">scr_dump 5 2023-12-16 ncurses 6.4 File formats</H1>
 <PRE>
 <STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG>                      File formats                      <STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG>
 
 
 
 </PRE><H3><a name="h3-ncurses5-_legacy_">ncurses5 (legacy)</a></H3><PRE>
-       The screen-dump feature was added to ncurses in June 1995.  While there
+       The screen-dump feature was added to <EM>ncurses</EM> in June 1995.  While there
        were fixes and improvements in succeeding years, the basic  scheme  was
        unchanged:
 
 
        <STRONG>o</STRONG>   Solaris 10 (13273 bytes)
 
-       <STRONG>o</STRONG>   ncurses5 (12888 bytes)
+       <STRONG>o</STRONG>   <EM>ncurses</EM>5 (12888 bytes)
 
 
 </PRE><H3><a name="h3-Solaris">Solaris</a></H3><PRE>
            ensure they are not overlooked.
 
        <STRONG>o</STRONG>   Attributes are written in escaped curly  braces,  e.g.,  "\{BOLD}",
-           and may include a color-pair (C1 or C2 in this example).
+           and may include a color pair (C1 or C2 in this example).
 
        <STRONG>o</STRONG>   The  parameters  in  the  header  are  written out only if they are
            nonzero.  When reading back, order does not matter.
 
 </PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
        Thomas E. Dickey
-       extended screen-dump format for ncurses 6.0 (2015)
+       extended screen-dump format for <EM>ncurses</EM> 6.0 (2015)
 
        Eric S. Raymond
-       screen dump feature in ncurses 1.9.2d (1995)
+       screen dump feature in <EM>ncurses</EM> 1.9.2d (1995)
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
 
 
 
-ncurses 6.4                       2023-11-25                       <STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG>
+ncurses 6.4                       2023-12-16                       <STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index d9da04b1b5a8c0e57f3dfe26b154e1deeefa17cc..5d8039a46f471df316664fe54c3cc612b07d08ab 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: tabs.1,v 1.50 2023/11/25 14:32:36 tom Exp @
+  * @Id: tabs.1,v 1.51 2023/12/17 00:13:57 tom Exp @
+  * https://minnie.tuhs.org/cgi-bin/utree.pl?file=PWB1/sys/source/s2/\
+  *   tabs.c
+  * https://minnie.tuhs.org/cgi-bin/utree.pl?file=V7/usr/src/cmd/tabs.c
+  * https://minnie.tuhs.org/cgi-bin/utree.pl?file=3BSD/usr/src/cmd/\
+  *   tabs.c
+  * https://minnie.tuhs.org/cgi-bin/utree.pl?file=SysVR4/cmd/tabs/tabs.c
+  * https://pubs.opengroup.org/onlinepubs/009604499/utilities/tabs.html
 -->
 <!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>tabs 1 2023-11-25 ncurses 6.4 User commands</TITLE>
+<TITLE>tabs 1 2023-12-16 ncurses 6.4 User commands</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">tabs 1 2023-11-25 ncurses 6.4 User commands</H1>
+<H1 class="no-header">tabs 1 2023-12-16 ncurses 6.4 User commands</H1>
 <PRE>
 <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>                          User commands                         <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>
 
        <STRONG>-n</STRONG>   This  option tells <STRONG>tabs</STRONG> to check the options and run any debugging
             option, but not to modify the terminal settings.
 
-       <STRONG>-V</STRONG>   reports the version of ncurses which was used in this program, and
+       <STRONG>-V</STRONG>   reports the version of <EM>ncurses</EM> which was used in this program, and
             exits.
 
        The <STRONG>tabs</STRONG> program processes a single list of tab stops.  The last option
        The <STRONG>-d</STRONG> (debug) and <STRONG>-n</STRONG> (no-op) options are extensions  not  provided  by
        other implementations.
 
-       A  <STRONG>tabs</STRONG>  utility  appeared in PWB/Unix 1.0 (1977).  There was a reduced
-       version of the <STRONG>tabs</STRONG> utility in Unix 7th edition  and  in  3BSD  (1979).
-       The  latter supported a single "-n" option (to cause the first tab stop
-       to be set on the left margin).  That option is not documented by POSIX.
 
-       The PWB/Unix <STRONG>tabs</STRONG> utility, which was included  in  System  III  (1980),
-       used  built-in  tables  rather than the terminal database, to support a
-       half-dozen hardcopy terminal (printer) types.   It  also  had  built-in
-       logic  to support the left-margin, as well as a feature for copying the
+</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+       A  <STRONG>tabs</STRONG>  utility  appeared  in  PWB/Unix 1.0 (1977).  A reduced version
+       shipped in Seventh Edition Unix (early 1979) and  in  3BSD  (later  the
+       same year); it supported a "-n" option to set the first tab stop at the
+       left margin.  That option is not documented by POSIX.
+
+       The PWB/Unix <STRONG>tabs</STRONG> utility returned  in  System  III  (1980),  and  used
+       built-in  tables  rather than the terminal database, to support a half-
+       dozen hardcopy terminal (printer) types.  It also had built-in logic to
+       support  setting  the left margin, as well as a feature for copying the
        tab settings from a file.
 
-       Later versions of Unix, e.g., SVr4,  added  support  for  the  terminal
-       database,  but  kept the tables to support the printers.  In an earlier
-       development effort, the tab-stop initialization provided by <STRONG>tset</STRONG> (1982)
-       and incorporated into <STRONG>tput</STRONG> uses the terminal database,
-
-       The  <STRONG>+m</STRONG>  option  was  documented  in  the  Base  Specifications Issue 5
-       (Unix98,  1997),  and  omitted  in  Issue  6  (Unix03,  2004)   without
-       documenting   the   rationale,  though  an  introductory  comment  <EM>"and</EM>
-       <EM>optionally</EM> <EM>adjusts</EM> <EM>the</EM> <EM>margin"</EM> remains, overlooked in the removal.  The
-       documented  <STRONG>tabs</STRONG>  utility  in  Issues  6 and later has no mechanism for
-       setting margins.  The <STRONG>+m</STRONG> option in this implementation differs from the
-       feature  in  SVr4  by  using terminal capabilities rather than built-in
-       tables.
-
-       POSIX documents no limits on the number of  tab  stops.   Documentation
-       for other implementations states that there is a limit on the number of
-       tab stops (e.g., 20 in PWB/Unix's <STRONG>tabs</STRONG> utility).  While some  terminals
-       may  not  accept  an arbitrary number of tab stops, this implementation
-       will attempt to set tab stops up to the right margin of the screen,  if
-       the given list happens to be that long.
-
-       The  <EM>Rationale</EM> section of the POSIX documentation goes into some detail
-       about the ways the committee considered redesigning the <STRONG>tabs</STRONG>  and  <STRONG>tput</STRONG>
-       utilities, without proposing an improved solution.  It comments that
-
-            no  known  historical  version  of tabs supports the capability of
+       Versions of the program in later releases of AT&amp;T Unix, such  as  SVr4,
+       added  support  for  the  terminal database, but retained the tables to
+       support the printers.  In an earlier development effort, the  tab  stop
+       initialization  provided  by  <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>  (1982),  and  incorporated  into
+       <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG> uses the terminal database,
+
+       The <STRONG>+m</STRONG> option was documented in the POSIX Base Specifications  Issue  5
+       (Unix98,  1997), then omitted in Issue 6 (Unix03, 2004) without express
+       motivation, though an introductory comment <EM>"and</EM> <EM>optionally</EM> <EM>adjusts</EM>  <EM>the</EM>
+       <EM>margin"</EM>   remains,   overlooked  in  the  removal.   The  <STRONG>tabs</STRONG>  utility
+       documented in Issues 6 and later has no mechanism for setting  margins.
+       The  <STRONG>+m</STRONG>  option  in <EM>ncurses</EM> <STRONG>tabs</STRONG> differs from the SVr4 feature by using
+       terminal capabilities rather than built-in tables.
+
+       POSIX  documents  no  limit  on  the  number  of  tab   stops.    Other
+       implementations impose one; the limit is 20 in PWB/Unix's <STRONG>tabs</STRONG> utility.
+       While some terminals may not accept an arbitrary number of  tab  stops,
+       <EM>ncurses</EM>  <STRONG>tabs</STRONG>  attempts  to set tab stops up to the right margin if the
+       list thereof is sufficiently long.
+
+       The "Rationale" section of the Issue 6 <STRONG>tabs</STRONG> reference page details  how
+       the  committee  considered  redesigning  the  <STRONG>tabs</STRONG>  and <STRONG>tput</STRONG> utilities,
+       without settling on an improved solution.  It claims that
+
+            no known historical version of tabs  supports  the  capability  of
             setting arbitrary tab stops.
 
-       However,  the  <EM>Explicit</EM>  <EM>Lists</EM>  described  in  this  manual  page  were
-       implemented  in  PWB/Unix.   Those  provide  the  capability of setting
-       abitrary tab stops.
+       Nevertheless,  the  feature  described  in  subsection "Explicit Lists"
+       above was implemented in PWB/Unix, and permits the setting of  abitrary
+       tab stops.
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
 
 
 
-ncurses 6.4                       2023-11-25                           <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>
+ncurses 6.4                       2023-12-16                           <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
@@ -277,6 +285,7 @@ ncurses 6.4                       2023-11-25                           <STRONG><
 </li>
 <li><a href="#h2-FILES">FILES</a></li>
 <li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
+<li><a href="#h2-HISTORY">HISTORY</a></li>
 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
 </ul>
 </div>
index 34b904a13eb10fba604aa2fd36b11ce4ed2f5bbc..1f70937c3d33d29e08d3da08a65214371d037428 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: term.5,v 1.67 2023/12/02 20:49:04 tom Exp @
+  * @Id: term.5,v 1.68 2023/12/16 20:32:22 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>term 5 2023-12-02 ncurses 6.4 File formats</TITLE>
+<TITLE>term 5 2023-12-16 ncurses 6.4 File formats</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">term 5 2023-12-02 ncurses 6.4 File formats</H1>
+<H1 class="no-header">term 5 2023-12-16 ncurses 6.4 File formats</H1>
 <PRE>
 <STRONG><A HREF="term.5.html">term(5)</A></STRONG>                          File formats                          <STRONG><A HREF="term.5.html">term(5)</A></STRONG>
 
@@ -60,7 +60,7 @@
 </PRE><H3><a name="h3-STORAGE-LOCATION">STORAGE LOCATION</a></H3><PRE>
        Compiled   terminfo   descriptions   are  placed  under  the  directory
        <STRONG>/usr/share/terminfo</STRONG>.  Two configurations are supported  (when  building
-       the <STRONG>ncurses</STRONG> libraries):
+       the <EM>ncurses</EM> libraries):
 
        <STRONG>directory</STRONG> <STRONG>tree</STRONG>
             A two-level scheme is used to avoid a linear search of a huge Unix
             with the terminfo's primary name as a key, and records  containing
             only aliases pointing to the primary name.
 
-            If  built  to  write  hashed  databases,  <STRONG>ncurses</STRONG>  can  still read
+            If  built  to  write  hashed  databases,  <EM>ncurses</EM>  can  still read
             terminfo databases organized as a directory tree, but cannot write
             entries  into  the  directory  tree.   It  can  write (or rewrite)
             entries in the hashed database.
 
-            <STRONG>ncurses</STRONG>  distinguishes  the  two  cases  in   the   <EM>TERMINFO</EM>   and
+            <EM>ncurses</EM>  distinguishes  the  two  cases  in   the   <EM>TERMINFO</EM>   and
             <EM>TERMINFO</EM><STRONG>_</STRONG><EM>DIRS</EM>  environment  variable  by assuming a directory tree
             for entries that correspond to an existing directory,  and  hashed
             database otherwise.
        binary format is used in all modern Unix systems.  Each system  uses  a
        predefined set of boolean, number or string capabilities.
 
-       The <STRONG>ncurses</STRONG> libraries and applications support extended terminfo binary
+       The <EM>ncurses</EM> libraries and applications support extended terminfo binary
        format, allowing users to  define  capabilities  which  are  loaded  at
        runtime.   This  extension  is made possible by using the fact that the
        other implementations stop reading the terminfo  data  when  they  have
-       reached  the  end  of the size given in the header.  <STRONG>ncurses</STRONG> checks the
+       reached  the  end  of the size given in the header.  <EM>ncurses</EM> checks the
        size, and if it exceeds that due to the predefined data,  continues  to
        parse according to its own scheme.
 
        The  count-  and  size-values for the extended string table include the
        extended capability <EM>names</EM> as well as extended capability <EM>values</EM>.
 
-       Using the counts and sizes, <STRONG>ncurses</STRONG> allocates arrays and reads data for
+       Using the counts and sizes, <EM>ncurses</EM> allocates arrays and reads data for
        the extended capabilities in the same order as the header information.
 
        The  extended  string  table  contains  values for string capabilities.
        extended  capabilities  in  order,  e.g.,  booleans,  then  numbers and
        finally strings.
 
-       By storing terminal descriptions  in  this  way,  <STRONG>ncurses</STRONG>  is  able  to
+       By storing terminal descriptions  in  this  way,  <EM>ncurses</EM>  is  able  to
        provide  a  database  useful  with  legacy  applications,  as  well  as
        providing data for applications which need  more  than  the  predefined
-       capabilities.  See <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG> for an overview of the way <STRONG>ncurses</STRONG> uses
+       capabilities.  See <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG> for an overview of the way <EM>ncurses</EM> uses
        this extended information.
 
        Applications which manipulate terminal data  can  use  the  definitions
 
 
 </PRE><H3><a name="h3-EXTENDED-NUMBER-FORMAT">EXTENDED NUMBER FORMAT</a></H3><PRE>
-       On occasion, 16-bit signed integers are not large enough.  With <STRONG>ncurses</STRONG>
+       On occasion, 16-bit signed integers are not large enough.  With <EM>ncurses</EM>
        6.1,  a new format was introduced by making a few changes to the legacy
        format:
 
        This  implementation  is by default compatible with the binary terminfo
        format used by Solaris curses, except in a few less-used details  where
        it  was  found that the latter did not match X/Open Curses.  The format
-       used by the other Unix versions can be matched by building ncurses with
+       used by the other Unix versions can be matched by building <EM>ncurses</EM> with
        different configuration options.
 
 
 </PRE><H3><a name="h3-Mixed-case-terminal-names">Mixed-case terminal names</a></H3><PRE>
        A small number of terminal descriptions  use  uppercase  characters  in
        their  names.   If  the  underlying  filesystem  ignores the difference
-       between  uppercase  and  lowercase,  <STRONG>ncurses</STRONG>  represents   the   "first
+       between  uppercase  and  lowercase,  <EM>ncurses</EM>  represents   the   "first
        character"  of  the  terminal  name used as the intermediate level of a
        directory tree in (two-character) hexadecimal form.
 
 
 </PRE><H3><a name="h3-Limits">Limits</a></H3><PRE>
-       <STRONG>ncurses</STRONG> stores compiled terminal descriptions in three related formats,
+       <EM>ncurses</EM> stores compiled terminal descriptions in three related formats,
        described in the sections
 
        <STRONG>o</STRONG>   <STRONG>LEGACY</STRONG> <STRONG>STORAGE</STRONG> <STRONG>FORMAT</STRONG>, and
 
        The  legacy storage format and the extended number format differ by the
        types of numeric capability which they can store (i.e.,  16-bit  versus
-       32-bit  integers).   The  extended storage format introduced by ncurses
+       32-bit  integers).   The  extended storage format introduced by <EM>ncurses</EM>
        5.0 adds data to either of these formats.
 
        Some limitations apply:
 
 </PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
        Thomas E. Dickey
-       extended terminfo format for ncurses 5.0
-       hashed database support for ncurses 5.6
-       extended number support for ncurses 6.1
+       extended terminfo format for <EM>ncurses</EM> 5.0
+       hashed database support for <EM>ncurses</EM> 5.6
+       extended number support for <EM>ncurses</EM> 6.1
 
        Eric S. Raymond
        documented legacy terminfo format, e.g., from <EM>pcurses</EM>.
 
 
 
-ncurses 6.4                       2023-12-02                           <STRONG><A HREF="term.5.html">term(5)</A></STRONG>
+ncurses 6.4                       2023-12-16                           <STRONG><A HREF="term.5.html">term(5)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 46f2f093daf0f9dac4441bbb938a32ca3cbdd70b..6d55396d518cd6d0277eff12b71c6961c8c9801f 100644 (file)
@@ -32,7 +32,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: terminfo.head,v 1.55 2023/11/25 19:52:56 tom Exp @
+  * @Id: terminfo.head,v 1.57 2023/12/18 01:15:58 tom Exp @
   * Head of terminfo man page ends here
   ****************************************************************************
   * Copyright 2018-2022,2023 Thomas E. Dickey                                *
@@ -62,7 +62,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: terminfo.tail,v 1.137 2023/12/03 00:17:23 tom Exp @
+  * @Id: terminfo.tail,v 1.139 2023/12/17 22:56:21 tom Exp @
   *.in -2
   *.in +2
   *.in -2
 <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 2023-11-25 ncurses 6.4 File formats</TITLE>
+<TITLE>terminfo 5 2023-12-17 ncurses 6.4 File formats</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">terminfo 5 2023-11-25 ncurses 6.4 File formats</H1>
+<H1 class="no-header">terminfo 5 2023-12-17 ncurses 6.4 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 <STRONG>ncurses</STRONG> version 6.4 (patch 20231202).
+       This manual describes <EM>ncurses</EM> version 6.4 (patch 20231217).
 
 
 </PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE>
        which are awkward or impossible to represent by reusing the  predefined
        capabilities.
 
-       <STRONG>ncurses</STRONG>    addresses   this   limitation   by   allowing   user-defined
+       <EM>ncurses</EM>    addresses   this   limitation   by   allowing   user-defined
        capabilities.  The <STRONG>tic</STRONG> and <STRONG>infocmp</STRONG> programs provide the <STRONG>-x</STRONG>  option  for
        this purpose.  When <STRONG>-x</STRONG> is set, <STRONG>tic</STRONG> treats unknown capabilities as user-
        defined.  That is, if <STRONG>tic</STRONG> encounters a capability name  which  it  does
        not  recognize, it infers its type (boolean, number or string) from the
        syntax and makes an extended table  entry  for  that  capability.   The
        <STRONG><A HREF="curs_extend.3x.html">use_extended_names(3x)</A></STRONG>  function  makes  this information conditionally
-       available to applications.   The  ncurses  library  provides  the  data
+       available to applications.   The  <EM>ncurses</EM>  library  provides  the  data
        leaving most of the behavior to applications:
 
        <STRONG>o</STRONG>   User-defined  capability  strings  whose  name  begins with "k" are
        numbered keys and the handful of special named keys) is best done using
        the longer names available using terminfo.
 
-       The ncurses library uses a few of these user-defined  capabilities,  as
+       The <EM>ncurses</EM> library uses a few of these user-defined  capabilities,  as
        described  in <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.  Other user-defined capabilities (including
        function keys) are described in the terminal database, in  the  section
        on <EM>NCURSES</EM> <EM>USER-DEFINABLE</EM> <EM>CAPABILITIES</EM>
 
        <STRONG>o</STRONG>   Both <STRONG>\E</STRONG> and <STRONG>\e</STRONG> map to an ESCAPE character,
 
-       <STRONG>o</STRONG>   <STRONG>^</STRONG><EM>x</I<STRONG>x</STRONG> maps to a control-<EM>x</EM> for any appropriate <EM>x</EM>, and
+       <STRONG>o</STRONG>   <STRONG>^</STRONG><STRONG><EM>x</EM></STRONG> maps to a control-<EM>x</EM> for any appropriate <EM>x</EM>, and
 
        <STRONG>o</STRONG>   the sequences
 
 
 
 </PRE><H3><a name="h3-Fetching-Compiled-Descriptions">Fetching Compiled Descriptions</a></H3><PRE>
-       Terminal  descriptions  in  <STRONG>ncurses</STRONG>  are  stored in terminal databases.
+       Terminal  descriptions  in  <EM>ncurses</EM>  are  stored in terminal databases.
        These databases, which are found by their pathname, may  be  configured
        either as directory trees or hashed databases (see <STRONG><A HREF="term.5.html">term(5)</A></STRONG>),
 
        The  library  uses  a  compiled-in  list  of  pathnames,  which  can be
        overridden  by  environment  variables.   Before  starting  to  search,
-       <STRONG>ncurses</STRONG>  checks  the  search list, eliminating duplicates and pathnames
-       where no terminal database is found.  The  <STRONG>ncurses</STRONG>  library  reads  the
+       <EM>ncurses</EM>  checks  the  search list, eliminating duplicates and pathnames
+       where no terminal database is found.  The  <EM>ncurses</EM>  library  reads  the
        first description which passes its consistency checks.
 
        <STRONG>o</STRONG>   The  environment variable <STRONG>TERMINFO</STRONG> is checked first, for a terminal
            database containing the terminal description.
 
-       <STRONG>o</STRONG>   Next, <STRONG>ncurses</STRONG> looks in <EM>$HOME/.terminfo</EM> for a compiled description.
+       <STRONG>o</STRONG>   Next, <EM>ncurses</EM> looks in <EM>$HOME/.terminfo</EM> for a compiled description.
 
            This is an optional feature which may be omitted entirely from  the
            library,  or  limited  to  prevent  accidental  use  by  privileged
            applications.
 
-       <STRONG>o</STRONG>   Next, if the environment variable  <EM>TERMINFO</EM><STRONG>_</STRONG><EM>DIRS</EM>  is  set,  <STRONG>ncurses</STRONG>
+       <STRONG>o</STRONG>   Next, if the environment variable  <EM>TERMINFO</EM><STRONG>_</STRONG><EM>DIRS</EM>  is  set,  <EM>ncurses</EM>
            interprets  the  contents  of  that  variable  as  a list of colon-
            separated pathnames of terminal databases to be searched.
 
            colon,  or  contains  adjacent colons) is interpreted as the system
            location <EM>/usr/share/terminfo</EM>.
 
-       <STRONG>o</STRONG>   Finally, <STRONG>ncurses</STRONG> searches these compiled-in locations:
+       <STRONG>o</STRONG>   Finally, <EM>ncurses</EM> searches these compiled-in locations:
 
            <STRONG>o</STRONG>   a list of directories (/usr/share/terminfo), and
 
 
        The <STRONG>TERMINFO</STRONG> variable can contain a terminal description instead of the
        pathname  of  a terminal database.  If this variable begins with "hex:"
-       or "b64:" then <STRONG>ncurses</STRONG> reads a terminal description  from  hexadecimal-
+       or "b64:" then <EM>ncurses</EM> reads a terminal description  from  hexadecimal-
        or  base64-encoded  data,  and  if  that  description  matches the name
        sought, will use that.  This encoded data can be  set  using  the  "-Q"
        option of <STRONG>tic</STRONG> or <STRONG>infocmp</STRONG>.
 
-       The  preceding addresses the usual configuration of <STRONG>ncurses</STRONG>, which uses
+       The  preceding addresses the usual configuration of <EM>ncurses</EM>, which uses
        terminal descriptions prepared in <EM>terminfo</EM> format.   While  <EM>termcap</EM>  is
-       less  expressive,  <STRONG>ncurses</STRONG>  can  also  be  configured  to  read <EM>termcap</EM>
+       less  expressive,  <EM>ncurses</EM>  can  also  be  configured  to  read <EM>termcap</EM>
        descriptions.   In  that  configuration,  it  checks  the  <EM>TERMCAP</EM>  and
        <EM>TERMPATH</EM>  variables  (for  content and search path, respectively) after
        the system terminal database.
                 <EM>static</EM>  variables.  They are the same.  Like SVr4 curses, XPG4
                 curses does not initialize these explicitly.
 
-            <STRONG>o</STRONG>   Before version 6.3, ncurses stores  both  <EM>dynamic</EM>  and  <EM>static</EM>
+            <STRONG>o</STRONG>   Before version 6.3, <EM>ncurses</EM> stores  both  <EM>dynamic</EM>  and  <EM>static</EM>
                 variables in persistent storage, initialized to zeros.
 
-            <STRONG>o</STRONG>   Beginning  with version 6.3, ncurses stores <EM>static</EM> and <EM>dynamic</EM>
+            <STRONG>o</STRONG>   Beginning  with version 6.3, <EM>ncurses</EM> stores <EM>static</EM> and <EM>dynamic</EM>
                 variables in the same manner as SVr4.
 
-                <STRONG>o</STRONG>   Unlike  other  implementations,  ncurses   zeros   dynamic
+                <STRONG>o</STRONG>   Unlike  other  implementations,  <EM>ncurses</EM>   zeros   dynamic
                     variables before the first <STRONG>%g</STRONG> or <STRONG>%P</STRONG> operator.
 
-                <STRONG>o</STRONG>   Like  SVr2,  the  scope of dynamic variables in ncurses is
+                <STRONG>o</STRONG>   Like  SVr2,  the  scope of dynamic variables in <EM>ncurses</EM> is
                     within the current call to <STRONG>tparm</STRONG>.  Use static variables if
                     persistent storage is needed.
 
        available.)
 
 
-</PRE><H3><a name="h3-Insert_delete-line-and-vertical-motions">Insert/delete line and vertical motions</a></H3><PRE>
+</PRE><H3><a name="h3-Insert_Delete-Line-and-Vertical-Motions">Insert/Delete Line and Vertical Motions</a></H3><PRE>
        If  the  terminal  can  open a new blank line before the line where the
        cursor is, this should be given as <STRONG>il1</STRONG>; this  is  done  only  from  the
        first  position  of  a  line.  The cursor must then appear on the newly
        The  boolean  capability  <STRONG>eslok</STRONG>  specifies that escape sequences, tabs,
        etc., work ordinarily in the status line.
 
-       The <STRONG>ncurses</STRONG> implementation does not yet use any of these  capabilities.
+       The <EM>ncurses</EM> implementation does not yet use any of these  capabilities.
        They are documented here in case they ever become important.
 
 
 
        <STRONG>o</STRONG>   Tektronix-like terminals have a predefined set of <EM>N</EM> colors (where <EM>N</EM>
            is usually 8), and can set character-cell foreground and background
-           characters independently, mixing them into <EM>N</EM> * <EM>N</EM> color-pairs.
+           characters independently, mixing them into <EM>N</EM> * <EM>N</EM> color pairs.
 
        <STRONG>o</STRONG>   On  HP-like  terminals,  the  user  must  set  each  color  pair up
            separately  (foreground  and  background  are   not   independently
-           settable).   Up  to  <EM>M</EM> color-pairs may be set up from 2*<EM>M</EM> different
+           settable).   Up  to  <EM>M</EM> color pairs may be set up from 2*<EM>M</EM> different
            colors.  ANSI-compatible terminals are Tektronix-like.
 
        Some basic color capabilities are independent of the color method.  The
        numeric  capabilities  <STRONG>colors</STRONG>  and <STRONG>pairs</STRONG> specify the maximum numbers of
-       colors and color-pairs that can be displayed  simultaneously.   The  <STRONG>op</STRONG>
+       colors and color pairs that can be displayed  simultaneously.   The  <STRONG>op</STRONG>
        (original pair) string resets foreground and background colors to their
        default values for the terminal.  The <STRONG>oc</STRONG> string resets  all  colors  or
-       color-pairs  to  their default values for the terminal.  Some terminals
+       color  pairs  to their default values for the terminal.  Some terminals
        (including many PC terminal emulators)  erase  screen  areas  with  the
        current  background  color rather than the power-up default background;
        these should have the boolean capability <STRONG>bce</STRONG>.
        The  <STRONG>setaf</STRONG>/<STRONG>setab</STRONG>  and  <STRONG>setf</STRONG>/<STRONG>setb</STRONG>  capabilities  take  a  single numeric
        argument each.  Argument values 0-7 of <STRONG>setaf</STRONG>/<STRONG>setab</STRONG> are portably defined
        as  follows (the middle column is the symbolic #define available in the
-       header for the <STRONG>curses</STRONG> or <STRONG>ncurses</STRONG> libraries).  The terminal hardware  is
+       header for the <STRONG>curses</STRONG> or <EM>ncurses</EM> libraries).  The terminal hardware  is
        free  to  map  these  as  it  likes, but the RGB values indicate normal
        locations in color space.
 
        It  is  important  to  not  confuse the two sets of color capabilities;
        otherwise red/blue will be interchanged on the display.
 
-       On an HP-like terminal, use <STRONG>scp</STRONG> with a color-pair number  parameter  to
+       On an HP-like terminal, use <STRONG>scp</STRONG> with a color pair number  parameter  to
        set which color pair is current.
 
        Some terminals allow the <EM>color</EM> <EM>values</EM> to be modified:
            Saturation) indices.  The ranges are terminal-dependent.
 
        <STRONG>o</STRONG>   On  an HP-like terminal, <STRONG>initp</STRONG> may give a capability for changing a
-           color-pair value.  It will  take  seven  parameters;  a  color-pair
+           color pair value.  It will take  seven  parameters;  a  color  pair
            number  (0  to  <STRONG>max_pairs</STRONG>  -  1),  and two triples describing first
            background and then foreground colors.  These  parameters  must  be
            (Red,  Green,  Blue)  or  (Hue, Lightness, Saturation) depending on
            <STRONG>hls</STRONG>.
 
        On some color terminals,  colors  collide  with  highlights.   You  can
-       register  these collisions with the <STRONG>ncv</STRONG> capability.  This is a bit-mask
+       register  these collisions with the <STRONG>ncv</STRONG> capability.  This is a bit mask
        of  attributes  not  to  be  used  when  colors   are   enabled.    The
        correspondence with the attributes understood by <STRONG>curses</STRONG> is as follows:
 
        with the foreground color blue and is  not  available  in  color  mode.
        These should have an <STRONG>ncv</STRONG> capability of 2.
 
-       SVr4  curses does nothing with <STRONG>ncv</STRONG>, ncurses recognizes it and optimizes
+       SVr4  curses does nothing with <STRONG>ncv</STRONG>, <EM>ncurses</EM> recognizes it and optimizes
        the output in favor of colors.
 
 
        If the terminal requires other than a null (zero) character as  a  pad,
        then  this  can  be  given as pad.  Only the first character of the pad
        string is used.  If the terminal does not have a pad character, specify
-       npc.   Note that ncurses implements the termcap-compatible <STRONG>PC</STRONG> variable;
+       npc.   Note that <EM>ncurses</EM> implements the termcap-compatible <STRONG>PC</STRONG> variable;
        though the application may set this value to  something  other  than  a
-       null,  ncurses will test <STRONG>npc</STRONG> first and use napms if the terminal has no
+       null,  <EM>ncurses</EM> will test <STRONG>npc</STRONG> first and use napms if the terminal has no
        pad character.
 
        If the terminal can move up or down half a line, this can be  indicated
        while an <STRONG>mc5p</STRONG> is in effect.
 
 
-</PRE><H3><a name="h3-Glitches-and-Braindamage">Glitches and Braindamage</a></H3><PRE>
+</PRE><H3><a name="h3-Glitches-and-Brain-Damage">Glitches and Brain Damage</a></H3><PRE>
        Hazeltine  terminals, which do not allow "~" characters to be displayed
        should indicate <STRONG>hz</STRONG>.
 
        teleray_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 necessary to use delete and insert
-       line.  The ncurses implementation ignores this glitch.
+       line.  The <EM>ncurses</EM> implementation ignores this glitch.
 
        The Beehive Superbee, which is unable to correctly transmit the  escape
        or  control/C  characters,  has <STRONG>xsb</STRONG>, indicating that the f1 key is used
        terminal types and users whose <EM>TERM</EM> variable does not  have  a  termcap
        entry.
 
-       When  in  -C (translate to termcap) mode, the <STRONG>ncurses</STRONG> implementation of
+       When  in  -C (translate to termcap) mode, the <EM>ncurses</EM> implementation of
        <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG> issues warning messages when the pre-tc  length  of  a  termcap
        translation  is  too  long.  The -c (check) option also checks resolved
        (after tc expansion) lengths.
 
 
-</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       Do not count on  compiled  (binary)  <EM>terminfo</EM>  entries  being  portable
-       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
-       Curses extensions.
+</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
+       <EM>/usr/share/terminfo</EM>
+              compiled terminal description database directory
 
 
 </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
-       Searching    for   terminal   descriptions   in   <EM>$HOME/.terminfo</EM>   and
+       Searching   for   terminal   descriptions   in   <EM>$HOME/.terminfo</EM>    and
        <EM>TERMINFO</EM><STRONG>_</STRONG><EM>DIRS</EM> is not supported by older implementations.
 
-       Some SVr4 <STRONG>curses</STRONG> implementations, and all  previous  to  SVr4,  do  not
+       Some  SVr4  <STRONG>curses</STRONG>  implementations,  and  all previous to SVr4, do not
        interpret the %A and %O operators in parameter strings.
 
-       SVr4/XPG4  do  not  specify  whether <STRONG>msgr</STRONG> licenses movement while in an
-       alternate-character-set mode (such modes may, among other  things,  map
-       CR  and  NL  to  characters  that  do  not trigger local motions).  The
-       <STRONG>ncurses</STRONG> implementation ignores <STRONG>msgr</STRONG> in <STRONG>ALTCHARSET</STRONG>  mode.   This  raises
+       SVr4/XPG4 do not specify whether <STRONG>msgr</STRONG> licenses  movement  while  in  an
+       alternate-character-set  mode  (such modes may, among other things, map
+       CR and NL to characters  that  do  not  trigger  local  motions).   The
+       <EM>ncurses</EM>  implementation  ignores  <STRONG>msgr</STRONG> in <STRONG>ALTCHARSET</STRONG> mode.  This raises
        the  possibility  that  an  XPG4  implementation  making  the  opposite
-       interpretation may need terminfo entries made for <STRONG>ncurses</STRONG> to have  <STRONG>msgr</STRONG>
+       interpretation  may need terminfo entries made for <EM>ncurses</EM> to have <STRONG>msgr</STRONG>
        turned off.
 
-       The <STRONG>ncurses</STRONG> library handles insert-character and insert-character modes
-       in a slightly non-standard way to get better  update  efficiency.   See
+       The <EM>ncurses</EM> library handles insert-character and insert-character modes
+       in  a  slightly  non-standard way to get better update efficiency.  See
        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 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&amp;T 505 terminal.
 
-       Be  careful  assigning the <STRONG>kmous</STRONG> capability.  The <STRONG>ncurses</STRONG> library wants
-       to interpret it as <STRONG>KEY_MOUSE</STRONG>, for use by terminals and  emulators  like
-       xterm  that can return mouse-tracking information in the keyboard-input
+       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
+       xterm that can return mouse-tracking information in the  keyboard-input
        stream.
 
-       X/Open Curses does not mention  italics.   Portable  applications  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> (<STRONG>ncv</STRONG>) capability.   The  32768  mask  value
-       used  for  italics with <STRONG>ncv</STRONG> can be confused with an absent or cancelled
-       <STRONG>ncv</STRONG>.  If italics should work with colors, then the <STRONG>ncv</STRONG>  value  must  be
+       X/Open  Curses  does  not  mention italics.  Portable applications 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>  (<STRONG>ncv</STRONG>)  capability.  The 32768 mask value
+       used for italics with <STRONG>ncv</STRONG> can be confused with an absent  or  cancelled
+       <STRONG>ncv</STRONG>.   If  italics  should work with colors, then the <STRONG>ncv</STRONG> value must be
        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
+       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.
 
        <STRONG>o</STRONG>   SVr4, Solaris, and <EM>ncurses</EM> support all SVr4 capabilities.
 
-       <STRONG>o</STRONG>   IRIX supports the SVr4  set  and  adds  one  undocumented  extended
+       <STRONG>o</STRONG>   IRIX  supports  the  SVr4  set  and  adds one undocumented extended
            string capability (<STRONG>set_pglen</STRONG>).
 
-       <STRONG>o</STRONG>   SVr1   and   Ultrix   support   a  restricted  subset  of  <EM>terminfo</EM>
-           capabilities.  The Booleans end with <STRONG>xon_xoff</STRONG>;  the  numerics  with
+       <STRONG>o</STRONG>   SVr1  and  Ultrix  support  a   restricted   subset   of   <EM>terminfo</EM>
+           capabilities.   The  Booleans  end with <STRONG>xon_xoff</STRONG>; the numerics with
            <STRONG>width_status_line</STRONG>; and the strings with <STRONG>prtr_non</STRONG>.
 
-       <STRONG>o</STRONG>   HP/UX   supports  the  SVr1  subset,  plus  the  SVr[234]  numerics
-           <STRONG>num_labels</STRONG>,  <STRONG>label_height</STRONG>,  <STRONG>label_width</STRONG>,  plus  function  keys   11
-           through  63, plus <STRONG>plab_norm</STRONG>, <STRONG>label_on</STRONG>, and <STRONG>label_off</STRONG>, plus a number
+       <STRONG>o</STRONG>   HP/UX  supports  the  SVr1  subset,  plus  the  SVr[234]   numerics
+           <STRONG>num_labels</STRONG>,   <STRONG>label_height</STRONG>,  <STRONG>label_width</STRONG>,  plus  function  keys  11
+           through 63, plus <STRONG>plab_norm</STRONG>, <STRONG>label_on</STRONG>, and <STRONG>label_off</STRONG>, plus a  number
            of incompatible string table extensions.
 
-       <STRONG>o</STRONG>   AIX supports the SVr1 subset, plus function  keys  11  through  63,
+       <STRONG>o</STRONG>   AIX  supports  the  SVr1  subset, plus function keys 11 through 63,
            plus a number of incompatible string table extensions.
 
        <STRONG>o</STRONG>   OSF/1 supports both the SVr4 set and the AIX extensions.
 
 
-</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
-       <EM>/usr/share/terminfo</EM>
-              compiled terminal description database directory
+</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
+       Do not count on  compiled  (binary)  <EM>terminfo</EM>  entries  being  portable
+       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
+       Curses extensions.
 
 
 </PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
 
 
 
-ncurses 6.4                       2023-11-25                       <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
+ncurses 6.4                       2023-12-17                       <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
@@ -2716,7 +2716,7 @@ ncurses 6.4                       2023-11-25                       <STRONG><A HR
 <li><a href="#h3-Cursor-Motions">Cursor Motions</a></li>
 <li><a href="#h3-Margins">Margins</a></li>
 <li><a href="#h3-Area-Clears">Area Clears</a></li>
-<li><a href="#h3-Insert_delete-line-and-vertical-motions">Insert/delete line and vertical motions</a></li>
+<li><a href="#h3-Insert_Delete-Line-and-Vertical-Motions">Insert/Delete Line and Vertical Motions</a></li>
 <li><a href="#h3-Insert_Delete-Character">Insert/Delete Character</a></li>
 <li><a href="#h3-Highlighting_-Underlining_-and-Visible-Bells">Highlighting, Underlining, and Visible Bells</a></li>
 <li><a href="#h3-Keypad-and-Function-Keys">Keypad and Function Keys</a></li>
@@ -2726,13 +2726,13 @@ ncurses 6.4                       2023-11-25                       <STRONG><A HR
 <li><a href="#h3-Line-Graphics">Line Graphics</a></li>
 <li><a href="#h3-Color-Handling">Color Handling</a></li>
 <li><a href="#h3-Miscellaneous">Miscellaneous</a></li>
-<li><a href="#h3-Glitches-and-Braindamage">Glitches and Braindamage</a></li>
+<li><a href="#h3-Glitches-and-Brain-Damage">Glitches and Brain Damage</a></li>
 <li><a href="#h3-Pitfalls-of-Long-Entries">Pitfalls of Long Entries</a></li>
 </ul>
 </li>
-<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
-<li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li>
 <li><a href="#h2-FILES">FILES</a></li>
+<li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li>
+<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
 <li><a href="#h2-AUTHORS">AUTHORS</a></li>
 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
 </ul>
index b934799e8f9306e8ba634fae7eca636264afc91a..db6e2ff527f7b97dfd3aaaf275a9e34d78c94581 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: tic.1m,v 1.103 2023/12/02 20:50:53 tom Exp @
+  * @Id: tic.1m,v 1.104 2023/12/16 20:33:11 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>tic 1m 2023-12-02 ncurses 6.4 User commands</TITLE>
+<TITLE>tic 1m 2023-12-16 ncurses 6.4 User commands</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">tic 1m 2023-12-02 ncurses 6.4 User commands</H1>
+<H1 class="no-header">tic 1m 2023-12-16 ncurses 6.4 User commands</H1>
 <PRE>
 <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>                          User commands                         <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>
 
 
        <STRONG>-I</STRONG>     Force source translation to terminfo format.
 
-       <STRONG>-K</STRONG>     Suppress some longstanding ncurses extensions to termcap format,
+       <STRONG>-K</STRONG>     Suppress some longstanding <EM>ncurses</EM> extensions to termcap format,
               e.g., "\s" for space.
 
        <STRONG>-L</STRONG>     Force source translation to terminfo format  using  the  long  C
             file.  Normally, it infers data which is commonly missing in older
             terminfo data, or in termcaps.
 
-       <STRONG>-V</STRONG>   reports the version of ncurses which was used in this program, and
+       <STRONG>-V</STRONG>   reports the version of <EM>ncurses</EM> which was used in this program, and
             exits.
 
        <STRONG>-v</STRONG><EM>n</EM>  specifies that (verbose) output be written to standard error trace
             The  optional  parameter  <EM>n</EM>  is  a  number from 1 to 9, inclusive,
             indicating the desired level of detail of information.
 
-            <STRONG>o</STRONG>   If ncurses is built  without  tracing  support,  the  optional
+            <STRONG>o</STRONG>   If <EM>ncurses</EM> is built  without  tracing  support,  the  optional
                 parameter is ignored.
 
             <STRONG>o</STRONG>   If <EM>n</EM> is omitted, the default level is 1.
 
            <STRONG>-0</STRONG> <STRONG>-1</STRONG> <STRONG>-C</STRONG> <STRONG>-G</STRONG> <STRONG>-I</STRONG> <STRONG>-N</STRONG> <STRONG>-R</STRONG> <STRONG>-T</STRONG> <STRONG>-V</STRONG> <STRONG>-a</STRONG> <STRONG>-e</STRONG> <STRONG>-f</STRONG> <STRONG>-g</STRONG> <STRONG>-o</STRONG> <STRONG>-r</STRONG> <STRONG>-s</STRONG> <STRONG>-t</STRONG> <STRONG>-x</STRONG>
 
-       <STRONG>o</STRONG>   The NetBSD <STRONG>tic</STRONG>  supports a few of the ncurses options
+       <STRONG>o</STRONG>   The NetBSD <STRONG>tic</STRONG> supports a few of the <EM>ncurses</EM> options
 
            <STRONG>-a</STRONG> <STRONG>-o</STRONG> <STRONG>-x</STRONG>
 
 
        Shortly after Issue 7 was released,  Tru64  was  discontinued.   As  of
        2019,  the  surviving  implementations  of <STRONG>tic</STRONG> are SVr4 (AIX, HP-UX and
-       Solaris), ncurses and NetBSD curses.  The SVr4 <STRONG>tic</STRONG> programs all support
+       Solaris), <EM>ncurses</EM> and NetBSD curses.  The SVr4 <STRONG>tic</STRONG> programs all support
        the  <STRONG>-v</STRONG> option.  The NetBSD <STRONG>tic</STRONG> program follows X/Open's documentation,
        omitting the <STRONG>-v</STRONG> option.
 
        Release 4, the table of capabilities grew from  180  (<EM>pcurses</EM>)  to  464
        (Solaris).
 
-       In  early  development of ncurses (1993), Zeyd Ben-Halim used the table
+       In  early  development of <EM>ncurses</EM> (1993), Zeyd Ben-Halim used the table
        from <EM>mytinfo</EM> to extend the  <EM>pcurses</EM>  table  to  469  capabilities  (456
        matched  SVr4, 8 were only in SVr4, 13 were not in SVr4).  Of those 13,
        11 were ultimately discarded (perhaps to  match  the  draft  of  X/Open
        Curses).   The exceptions were <STRONG>memory_lock_above</STRONG> and <STRONG>memory_unlock</STRONG> (see
        <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>).
 
-       Eric Raymond incorporated parts of <EM>mytinfo</EM> into  ncurses  to  implement
+       Eric Raymond incorporated parts of <EM>mytinfo</EM> into  <EM>ncurses</EM>  to  implement
        the  termcap-to-terminfo  source conversion, and extended that to begin
        development of the corresponding terminfo-to-termcap source conversion,
        Thomas  Dickey  completed  that  development over the course of several
        capabilities.
 
        In  2010,  Roy  Marples provided a <STRONG>tic</STRONG> program and terminfo library for
-       NetBSD.  That implementation  adapts  several  features  from  ncurses,
+       NetBSD.  That implementation  adapts  several  features  from  <EM>ncurses</EM>,
        including <STRONG>tic</STRONG>'s <STRONG>-x</STRONG> option.
 
        The  <STRONG>-c</STRONG>  option  tells <STRONG>tic</STRONG> to check for problems in the terminfo source
 
        <STRONG>o</STRONG>   <EM>pcurses</EM> had 8 warnings
 
-       <STRONG>o</STRONG>   ncurses in 1996 had 16 warnings
+       <STRONG>o</STRONG>   <EM>ncurses</EM> in 1996 had 16 warnings
 
        <STRONG>o</STRONG>   Solaris (SVr4) curses has 28 warnings
 
        <STRONG>o</STRONG>   NetBSD tic in 2019 has 19 warnings.
 
-       <STRONG>o</STRONG>   ncurses in 2019 has 96 warnings
+       <STRONG>o</STRONG>   <EM>ncurses</EM> in 2019 has 96 warnings
 
-       The checking done in ncurses' <STRONG>tic</STRONG> helps with the conversion to termcap,
+       The checking done in <EM>ncurses</EM>' <STRONG>tic</STRONG> helps with the conversion to termcap,
        as well as pointing out errors and inconsistencies.  It is also used to
        ensure consistency with the user-defined capabilities.  There  are  527
-       distinct  capabilities  in ncurses' terminal database; 128 of those are
+       distinct  capabilities  in <EM>ncurses</EM>' terminal database; 128 of those are
        user-defined.
 
 
 
 
 
-ncurses 6.4                       2023-12-02                           <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>
+ncurses 6.4                       2023-12-16                           <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index e2128a037757da42adca422d15ebfc7e843e1135..16f073171496e634318871a4efb6b735620c78a8 100644 (file)
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: toe.1m,v 1.58 2023/12/02 20:49:04 tom Exp @
+  * @Id: toe.1m,v 1.59 2023/12/16 21:01:59 tom Exp @
   * toe -a | grep -E '^(xterm|vt)'
   * The next row overruns the line length on DWB nroff (65n).
   * toe -as | grep -E '(^-+&gt;|:.(xterm|vt))'
 <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>toe 1m 2023-12-02 ncurses 6.4 User commands</TITLE>
+<TITLE>toe 1m 2023-12-16 ncurses 6.4 User commands</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">toe 1m 2023-12-02 ncurses 6.4 User commands</H1>
+<H1 class="no-header">toe 1m 2023-12-16 ncurses 6.4 User commands</H1>
 <PRE>
 <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>                          User commands                         <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>
 
@@ -67,8 +67,8 @@
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
        <STRONG>toe</STRONG>  reports  to  the  standard  output  stream the (primary) names and
        descriptions of the terminal types available to the  <EM>terminfo</EM>  library.
-       Each <EM>directory</EM> operand is scanned; if none are given, <STRONG>toe</STRONG> scans the the
-       default <EM>terminfo</EM> directory.
+       Each  <EM>directory</EM>  is  scanned;  if none are given, <STRONG>toe</STRONG> scans the default
+       <EM>terminfo</EM> directory.
 
 
 </PRE><H2><a name="h2-OPTIONS">OPTIONS</a></H2><PRE>
 
 
 
-ncurses 6.4                       2023-12-02                           <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>
+ncurses 6.4                       2023-12-16                           <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index ff5b1c453a13de4caf58b7ad550fb39eb4200873..409408964e378727828a517c19d508b7b38307bf 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: tput.1,v 1.91 2023/12/02 20:49:04 tom Exp @
+  * @Id: tput.1,v 1.92 2023/12/16 20:32:22 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>tput 1 2023-12-02 ncurses 6.4 User commands</TITLE>
+<TITLE>tput 1 2023-12-16 ncurses 6.4 User commands</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">tput 1 2023-12-02 ncurses 6.4 User commands</H1>
+<H1 class="no-header">tput 1 2023-12-16 ncurses 6.4 User commands</H1>
 <PRE>
 <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>                          User commands                         <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>
 
               variable <EM>TERM</EM>.  If <STRONG>-T</STRONG> is specified,  then  the  shell  variables
               <EM>LINES</EM> and <EM>COLUMNS</EM> will also be ignored.
 
-       <STRONG>-V</STRONG>     reports  the  version of ncurses which was used in this program,
+       <STRONG>-V</STRONG>     reports  the  version of <EM>ncurses</EM> which was used in this program,
               and exits.
 
        <STRONG>-x</STRONG>     prevents <STRONG>tput</STRONG> from attempting to clear the scrollback buffer.
        <STRONG>tput</STRONG>  <STRONG>reset</STRONG>.   The  <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>  utility  also  treats  a  link named <STRONG>reset</STRONG>
        specially.
 
-       Before ncurses 6.1, the two utilities were different from each other:
+       Before <EM>ncurses</EM> 6.1, the two utilities were different from each other:
 
        <STRONG>o</STRONG>   <STRONG>tset</STRONG> utility reset the terminal modes and special  characters  (not
            done with <STRONG>tput</STRONG>).
        <STRONG>o</STRONG>   The <STRONG>reset</STRONG> program is usually an alias for  <STRONG>tset</STRONG>,  because  of  this
            difference with resetting terminal modes and special characters.
 
-       With  the  changes  made  for ncurses 6.1, the <EM>reset</EM> feature of the two
+       With  the  changes  made  for <EM>ncurses</EM> 6.1, the <EM>reset</EM> feature of the two
        programs is (mostly) the same.  A few differences remain:
 
        <STRONG>o</STRONG>   The <STRONG>tset</STRONG> program waits  one  second  when  resetting,  in  case  it
            before falling back to "/dev/tty" and finally just assumes a 1200Bd
            terminal.  When updating terminal modes, it ignores errors.
 
-           Until  changes made after ncurses 6.0, <STRONG>tput</STRONG> did not modify terminal
+           Until  changes made after <EM>ncurses</EM> 6.0, <STRONG>tput</STRONG> did not modify terminal
            modes.  <STRONG>tput</STRONG> now uses a similar scheme, using functions shared with
            <STRONG>tset</STRONG>  (and ultimately based on the 4.4BSD <STRONG>tset</STRONG>).  If it is not able
            to open a terminal, e.g., when running in <STRONG>cron(1)</STRONG>, <STRONG>tput</STRONG> will return
 
            Besides  providing  more  reliable operation than AT&amp;T's utility, a
            portability problem is introduced  by  this  analysis:  An  OpenBSD
-           developer  adapted  the  internal  library function from ncurses to
+           developer  adapted  the  internal  library function from <EM>ncurses</EM> to
            port NetBSD's  termcap-based  <STRONG>tput</STRONG>  to  terminfo.   That  had  been
            modified  to  interpret  multiple  commands  on  a  line.  Portable
-           applications should not rely upon this feature; ncurses provides it
+           applications should not rely upon this feature; <EM>ncurses</EM> provides it
            to support applications written specifically for OpenBSD.
 
        This  implementation  (unlike  others)  can  accept  both  <EM>termcap</EM>  and
            2010, NetBSD's <STRONG>tput</STRONG> uses terminfo names.   Before  that,  it  (like
            FreeBSD) recognized termcap names.
 
-           Beginning  in  2021,  FreeBSD uses the ncurses <STRONG>tput</STRONG>, configured for
+           Beginning  in  2021,  FreeBSD uses the <EM>ncurses</EM> <STRONG>tput</STRONG>, configured for
            both terminfo (tested first) and termcap (as a fallback).
 
        Because (apparently) <EM>all</EM> of the certified Unix systems support the full
            absent or cancelled numeric value versus an (unsigned) exit code.
 
        The various Unix systems (AIX, HP-UX, Solaris) use the same  exit-codes
-       as ncurses.
+       as <EM>ncurses</EM>.
 
        NetBSD curses documents different exit codes which do not correspond to
-       either ncurses or X/Open.
+       either <EM>ncurses</EM> or X/Open.
 
 
 </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
        BSD:  Ross  Ridge's  <EM>mytinfo</EM> package, published on <EM>comp.sources.unix</EM> in
        December 1992.  Ridge's program made  more  sophisticated  use  of  the
        terminal  capabilities  than  the  BSD program.  Eric Raymond used that
-       <STRONG>tput</STRONG> program (and other parts of <EM>mytinfo</EM>)  in  ncurses  in  June  1995.
+       <STRONG>tput</STRONG> program (and other parts of <EM>mytinfo</EM>)  in  <EM>ncurses</EM>  in  June  1995.
        Using  the  portions  dealing with terminal capabilities almost without
        change,  Raymond  made  improvements  to  the  way   the   command-line
        parameters were handled.
 
 
 
-ncurses 6.4                       2023-12-02                           <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>
+ncurses 6.4                       2023-12-16                           <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 966068ba1d8cba7ce62d0363a887feb333f2047d..5064c686d32f45398783f7461f201319413cdf4e 100644 (file)
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: tset.1,v 1.77 2023/12/02 20:52:24 tom Exp @
+  * @Id: tset.1,v 1.78 2023/12/16 20:32:22 tom Exp @
   * https://minnie.tuhs.org/cgi-bin/utree.pl?file=1BSD/s6/reset.c
   * https://minnie.tuhs.org/cgi-bin/utree.pl?file=3BSD/usr/src/cmd/\
   *   reset.c
 <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>tset 1 2023-12-02 ncurses 6.4 User commands</TITLE>
+<TITLE>tset 1 2023-12-16 ncurses 6.4 User commands</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">tset 1 2023-12-02 ncurses 6.4 User commands</H1>
+<H1 class="no-header">tset 1 2023-12-16 ncurses 6.4 User commands</H1>
 <PRE>
 <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>                          User commands                         <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>
 
             variable <EM>TERM</EM> to the standard output; see subsection "Setting  the
             Environment".
 
-       <STRONG>-V</STRONG>   reports the version of ncurses which was used in this program, and
+       <STRONG>-V</STRONG>   reports the version of <EM>ncurses</EM> which was used in this program, and
             exits.
 
        <STRONG>-w</STRONG>   Resize the window to match the  size  deduced  via  <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG>.
        few exceptions we shall consider now.
 
        A few options are different because the <EM>TERMCAP</EM> variable is  no  longer
-       supported under terminfo-based <STRONG>ncurses</STRONG>:
+       supported under terminfo-based <EM>ncurses</EM>:
 
        <STRONG>o</STRONG>   The  <STRONG>-S</STRONG>  option  of  BSD  <STRONG>tset</STRONG>  no longer works; it prints an error
            message to the standard error and dies.
            to  set  the  window  size if <STRONG>tset</STRONG> is not able to obtain the window
            size from the operating system.
 
-       <STRONG>o</STRONG>   In ncurses, <STRONG>tset</STRONG> obtains the window size using <STRONG>setupterm</STRONG>, which may
+       <STRONG>o</STRONG>   In <EM>ncurses</EM>, <STRONG>tset</STRONG> obtains the window size using <STRONG>setupterm</STRONG>, which may
            be  from  the  operating  system, the <EM>LINES</EM> and <EM>COLUMNS</EM> environment
            variables or the terminal description.
 
 
 
 
-ncurses 6.4                       2023-12-02                           <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>
+ncurses 6.4                       2023-12-16                           <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 777caad94b7e62ab5853f8628a954fcc51a6b027..0491b60adda28f67cb187d1307f0d6d23776f31a 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: user_caps.5,v 1.41 2023/10/07 21:19:07 tom Exp @
+  * @Id: user_caps.5,v 1.42 2023/12/16 20:32:22 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>user_caps 5 2023-10-07 ncurses 6.4 File formats</TITLE>
+<TITLE>user_caps 5 2023-12-16 ncurses 6.4 File formats</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">user_caps 5 2023-10-07 ncurses 6.4 File formats</H1>
+<H1 class="no-header">user_caps 5 2023-12-16 ncurses 6.4 File formats</H1>
 <PRE>
 <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>                     File formats                     <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>
 
@@ -60,7 +60,7 @@
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
 
 </PRE><H3><a name="h3-Background">Background</a></H3><PRE>
-       Before  ncurses  5.0,  terminfo  databases  used  a <EM>fixed</EM> <EM>repertoire</EM> of
+       Before  <EM>ncurses</EM>  5.0,  terminfo  databases  used  a <EM>fixed</EM> <EM>repertoire</EM> of
        terminal capabilities designed for the SVr2 terminal database in  1984,
        and  extended  in  stages  through SVr4 (1989), and standardized in the
        Single Unix Specification beginning in 1995.
            needed, while others were added  (out  of  order)  to  comply  with
            X/Open Curses.
 
-           While  ncurses' repertoire of predefined capabilities is closest to
+           While  <EM>ncurses</EM>' repertoire of predefined capabilities is closest to
            Solaris, Solaris's terminfo database has a few differences from the
-           list  published  by  X/Open  Curses.   For  example, ncurses can be
+           list  published  by  X/Open  Curses.   For  example, <EM>ncurses</EM> can be
            configured with tables which match the terminal databases for  AIX,
            HP-UX or OSF/1, rather than the default Solaris-like configuration.
 
-       <STRONG>o</STRONG>   In  SVr4  curses  and  ncurses, the terminal database is defined at
+       <STRONG>o</STRONG>   In  SVr4  curses  and  <EM>ncurses</EM>, the terminal database is defined at
            compile-time using a text file which lists the  different  terminal
            capabilities.
 
            In  principle,  the  text-file  can  be  extended,  but  doing this
            requires recompiling and reinstalling the library.   The  text-file
-           used  in  ncurses  for  terminal  capabilities includes details for
+           used  in  <EM>ncurses</EM>  for  terminal  capabilities includes details for
            various systems past the documented X/Open  Curses  features.   For
-           example, ncurses supports these capabilities in each configuration:
+           example, <EM>ncurses</EM> supports these capabilities in each configuration:
 
                memory_lock
                     (meml) lock memory above cursor
 
        Although  termcap's  extensibility  was  rarely  used (it was never the
        <EM>speaker</EM> who had actually used the feature), the criticism had a  point.
-       ncurses   5.0  provided  a  way  to  detect  nonstandard  capabilities,
+       <EM>ncurses</EM>   5.0  provided  a  way  to  detect  nonstandard  capabilities,
        determine their type and optionally store and retrieve them  in  a  way
        which did not interfere with other applications.  These are referred to
        as <EM>user-defined</EM> <EM>capabilities</EM> because no modifications to the  toolset's
        predefined capability names are needed.
 
-       The  ncurses  utilities <STRONG>tic</STRONG> and <STRONG>infocmp</STRONG> have a command-line option "-x"
+       The  <EM>ncurses</EM>  utilities <STRONG>tic</STRONG> and <STRONG>infocmp</STRONG> have a command-line option "-x"
        to  control  whether  the  nonstandard  capabilities  are   stored   or
        retrieved.   A  library function <STRONG>use_extended_names</STRONG> is provided for the
        same purpose.
        user-defined  capability  if  the  capability  name  is  not one of the
        predefined names.
 
-       Because ncurses provides  a  termcap  library  interface,  these  user-
+       Because <EM>ncurses</EM> provides  a  termcap  library  interface,  these  user-
        defined capabilities may be visible to termcap applications:
 
        <STRONG>o</STRONG>   The   termcap  interface  (like  all  implementations  of  termcap)
            predefined function-key names, to which a series  of  keys  can  be
            assigned,   that  is  insufficient  for  more  than  a  dozen  keys
            multiplied by more than a couple  of  modifier  combinations.   The
-           ncurses  database  uses  a  convention based on <STRONG>xterm(1)</STRONG> to provide
+           <EM>ncurses</EM>  database  uses  a  convention based on <STRONG>xterm(1)</STRONG> to provide
            extended special-key names.
 
            Fitting that into termcap's limitation of 2-character  names  would
 
 
 </PRE><H3><a name="h3-Recognized-capabilities">Recognized capabilities</a></H3><PRE>
-       The ncurses library uses the user-definable  capabilities.   While  the
-       terminfo  database  may  have  other extensions, ncurses makes explicit
+       The <EM>ncurses</EM> library uses the user-definable  capabilities.   While  the
+       terminfo  database  may  have  other extensions, <EM>ncurses</EM> makes explicit
        checks for these:
 
           AX <EM>boolean</EM>, asserts that the terminal interprets SGR 39 and  SGR  49
              The command "<STRONG>tput</STRONG> <STRONG>clear</STRONG>" does the same thing.
 
           NQ <EM>boolean</EM>, used to suppress a consistency  check  in  tic  for  the
-             ncurses  capabilities  in user6 through user9 (u6, u7, u8 and u9)
+             <EM>ncurses</EM>  capabilities  in user6 through user9 (u6, u7, u8 and u9)
              which tell how to query the terminal's cursor  position  and  its
              device attributes.
 
              appropriate   values   without   requiring   the  application  to
              initialize colors using <STRONG>init_color</STRONG>.
 
-             The capability type determines the values which ncurses sees:
+             The capability type determines the values which <EM>ncurses</EM> sees:
 
              <EM>boolean</EM>
                 implies that the number of bits for red, green  and  blue  are
-                the  same.   Using  the maximum number of colors, ncurses adds
+                the  same.   Using  the maximum number of colors, <EM>ncurses</EM> adds
                 two, divides that sum by three, and assigns the result to red,
                 green and blue in that order.
 
                 comparison to red.
 
              <EM>number</EM>
-                tells  ncurses  what result to add to red, green and blue.  If
-                ncurses runs out of bits, blue (and green) lose just as in the
+                tells  <EM>ncurses</EM>  what result to add to red, green and blue.  If
+                <EM>ncurses</EM> runs out of bits, blue (and green) lose just as in the
                 <EM>boolean</EM> case.
 
              <EM>string</EM>
              could  define  <STRONG>RGB#1</STRONG> to represent the standard eight ANSI colors,
              i.e., one bit per color.
 
-          U8 <EM>number</EM>, asserts that ncurses must use Unicode  values  for  line-
+          U8 <EM>number</EM>, asserts that <EM>ncurses</EM> must use Unicode  values  for  line-
              drawing  characters,  and  that  it  should  ignore the alternate
              character set capabilities when the locale uses  UTF-8  encoding.
              For  more  information, see the discussion of <STRONG>NCURSES_NO_UTF8_ACS</STRONG>
 
              Set this capability to a nonzero value to enable it.
 
-          XM <EM>string</EM>, override ncurses's built-in string which enables/disables
+          XM <EM>string</EM>, override <EM>ncurses</EM>'s built-in string which enables/disables
              <STRONG>xterm(1)</STRONG> mouse mode.
 
-             ncurses  sends a character sequence to the terminal to initialize
+             <EM>ncurses</EM>  sends a character sequence to the terminal to initialize
              mouse mode, and when the user clicks the  mouse  buttons  or  (in
              certain  modes) moves the mouse, handles the characters sent back
              by the terminal to tell it what was done with the mouse.
 
              The mouse protocol  is  enabled  when  the  <EM>mask</EM>  passed  in  the
-             <STRONG>mousemask</STRONG>  function  is nonzero.  By default, ncurses handles the
+             <STRONG>mousemask</STRONG>  function  is nonzero.  By default, <EM>ncurses</EM> handles the
              responses for the X11 xterm mouse protocol.  It also knows  about
              the  <EM>SGR</EM>  <EM>1006</EM>  xterm mouse protocol, but must to be told to look
              for this specifically.  It will not be able to guess  which  mode
 
              The <STRONG>XM</STRONG> capability has a single parameter.  If nonzero, the  mouse
              protocol  should  be enabled.  If zero, the mouse protocol should
-             be disabled.  ncurses inspects this capability if it is  present,
+             be disabled.  <EM>ncurses</EM> inspects this capability if it is  present,
              to  see whether the 1006 protocol is used.  If so, it expects the
              responses to use the <EM>SGR</EM> <EM>1006</EM> xterm mouse protocol.
 
 
        Since  1999,  <STRONG>xterm(1)</STRONG>  has  supported  <EM>shift</EM>,  <EM>control</EM>,  <EM>alt</EM>, and <EM>meta</EM>
        modifiers which produce distinct special-key strings.   In  a  terminal
-       description,  ncurses  has  no special knowledge of the modifiers used.
+       description,  <EM>ncurses</EM>  has  no special knowledge of the modifiers used.
        Applications can use the <EM>naming</EM> <EM>convention</EM>  established  for  <STRONG>xterm</STRONG>  to
        find these special keys in the terminal description.
 
        Starting  with  the curses convention that <EM>key</EM> <EM>names</EM> begin with "k" and
-       that shifted special keys are  an  uppercase  name,  ncurses'  terminal
+       that shifted special keys are  an  uppercase  name,  <EM>ncurses</EM>'  terminal
        database defines these names to which a suffix is added:
 
             <STRONG>Name</STRONG>   <STRONG>Description</STRONG>
             16      Meta + Ctrl + Alt + Shift
 
        None  of these are predefined; terminal descriptions can refer to <EM>names</EM>
-       which ncurses will allocate at runtime to <EM>key-codes</EM>.  To use these keys
-       in an ncurses program, an application could do this:
+       which <EM>ncurses</EM> will allocate at runtime to <EM>key-codes</EM>.  To use these keys
+       in an <EM>ncurses</EM> program, an application could do this:
 
        <STRONG>o</STRONG>   using  a  list  of  extended  key <EM>names</EM>, ask <STRONG><A HREF="curs_terminfo.3x.html">tigetstr(3x)</A></STRONG> for their
            values, and
 
 </PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
        Thomas E. Dickey
-       beginning with ncurses 5.0 (1999)
+       beginning with <EM>ncurses</EM> 5.0 (1999)
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
 
 
 
-ncurses 6.4                       2023-10-07                      <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>
+ncurses 6.4                       2023-12-16                      <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 2b5fabe6eef8037c40aaedbf6b8146e8f7a03cb0..4e0a57eb626a6f0c4805c25392c5a410e8291807 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: MKada_config.in,v 1.31 2023/11/25 19:51:50 tom Exp $
-.TH adacurses@USE_CFG_SUFFIX@\-config 1 2023-11-25 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "User commands"
+.\" $Id: MKada_config.in,v 1.32 2023/12/16 21:42:53 tom Exp $
+.TH adacurses@USE_CFG_SUFFIX@\-config 1 2023-12-16 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "User commands"
 .ds C adacurses@USE_CFG_SUFFIX@\-config
 .ie \n(.g \{\
 .ds `` \(lq
@@ -57,7 +57,7 @@ configuration helper for \fI@ADA_LIBNAME@\fP libraries
 .SH DESCRIPTION
 This program development aid simplifies the process of configuring
 applications to use the \fI@ADA_LIBNAME@\fP library binding to
-\fIncurses\fP.
+\fI\%ncurses\fP.
 .SH OPTIONS
 .TP 11 \" "--version" + 2n
 \fB\-\-cflags\fP
@@ -68,7 +68,7 @@ reports the GNAT (Ada compiler) flags needed to compile with
 reports the GNAT libraries needed to link with \fI@ADA_LIBNAME@\fP.
 .TP
 \fB\-\-version\fP
-reports the release and patch date information of the \fIncurses\fP
+reports the release and patch date information of the \fI\%ncurses\fP
 libraries used to configure and build \fI@ADA_LIBNAME@\fP and exits
 successfully.
 .TP
index fb72802b0f6a9601cbb5940d3eefcc9a434d259f..269d34012afc93ce51f0b02bcbc7829470b8cd6f 100644 (file)
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: MKncu_config.in,v 1.19 2023/12/02 21:37:31 tom Exp $
-.TH @LIB_NAME@@DFT_ARG_SUFFIX@@cf_cv_abi_version@-config 1 2023-12-02 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "User commands"
+.\" $Id: MKncu_config.in,v 1.20 2023/12/16 21:43:05 tom Exp $
+.TH @LIB_NAME@@DFT_ARG_SUFFIX@@cf_cv_abi_version@-config 1 2023-12-16 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "User commands"
 .SH NAME
 \fB\%@LIB_NAME@@DFT_ARG_SUFFIX@@cf_cv_abi_version@-config\fP \-
-configuration helper for \fIncurses\fR libraries
+configuration helper for \fI\%ncurses\fP libraries
 .SH SYNOPSIS
 .B @LIB_NAME@@DFT_ARG_SUFFIX@@cf_cv_abi_version@-config
 .I option
@@ -42,45 +42,45 @@ configuration helper for \fIncurses\fR libraries
 .B "@LIB_NAME@@DFT_ARG_SUFFIX@@cf_cv_abi_version@-config \-\-help"
 .SH DESCRIPTION
 This program development aid simplifies the process of configuring
-applications against a particular set of \fIncurses\fP libraries.
+applications against a particular set of \fI\%ncurses\fP libraries.
 .SH OPTIONS
 .TP 18 \" "--mouse-version" + 2n + adjustment for PDF
 \fB\-\-prefix\fP
-reports the package prefix of \fIncurses\fP.
+reports the package prefix of \fI\%ncurses\fP.
 .TP
 \fB\-\-exec\-prefix\fP
-reports the executable prefix of \fIncurses\fP.
+reports the executable prefix of \fI\%ncurses\fP.
 .TP
 \fB\-\-cflags\fP
-reports the C compiler flags needed to compile with \fIncurses\fP.
+reports the C compiler flags needed to compile with \fI\%ncurses\fP.
 .TP
 \fB\-\-libs\fP
-reports the libraries needed to link with \fIncurses\fP.
+reports the libraries needed to link with \fI\%ncurses\fP.
 .TP
 \fB\-\-version\fP
-reports the release and patch date information of \fIncurses\fP and
+reports the release and patch date information of \fI\%ncurses\fP and
 exits successfully.
 .TP
 \fB\-\-abi\-version\fP
-reports the ABI version of \fIncurses\fP.
+reports the ABI version of \fI\%ncurses\fP.
 .TP
 \fB\-\-mouse\-version\fP
-reports the mouse\-interface version of \fIncurses\fP.
+reports the mouse\-interface version of \fI\%ncurses\fP.
 .TP
 \fB\-\-bindir\fP
-reports the directory containing \fIncurses\fP programs.
+reports the directory containing \fI\%ncurses\fP programs.
 .TP
 \fB\-\-datadir\fP
-reports the directory containing \fIncurses\fP data.
+reports the directory containing \fI\%ncurses\fP data.
 .TP
 \fB\-\-includedir\fP
-reports the directory containing \fIncurses\fP header files.
+reports the directory containing \fI\%ncurses\fP header files.
 .TP
 \fB\-\-libdir\fP
-reports the directory containing \fIncurses\fP libraries.
+reports the directory containing \fI\%ncurses\fP libraries.
 .TP
 \fB\-\-mandir\fP
-reports the directory containing \fIncurses\fP man pages.
+reports the directory containing \fI\%ncurses\fP man pages.
 .TP
 \fB\-\-terminfo\fP
 reports the \fI\%TERMINFO\fP \fIterminfo\fP database path,
index b3983b41e8f2f6ebcefb2747f5845e7e741372d5..43a0bd6de6201f66ae07855341d06f36a0bd9410 100644 (file)
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: captoinfo.1m,v 1.56 2023/12/02 20:51:25 tom Exp $
-.TH @CAPTOINFO@ 1M 2023-12-02 "ncurses 6.4" "User commands"
+.\" $Id: captoinfo.1m,v 1.57 2023/12/16 21:34:23 tom Exp $
+.TH @CAPTOINFO@ 1M 2023-12-16 "ncurses 6.4" "User commands"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
-.ds '  \(aq
 .\}
 .el \{\
 .ie t .ds `` ``
 .el   .ds `` ""
 .ie t .ds '' ''
 .el   .ds '' ""
-.ie t .ds '  \(aq
-.el   .ds '  '
 .\}
 .
 .ds d /etc/termcap
 .SH NAME
 \fB\%@CAPTOINFO@\fP \-
-convert a \fItermcap\fR description into a \fIterminfo\fR description
+convert a \fItermcap\fP description into a \fI\%term\%info\fP description
 .SH SYNOPSIS
 .B @CAPTOINFO@
 .RI [ tic-option ]
@@ -59,9 +56,9 @@ convert a \fItermcap\fR description into a \fIterminfo\fR description
 \fB\%@CAPTOINFO@\fP translates terminal descriptions.
 It looks in each given text \fIfile\fP for \fI\%termcap\fP entries and,
 for each one found,
-writes an equivalent \fI\%terminfo\fP description to the standard output
-stream.
-\fI\%termcap\fP \fBtc\fP capabilities translate to \fI\%terminfo\fP
+writes an equivalent \fI\%\%term\%info\fP description to the standard
+output stream.
+\fI\%termcap\fP \fBtc\fP capabilities translate to \fI\%\%term\%info\fP
 \*(``\fBuse\fP\*('' capabilities.
 .PP
 If no \fIfile\fPs are specified,
@@ -89,12 +86,13 @@ with this program and exits with a successful status.
 \fB\%@CAPTOINFO@\fP translates some obsolete,
 nonstandard capabilities into standard
 (SVr4/XSI Curses)
-\fI\%terminfo\fP capabilities.
+\fI\%\%term\%info\fP capabilities.
 It issues a diagnostic to the standard error stream for each,
 inviting the user to check that it has not mistakenly translated an
 unknown or mistyped capability name.
 .PP
 .TS
+center;
 Cb S
 Cb Cb Cb Cb
 Cb Cb C  Lb.
@@ -137,6 +135,7 @@ corresponding to box drawing characters of CCSID
 as follows.
 .PP
 .TS
+center;
 cb cb
 cb l .
 \f(BItermcap\fP Name   Graphic
@@ -176,12 +175,13 @@ string,
 and discards \fBGG\fP and double-line capabilities with a warning
 diagnostic.
 .PP
-IBM's AIX has a \fI\%terminfo\fP facility descended from SVr1
-\fI\%terminfo\fP,
+IBM's AIX has a \fI\%\%term\%info\fP facility descended from SVr1
+\fI\%\%term\%info\fP,
 but which is incompatible with the SVr4 format.
 \fB\%@CAPTOINFO@\fP translates the following AIX extensions.
 .PP
 .TS
+center;
 cb cb
 l  l .
 IBM    XSI
@@ -198,25 +198,29 @@ Additionally,
 this program translates the AIX \fBbox1\fP capability to an \fBacsc\fP
 string.
 .PP
-The HP-UX \fI\%terminfo\fP library supports two nonstandard
-\fI\%terminfo\fP capabilities,
+The HP-UX \fI\%\%term\%info\fP library supports two nonstandard
+\fI\%\%term\%info\fP capabilities,
 \fBmeml\fP (memory lock) and \fBmemu\fP (memory unlock).
 \fB\%@CAPTOINFO@\fP discards these with a warning message.
 .SH FILES
 .TP
 .I \*d
 default \fI\%termcap\fP terminal capability database
-.SH NOTES
-The verbose option is not identical to SVr4's.
-Under SVr4,
-instead of following the \fB\-v\fP with a trace level \fIn\fP,
-you repeat it \fIn\fP times.
 .SH PORTABILITY
 X/Open Curses,
 Issue 7 (2009) describes \fBtic\fP briefly,
 but omits this program.
+.PP
 SVr4 systems provide \fB\%captoinfo\fP as a separate application from
 \fBtic\fP.
+Its
+.B \-v
+option does not accept a trace level argument
+.I n;
+repeat
+.B \-v
+.I n
+times instead.
 .PP
 NetBSD does not provide this application.
 .SH AUTHORS
index 23d31bdf9f45ad2be31fb0d8b343fe600cef26ad..66aaa6efc0af93a71345419ebb0aa136f9cfd985 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: clear.1,v 1.45 2023/12/02 20:49:04 tom Exp $
-.TH @CLEAR@ 1 2023-12-02 "ncurses 6.4" "User commands"
+.\" $Id: clear.1,v 1.46 2023/12/16 20:32:22 tom Exp $
+.TH @CLEAR@ 1 2023-12-16 "ncurses 6.4" "User commands"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -69,7 +69,8 @@ that type to determine how to perform these actions.
 The capabilities to clear the screen and scrollback buffer are named
 \*(``clear\*('' and \*(``E3\*('', respectively.
 The latter is a \fIuser-defined capability\fP,
-applying an extension mechanism introduced in \fIncurses\fP 5.0 (1999).
+applying an extension mechanism introduced in \fI\%ncurses\fP 5.0
+(1999).
 .SH OPTIONS
 \fB\%@CLEAR@\fP recognizes the following options.
 .TP 9 \" "-T type" + 2n
@@ -84,7 +85,7 @@ If this option is specified,
 \fI\%COLUMNS\fP as well.
 .TP
 .B \-V
-reports the version of \fIncurses\fP associated with this program and
+reports the version of \fI\%ncurses\fP associated with this program and
 exits with a successful status.
 .TP
 .B \-x
@@ -132,8 +133,8 @@ exec tput clear
 The remainder of the script in each case is a copyright notice.
 .PP
 In 1995,
-\fIncurses\fP's \fBclear\fP began by adapting BSD's original \fBclear\fP
-command to use \fIterminfo\fP.
+\fI\%ncurses\fP's \fBclear\fP began by adapting BSD's original
+\fBclear\fP command to use \fIterminfo\fP.
 The \fBE3\fP extension came later.
 .bP
 In June 1999, \fIxterm\fP provided an extension to the standard control
@@ -171,7 +172,7 @@ motivating the feature.
 .bP
 Subsequently,
 more terminal developers adopted the feature.
-The next relevant step was to change the \fIncurses\fP \fBclear\fP
+The next relevant step was to change the \fI\%ncurses\fP \fBclear\fP
 program in 2013 to incorporate this extension.
 .bP
 In 2013,
index 374597b41625dedf4b79c20465c69f26a27e5534..227acc252e9d400553a5c28da3443361ee366279 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_add_wch.3x,v 1.48 2023/11/25 14:20:05 tom Exp $
-.TH curs_add_wch 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_add_wch.3x,v 1.49 2023/12/16 21:19:37 tom Exp $
+.TH curs_add_wch 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -106,7 +106,7 @@ The \fBecho_wchar\fP
 function is functionally equivalent to a call to
 \fBadd_wch\fP
 followed by a call to
-\fBrefresh\fP(3X).
+\fB\%refresh\fP(3X).
 Similarly, the
 \fBwecho_wchar\fP
 is functionally equivalent to a call to
@@ -118,11 +118,11 @@ that only a single character is being output is taken into consideration and,
 for non-control characters, a considerable performance gain might be seen
 by using the *\fBecho\fP* functions instead of their equivalents.
 .SS Line Graphics
-Like \fBaddch\fP(3X),
+Like \fB\%addch\fP(3X),
 \fBaddch_wch\fP accepts symbols which make it simple to draw lines and other
 frequently used special characters.
 These symbols correspond to the same VT100 line-drawing set as
-\fBaddch\fP(3X).
+\fB\%addch\fP(3X).
 .PP
 .TS
 l l l l l
@@ -165,7 +165,7 @@ WACS_URCORNER       0x2510  +       k       upper right-hand corner
 WACS_VLINE     0x2502  |       x       vertical line
 .TE
 .PP
-The wide-character configuration of ncurses also defines symbols
+The wide-character configuration of \fI\%ncurses\fP also defines symbols
 for thick lines (\fBacsc\fP \*(``J\*('' to \*(``V\*(''):
 .PP
 .TS
@@ -210,7 +210,8 @@ WACS_D_URCORNER     0x2557  +       B       double upper right corner
 WACS_D_VLINE   0x2551  |       Y       double vertical line
 .TE
 .PP
-Unicode's descriptions for these characters differs slightly from ncurses,
+Unicode's descriptions for these characters differs slightly from
+\fI\%ncurses\fP,
 by introducing the term \*(``light\*('' (along with less important details).
 Here are its descriptions for the normal, thick, and double horizontal lines:
 .bP
@@ -231,10 +232,10 @@ if it is not possible to add a complete character in the window.
 .PP
 The latter may be due to different causes:
 .bP
-If \fBscrollok\fP(3X) is not enabled,
+If \fB\%scrollok\fP(3X) is not enabled,
 writing a character at the lower right margin succeeds.
-However, an error is returned because
-it is not possible to wrap to a new line
+However,
+an error is returned because it is not possible to wrap to a new line.
 .bP
 If an error is detected when converting a multibyte character to a sequence
 of bytes,
@@ -282,14 +283,16 @@ Existing implementations of Unix curses (AIX, HP-UX, Solaris)
 use only the \fBacsc\fP character-mapping to provide this feature.
 As a result, those implementations can only use single-byte line-drawing
 characters.
-Ncurses 5.3 (2002) provided a table of Unicode values to solve these problems.
+\fI\%ncurses\fP 5.3 (2002) provided a table of Unicode values to solve
+these problems.
 NetBSD curses incorporated that table in 2010.
 .PP
 In this implementation, the Unicode values are used instead of the
-terminal description's \fBacsc\fP mapping as discussed in ncurses(3X)
-for the environment variable \fBNCURSES_NO_UTF8_ACS\fP.
+terminal description's \fBacsc\fP mapping as discussed in
+\fB\%ncurses\fP(3X) for the environment variable
+\fINCURSES_NO_UTF8_ACS\fP.
 In contrast, for the same cases, the line-drawing characters
-described in \fBcurs_addch\fP(3X) will use only the ASCII default values.
+described in \fB\%addch\fP(3X) will use only the ASCII default values.
 .PP
 Having Unicode available does not solve all of the problems with
 line-drawing for curses:
@@ -338,7 +341,7 @@ describing only the cases where \fIwch\fP is a spacing character
 or a non-spacing character.
 .PP
 This implementation assumes that \fIwch\fP is constructed using
-\fBsetcchar\fP(3X), and in turn that the result
+\fB\%setcchar\fP(3X), and in turn that the result
 .bP
 contains at most one spacing character in the beginning of its list of wide
 characters,
@@ -347,7 +350,8 @@ or
 .bP
 may hold one non-spacing character.
 .PP
-In the latter case, ncurses adds the non-spacing character to the active
+In the latter case,
+\fI\%ncurses\fP adds the non-spacing character to the active
 (base) spacing character.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
index 1df5b9d9208783ad3415a2d39ce2f4f042333a5b..e61aee2f3eb1e7e3d9277a3522f1f9b4d76ea2c7 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_addch.3x,v 1.74 2023/11/25 14:20:05 tom Exp $
-.TH curs_addch 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_addch.3x,v 1.75 2023/12/16 21:19:37 tom Exp $
+.TH curs_addch 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -76,13 +76,13 @@ If the advance is at the right margin:
 The cursor automatically wraps to the beginning of the next line.
 .bP
 At the bottom of the current scrolling region,
-and if \fBscrollok\fP(3X) is enabled,
+and if \fB\%scrollok\fP(3X) is enabled,
 the scrolling region is scrolled up one line.
 .bP
-If \fBscrollok\fP(3X) is not enabled,
+If \fB\%scrollok\fP(3X) is not enabled,
 writing a character at the lower right margin succeeds.
-However, an error is returned because
-it is not possible to wrap to a new line
+However,
+an error is returned because it is not possible to wrap to a new line.
 .PP
 If \fIch\fP is a tab, newline, carriage return or backspace,
 the cursor is moved appropriately within the window:
@@ -101,13 +101,13 @@ The tab interval may be altered by setting the \fBTABSIZE\fP variable.
 .PP
 If \fIch\fP is any other nonprintable character,
 it is drawn in printable form,
-using the same convention as \fBunctrl\fR(3X):
+using the same convention as \fB\%unctrl\fP(3X):
 .bP
 Control characters are displayed in the \fB^\fIX\fR notation.
 .bP
 Values above 128 are either meta characters
 (if the screen has not been initialized,
-or if \fBmeta\fP(3X) has been called with a \fBTRUE\fP E parameter),
+or if \fB\%meta\fP(3X) has been called with a \fBTRUE\fP E parameter),
 shown in the \fBM\-\fIX\fR notation, or are displayed as themselves.
 In the latter case, the values may not be printable;
 this follows the X/Open specification.
@@ -119,12 +119,12 @@ but instead returns the printable representation of the character.
 Video attributes can be combined with a character argument passed to
 \fBaddch\fP or related functions by logical-ORing them into the character.
 (Thus, text, including attributes, can be copied from one place to another
-using \fBinch\fP(3X) and \fBaddch\fP.)  See the \fBcurs_attr\fP(3X) page for
-values of predefined video attribute constants that can be usefully OR'ed
-into characters.
+using \fB\%inch\fP(3X) and \fBaddch\fP.)
+See the \fB\%curs_attr\fP(3X) page for values of predefined video
+attribute constants that can be usefully OR'ed into characters.
 .SS Echoing characters
 The \fBechochar\fP and \fBwechochar\fP routines are equivalent to a call to
-\fBaddch\fP followed by a call to \fBrefresh\fP(3X), or a call to \fBwaddch\fP
+\fBaddch\fP followed by a call to \fB\%refresh\fP(3X), or a call to \fBwaddch\fP
 followed by a call to \fBwrefresh\fP.
 The knowledge that only a single
 character is being output is used and, for non-control characters, a
@@ -194,10 +194,10 @@ or if the window pointer is null.
 If it is not possible to add a complete character,
 an error is returned:
 .bP
-If \fBscrollok\fP(3X) is not enabled,
+If \fB\%scrollok\fP(3X) is not enabled,
 writing a character at the lower right margin succeeds.
-However, an error is returned because
-it is not possible to wrap to a new line
+However,
+an error is returned because it is not possible to wrap to a new line.
 .bP
 If an error is detected when converting a multibyte character to a sequence
 of bytes,
@@ -253,23 +253,26 @@ However, many publicly available terminfos
 include \fBacsc\fP strings in which their key characters (pryz{|}) are
 embedded, and a second-hand list of their character descriptions has come
 to light.
-The ACS-prefixed names for them were invented for \fBncurses\fP(3X).
+The ACS-prefixed names for them were invented for \fB\%ncurses\fP(3X).
 .LP
 The \fIdisplayed\fP values for the \fBACS_\fP and \fBWACS_\fP constants
 depend on
 .bP
-the library configuration, i.e., \fBncurses\fP versus \fBncursesw\fP,
+the library configuration,
+i.e.,
+\fI\%ncurses\fP versus \fI\%ncursesw\fP,
 where the latter is capable of displaying Unicode while the former is not, and
 .bP
 whether the \fIlocale\fP uses UTF-8 encoding.
 .LP
 In certain cases, the terminal is unable to display line-drawing characters
-except by using UTF-8 (see the discussion of \fBNCURSES_NO_UTF8_ACS\fP in
-ncurses(3X)).
+except by using UTF-8
+(see the discussion of \fB\%NCURSES_NO_UTF8_ACS\fP in
+\fB\%ncurses\fP(3X)).
 .SS Character Set
 X/Open Curses assumes that the parameter passed to \fBwaddch\fP contains
 a single character.
-As discussed in \fBcurs_attr\fP(3X), that character may have been
+As discussed in \fB\%curs_attr\fP(3X), that character may have been
 more than eight bits in an SVr3 or SVr4 implementation,
 but in the X/Open Curses model, the details are not given.
 The important distinction between SVr4 curses and X/Open Curses is
@@ -278,22 +281,22 @@ separated from the character information which is packed in a \fBchtype\fP
 to pass to \fBwaddch\fP.
 .PP
 In this implementation, \fBchtype\fP holds an eight-bit character.
-But ncurses allows multibyte characters to be passed in a succession
-of calls to \fBwaddch\fP.
+But \fI\%ncurses\fP allows multibyte characters to be passed in a
+succession of calls to \fBwaddch\fP.
 The other implementations do not do this;
 a call to \fBwaddch\fP passes exactly one character
 which may be rendered as one or more cells on the screen
 depending on whether it is printable.
 .PP
 Depending on the locale settings,
-ncurses will inspect the byte passed in each call to \fBwaddch\fP,
+\fI\%ncurses\fP will inspect the byte passed in each call to \fBwaddch\fP,
 and check if the latest call will continue a multibyte sequence.
 When a character is \fIcomplete\fP,
-ncurses displays the character and moves to the next position in the screen.
+\fI\%ncurses\fP displays the character and moves to the next position in the screen.
 .PP
 If the calling application interrupts the succession of bytes in
 a multibyte character by moving the current location (e.g., using \fBwmove\fP),
-ncurses discards the partially built character,
+\fI\%ncurses\fP discards the partially built character,
 starting over again.
 .PP
 For portability to other implementations,
index 1fc7c505d76549e83bf276b493eb5f34c04c14ff..475d3ab48c82941dfd3040069ed37457905f2dbe 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_attr.3x,v 1.91 2023/12/02 21:05:24 tom Exp $
-.TH curs_attr 3X 2023-12-02 "ncurses 6.4" "Library calls"
+.\" $Id: curs_attr.3x,v 1.92 2023/12/16 21:07:24 tom Exp $
+.TH curs_attr 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -176,7 +176,8 @@ attr_set(A_BOLD, \fIpair\fP, NULL);
 .PP
 However, if the value does not fit, then the \fBCOLOR_PAIR\fP macro
 uses only the bits that fit.
-For example, because in ncurses \fBA_COLOR\fP has eight (8) bits,
+For example,
+because in \fI\%ncurses\fP \fBA_COLOR\fP has eight (8) bits,
 then \fBCOLOR_PAIR(\fI259\fB)\fR is 4
 (i.e., 259 is 4 more than the limit 255).
 .PP
@@ -200,8 +201,10 @@ The remaining \fBattr\fP* functions operate exactly like the corresponding
 \fBattr_\fP* functions, except that they take arguments of type \fBint\fP
 rather than \fBattr_t\fP.
 .PP
-There is no corresponding \fBattrget\fP function as such in X/Open Curses,
-although ncurses provides \fBgetattrs\fP (see curs_legacy(3X)).
+There is no corresponding \fB\%attrget\fP function as such
+in X/Open Curses,
+although \fI\%ncurses\fP provides \fB\%getattrs\fP
+(see \fB\%curs_legacy\fP(3X)).
 .\" ---------------------------------------------------------------------------
 .SS Change character rendition
 The routine \fBchgat\fP changes the attributes of a given number of characters
@@ -215,7 +218,7 @@ The \fBwchgat\fP function generalizes this to any window;
 the \fBmvwchgat\fP function does a cursor move before acting.
 .PP
 In these functions,
-the color \fIpair\fP argument is a color-pair index
+the color \fIpair\fP argument is a color pair index
 (as in the first argument of \fBinit_pair\fP, see \fBcurs_color\fP(3X)).
 .\" ---------------------------------------------------------------------------
 .SS Change window color
@@ -299,7 +302,7 @@ returns an error if the color pair parameter
 for \fBwcolor_set\fP is outside the range 0..COLOR_PAIRS\-1.
 .bP
 does not return an error if either of the parameters of \fBwattr_get\fP
-used for retrieving attribute or color-pair values is \fBNULL\fP.
+used for retrieving attribute or color pair values is \fBNULL\fP.
 .PP
 Functions with a \*(``mv\*('' prefix first perform a cursor movement using
 \fBwmove\fP, and return an error if the position is outside the window,
@@ -317,9 +320,9 @@ Color pair values can only be OR'd with attributes if the pair
 number is less than 256.
 The alternate functions such as \fBcolor_set\fP can pass a color pair
 value directly.
-However, ncurses ABI 4 and 5 simply OR this value
+However, \fI\%ncurses\fP ABI 4 and 5 simply OR this value
 within the alternate functions.
-You must use ncurses ABI 6 to support more than 256 color pairs.
+You must use \fI\%ncurses\fP ABI 6 to support more than 256 color pairs.
 .\" ---------------------------------------------------------------------------
 .SH EXTENSIONS
 This implementation provides the \fBA_ITALIC\fP attribute for terminals
@@ -335,7 +338,7 @@ Each of the functions added by XSI Curses has a parameter \fIopts\fP,
 which X/Open Curses still (after more than twenty years) documents
 as reserved for future use, saying that it should be \fBNULL\fP.
 This implementation uses that parameter in ABI 6 for the functions which
-have a color-pair parameter to support \fIextended color pairs\fP:
+have a color pair parameter to support \fIextended color pairs\fP:
 .bP
 For functions which modify the color, e.g.,
 \fBwattr_set\fP and \fBwattr_on\fP,
@@ -423,7 +426,7 @@ In this implementation (as in many others), the values happen to be
 the same because it simplifies copying information between
 \fBchtype\fP and \fBcchar_t\fP variables.
 .bP
-Because ncurses's \fBattr_t\fP can hold a color pair
+Because \fI\%ncurses\fP's \fBattr_t\fP can hold a color pair
 (in the \fBA_COLOR\fP field),
 a call to
 \fBwattr_on\fP,
@@ -534,8 +537,9 @@ That version of curses was dropped with HP-UX 11.30 in 2006.
 Regarding OSF/1 (and Tru64),
 .bP
 These used 64-bit hardware.
-Like ncurses, the OSF/1 curses interface is not customized for 32-bit
-and 64-bit versions.
+Like \fI\%ncurses\fP,
+the OSF/1 curses interface is not customized for 32-bit and 64-bit
+versions.
 .bP
 Unlike other systems which evolved from AT&T code,
 OSF/1 provided a new implementation for X/Open curses.
@@ -572,7 +576,8 @@ BSD curses was improved slightly in 1993/1994 using Keith Bostic's
 modification to make the library 8-bit clean for \fBnvi\fP(1).
 He moved \fIstandout\fP attribute to a structure member.
 .IP
-The resulting 4.4BSD curses was replaced by ncurses over the next ten years.
+The resulting 4.4BSD curses was replaced by \fI\%ncurses\fP over the
+next ten years.
 .bP
 U/Win is rarely used now.
 .\" ---------------------------------------------------------------------------
index 04fc2f4c438f3255bd4d353460e8c3df559521e9..15977746514df69e930283630c72ec089fbc3510 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_bkgd.3x,v 1.51 2023/12/02 21:02:44 tom Exp $
-.TH curs_bkgd 3X 2023-12-02 "ncurses 6.4" "Library calls"
+.\" $Id: curs_bkgd.3x,v 1.54 2023/12/17 23:31:28 tom Exp $
+.TH curs_bkgd 3X 2023-12-17 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -55,116 +55,125 @@ manipulate background of a \fIcurses\fR window of characters
 .nf
 \fB#include <curses.h>
 .PP
-\fBvoid bkgdset(chtype \fIch\fP);
-\fBvoid wbkgdset(WINDOW *\fIwin\fP, chtype \fIch\fP);
-.PP
 \fBint bkgd(chtype \fIch\fP);
 \fBint wbkgd(WINDOW *\fIwin\fP, chtype \fIch\fP);
 .PP
+\fBvoid bkgdset(chtype \fIch\fP);
+\fBvoid wbkgdset(WINDOW *\fIwin\fP, chtype \fIch\fP);
+.PP
 \fBchtype getbkgd(WINDOW *\fIwin\fP);
 .fi
 .SH DESCRIPTION
-.SS bkgdset
-The \fBbkgdset\fP and \fBwbkgdset\fP routines
-set the \fIbackground\fP for a window.
-A window's background is a \fBchtype\fP consisting of
-any combination of attributes (i.e., rendition) and a character:
-.bP
-The attribute part of the background is combined (OR'ed) with all non-blank
-characters that are written into the window with \fBwaddch\fP.
-.bP
-Both the character and attribute parts of the background are combined with
-blank characters that are written into the window.
-.PP
-The background becomes a property of each
-character and moves with the character through any scrolling and
-insert/delete line/character operations.
-.PP
-To the extent possible on a particular terminal,
-the attribute part of the background is displayed
-as the graphic rendition of the character put on the screen.
-.SS bkgd
-The \fBbkgd\fP and \fBwbkgd\fP functions
-set the background property of the current or specified window
-and then apply this setting to every character position in that window.
-According to X/Open Curses, it should do this:
+The
+.I background
+of a
+.I curses
+window
+(in the library's non-\*(``wide\*('' configuration)
+is a
+.I \%chtype
+combining a set of attributes
+(see \fB\%curs_attr\fP(3X))
+with a character called the
+.I "blank character."
+.PP
+The blank character is a spacing character that populates a window's
+character cells when their contents are erased without replacement.
+The background's attributes are combined with all non-blank characters
+written to the window,
+as with the \fB\%waddch\fP(3X) and \fB\%winsch\fP(3X) families of
+functions.
+.PP
+The blank character and attributes of the background combine with
+characters written to the window as described below.
+The background becomes a property of the character and moves with it
+through any scrolling and insert/delete line/character operations.
+.PP
+To the extent possible on a given terminal,
+the attribute part of the background is displayed as the graphic
+rendition of the character put on the screen.
+.SS "bkgd, wbkgd"
+\fB\%bkgd\fP and \fB\%wbkgd\fP set the background property of
+\fB\%stdscr\fP or the specified window and then apply this setting to
+every character cell in that window.
 .bP
-The rendition of every character on the screen is changed to
-the new background rendition.
+The rendition of every character in the window changes to the new
+background rendition.
 .bP
-Wherever the former background character
-appears, it is changed to the new background character.
+Wherever the former background character appears,
+it changes to the new background character.
 .PP
-Neither X/Open Curses nor the SVr4 manual pages give details about
-the way the rendition of characters on the screen is updated when
-\fBbkgd\fP or \fBwbkgd\fP is used to change the background character.
-.PP
-\fI\%ncurses\fP,
-like SVr4 \fIcurses\fP,
-does not store the background and window attribute contributions to each
-cell separately.
-It updates the rendition by comparing the character,
-non-color attributes and colors contained in the background.
-For each cell in the window, whether or not it is blank:
+.I \%ncurses
+updates the rendition of each character cell by comparing the character,
+non-color attributes,
+and colors.
+The library applies to following procedure to each cell in the window,
+whether or not it is blank.
 .bP
-The library first compares the \fIcharacter\fP,
-and if it matches the current character part of the background,
-it replaces that with the new background character.
-.IP
-When \fBbkgdset\fP is used to set the background character,
-that does not update each cell in the window.
-A subsequent call to \fBbkgd\fP will only modify the \fIcharacter\fP in
-cells which match the current background character.
+.I \%ncurses
+first compares the cell's character to the previously specified blank
+character;
+if they match,
+.I \%ncurses
+writes the new blank character to the cell.
 .bP
-The library then checks if the cell uses color,
-i.e., its color pair value is nonzero.
-If not, it simply replaces the attributes and color pair in the
-cell with those from the new background character.
+.I \%ncurses
+then checks if the cell uses color,
+that is,
+its color pair value is nonzero.
+If not,
+it simply replaces the attributes and color pair in the cell with those
+from the new background character.
 .bP
 If the cell uses color,
-and that matches the color in the current background,
-the library removes attributes
-which may have come from the current background
-and adds attributes from the new background.
-It finishes by setting the cell
-to use the color from the new background.
+and its background color matches that of the current window background,
+.I \%ncurses
+removes attributes that may have come from the current background and
+adds those from the new background.
+It finishes by setting the cell's background to use the new window
+background color.
 .bP
 If the cell uses color,
-and that does not match the color in the current background,
-the library updates only the non-color attributes,
-first removing those which may have come from the current background,
+and its background color does not match that of the current window
+background,
+.I \%ncurses
+updates only the non-color attributes,
+first removing those that may have come from the current background,
 and then adding attributes from the new background.
 .PP
-If the background's character value is zero (0), a space is assumed.
+.I \%ncurses
+treats a background character value of zero (0) as a blank character.
 .PP
 If the terminal does not support color,
-or if color has not been started with \fBstart_color\fP,
-the new background character's color attribute will be ignored.
+or if color has not been initialized with \fB\%start_color\fP(3X),
+.I \%ncurses
+ignores the new background character's color attribute.
+.SS "bkgdset, wbkgdset"
+\fB\%bkgdset\fP and \fB\%wbkgdset\fP manipulate the background of
+the applicable window,
+without updating the character cells as \fB\%bkgd\fP and
+\fB\%wbkgd\fP do;
+only future writes reflect the updated background.
 .SS getbkgd
-The \fBgetbkgd\fP function returns the given window's current background
-character/attribute pair.
+\fB\%getbkgd\fP obtains the given window's background character and
+attribute combination.
 .SH RETURN VALUE
 Functions returning an \fIint\fP return \fBOK\fP on success.
 \fB\%bkgd\fP returns \fBERR\fP if the library has not been initialized.
-\fB\%wbkgd\fP and \fB\%getbkgd\fP return \fBERR\fP if the \fI\%WINDOW\fP
+\fB\%wbkgd\fP and \fB\%getbkgd\fP return \fBERR\fP if a \fI\%WINDOW\fP
 pointer argument is null.
 .PP
-In contrast,
-the SVr4.0 manual says \fB\%bkgd\fP and \fB\%wbkgd\fP may return
-\fBOK\fP
-\*(``or a non-negative integer if \fB\%immedok\fP is set\*('',
-which refers to the return value from \fB\%wrefresh\fP
-(used to implement the immediate repainting).
-SVr4 \fIcurses\fP \fB\%wrefresh\fP returns the number of characters
-written to the screen during the refresh.
-\fI\%ncurses\fP does not do that.
+\fB\%bkgdset\fP and \fBwbkgdset\fP do not return a value.
+.PP
+\fB\%getbkgd\fP returns a window's background character and attribute
+combination.
 .SH NOTES
 Unusually,
 there is no \fB\%wgetbkgd\fP function;
 \fB\%getbkgd\fP behaves as one would expect \fB\%wgetbkgd\fP to,
 accepting a \fI\%WINDOW\fP pointer argument.
 .PP
-Note that \fBbkgdset\fP and \fBbkgd\fP may be macros.
+\fB\%bkgd\fP and \fB\%bkgdset\fP may be available as macros.
 .PP
 X/Open Curses mentions that the character part of the background must
 be a single-byte value.
@@ -173,12 +182,42 @@ like SVr4 \fIcurses\fP,
 checks to ensure that,
 and will reuse the old background character if the check fails.
 .SH PORTABILITY
-These functions are described in the XSI Curses standard, Issue 4.
-It specifies that \fBbkgd\fP and \fBwbkgd\fP return \fBERR\fP on
-failure,
-but gives no failure conditions.
+X/Open Curses, Issue 4, describes these functions.
+It specifies that
+\fB\%bkgd\fP,
+\fB\%wbkgd\fP,
+and
+\fB\%getbkgd\fP
+return \fBERR\fP on failure
+(in the case of the last,
+this value is cast to
+.IR \%chtype ),
+but describes no failure conditions.
+.PP
+The SVr4.0 manual says that \fB\%bkgd\fP and \fB\%wbkgd\fP may return
+\fBOK\fP
+\*(``or a non-negative integer if \fB\%immedok\fP is set\*('',
+which refers to the return value from \fB\%wrefresh\fP(3X),
+used to implement the immediate repainting.
+SVr4 \fIcurses\fP's \fB\%wrefresh\fP returns the number of characters
+written to the screen during the refresh.
+\fI\%ncurses\fP does not do that.
+.PP
+Neither X/Open Curses nor the SVr4 manual pages detail how the rendition
+of characters on the screen updates when \fB\%bkgd\fP or \fB\%wbkgd\fP
+changes the background character.
+.I \%ncurses,
+like SVr4
+.I curses,
+does not
+(in its non-\*(``wide\*('' configuration)
+store the background and window attribute contributions to each
+character cell separately.
 .SH SEE ALSO
+\fB\%curs_bkgrnd\fP(3X) describes the corresponding functions in the
+\*(``wide\*('' configuration of
+.I \%ncurses.
+.PP
 \fB\%curses\fP(3X),
 \fB\%curs_addch\fP(3X),
-\fB\%curs_attr\fP(3X),
-\fB\%curs_outopts\fP(3X)
+\fB\%curs_attr\fP(3X)
index d870aa95716bfa61a0ed32777de1e8f351337401..f2e75cff096fc07383b88e977636e37579bd2f87 100644 (file)
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_bkgrnd.3x,v 1.34 2023/12/02 21:30:00 tom Exp $
-.TH curs_bkgrnd 3X 2023-12-02 "ncurses 6.4" "Library calls"
+.\" $Id: curs_bkgrnd.3x,v 1.35 2023/12/16 23:00:21 tom Exp $
+.TH curs_bkgrnd 3X 2023-12-16 "ncurses 6.4" "Library calls"
+.ie \n(.g \{\
+.ds `` \(lq
+.ds '' \(rq
+.\}
+.el \{\
+.ie t .ds `` ``
+.el   .ds `` ""
+.ie t .ds '' ''
+.el   .ds '' ""
+.\}
+.
 .de bP
 .ie n  .IP \(bu 4
 .el    .IP \(bu 2
@@ -55,62 +66,150 @@ manipulate background of a \fIcurses\fP window of wide characters
 \fBint wgetbkgrnd(WINDOW *\fIwin\fP, cchar_t *\fIwch\fP);
 .fi
 .SH DESCRIPTION
-.SS bkgrndset
-The \fBbkgrndset\fP and \fBwbkgrndset\fP routines manipulate the
-background of the named window.
-The window background is a \fBcchar_t\fP consisting of
-any combination of attributes (i.e., rendition) and a complex character.
+The
+.I background
+of a
+.I curses
+window
+(in the library's \*(``wide\*('' configuration)
+is a
+.I \%cchar_t
+combining a set of attributes
+(see \fB\%curs_attr\fP(3X))
+with a complex character called the
+.I "blank character."
+.PP
+The blank character is a spacing character that populates a window's
+character cells when their contents are erased without replacement.
+The background's attributes are combined with all non-blank characters
+written to the window,
+as with the \fB\%wadd_wch\fP(3X) and \fB\%wins_wch\fP(3X) families of
+functions.
+.PP
+The blank character and attributes of the background combine with
+characters written to the window as described below.
+The background becomes a property of the character and moves with it
+through any scrolling and insert/delete line/character operations.
+.PP
+To the extent possible on a given terminal,
+the attribute part of the background is displayed as the graphic
+rendition of the character put on the screen.
+.SS "bkgrnd, wbkgrnd"
+\fB\%bkgrnd\fP and \fB\%wbkgrnd\fP set the background property of
+\fB\%stdscr\fP or the specified window and then apply this setting to
+every character cell in that window.
 .bP
-The attribute part of the background is combined (OR'ed) with all non-blank
-characters that are written into the window with \fBwaddch\fP.
+The rendition of every character in the window changes to the new
+background rendition.
 .bP
-Both
-the character and attribute parts of the background are combined with
-the blank characters.
+Wherever the former background character appears,
+it changes to the new background character.
 .PP
-The background becomes a property of the
-character and moves with the character through any scrolling and
-insert/delete line/character operations.
-.PP
-To the extent possible on a
-particular terminal, the attribute part of the background is displayed
-as the graphic rendition of the character put on the screen.
-.SS bkgrnd
-The \fBbkgrnd\fP and \fBwbkgrnd\fP functions
-set the background property of the current or specified window
-and then apply this setting to every character position in that window:
+.I \%ncurses
+updates the rendition of each character cell by comparing the character,
+non-color attributes,
+and colors.
+The library applies to following procedure to each cell in the window,
+whether or not it is blank.
+.bP
+.I \%ncurses
+first compares the cell's character to the previously specified blank
+character;
+if they match,
+.I \%ncurses
+writes the new blank character to the cell.
+.bP
+.I \%ncurses
+then checks if the cell uses color,
+that is,
+its color pair value is nonzero.
+If not,
+it simply replaces the attributes and color pair in the cell with those
+from the new background character.
 .bP
-The rendition of every character on the screen is changed to
-the new background rendition.
+If the cell uses color,
+and its background color matches that of the current window background,
+.I \%ncurses
+removes attributes that may have come from the current background and
+adds those from the new background.
+It finishes by setting the cell's background to use the new window
+background color.
 .bP
-Wherever the former background character
-appears, it is changed to the new background character.
-.SS getbkgrnd
-The \fB\%getbkgrnd\fP and \fB\%wgetbkgrnd\fP functions obtain the given
-or specified window's current background character and attribute pair
-and store it via the
+If the cell uses color,
+and its background color does not match that of the current window
+background,
+.I \%ncurses
+updates only the non-color attributes,
+first removing those that may have come from the current background,
+and then adding attributes from the new background.
+.PP
+.I \%ncurses
+treats a background character value of zero (0) as a blank character.
+.PP
+If the terminal does not support color,
+or if color has not been initialized with \fB\%start_color\fP(3X),
+.I \%ncurses
+ignores the new background character's color attribute.
+.SS "bkgrndset, wbkgrndset"
+\fB\%bkgrndset\fP and \fB\%wbkgrndset\fP manipulate the background of
+the applicable window,
+without updating the character cells as \fB\%bkgrnd\fP and
+\fB\%wbkgrnd\fP do;
+only future writes reflect the updated background.
+.SS "getbkgrnd, wgetbkgrnd"
+The \fB\%getbkgrnd\fP and \fB\%wgetbkgrnd\fP functions obtain the
+background character and attribute pair of \fB\%stdscr\fP or the
+specified window and store it via the
 .I wch
 pointer.
 .SH RETURN VALUE
-The \fBbkgrndset\fP and \fBwbkgrndset\fP routines do not return a value.
+\fBbkgrndset\fP and \fBwbkgrndset\fP do not return a value.
 .PP
-Upon successful completion, the other functions return \fBOK\fP.
-Otherwise, they return \fBERR\fP:
+The other functions return
+.B ERR
+upon failure and
+.B OK
+upon success.
+In
+.I \%ncurses,
+failure occurs if
 .bP
-A null \fI\%WINDOW\fP pointer is treated as an error.
+a
+.I \%WINDOW
+pointer
+.I win
+is null, or
 .bP
-A null \fI\%cchar_t\fP pointer is treated as an error.
+a
+.I \%cchar_t
+pointer
+.I wch
+is null.
 .SH NOTES
 \fB\%bkgrnd\fP,
 \fB\%bkgrndset\fP, and
 \fB\%getbkgrnd\fP
 may be available as macros.
 .PP
-X/Open Curses does not provide details on how the rendition is changed.
-This implementation follows the approach used in SVr4 curses,
-which is explained in the manual page for \fBwbkgd\fP.
+Unlike their counterparts in the non-\*(``wide\*('' configuration of
+.I \%ncurses,
+\fB\%getbkgrnd\fP and \fB\%wgetbkgrnd\fP supply the background character
+and attribute in a modifiable
+.I \%cchar_t
+parameter,
+not as the return value.
 .SH PORTABILITY
-These functions are described in the XSI Curses standard, Issue 4.
+X/Open Curses, Issue 4, describes these functions.
+It specifies no error conditions for them.
+.PP
+X/Open Curses does not provide details of how the rendition is updated.
+This implementation follows the approach used in SVr4
+.I curses.
 .SH SEE ALSO
+\fB\%curs_bkgd\fP(3X) describes the corresponding functions in the
+non-\*(``wide\*('' configuration of
+.I \%ncurses.
+.PP
 \fB\%curses\fP(3X),
-\fB\%curs_bkgd\fP(3X)
+\fB\%curs_add_wch\fP(3X),
+\fB\%curs_attr\fP(3X)
index b8582bfc71c324baefde22e32b523b08fc91310f..5d5bdcea3cfc7cf9f1bd616d2ef5a772e9af9539 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_border.3x,v 1.43 2023/11/25 11:31:27 tom Exp $
-.TH curs_border 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_border.3x,v 1.44 2023/12/16 21:09:11 tom Exp $
+.TH curs_border 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -137,8 +137,9 @@ The line is at most \fIn\fP characters
 long, or as many as fit into the window.
 .SH RETURN VALUE
 All routines return the integer \fBOK\fP.
-The SVr4.0 manual says "or a
-non-negative integer if \fBimmedok\fP is set", but this appears to be an error.
+The SVr4.0 manual says
+\*(``or a non-negative integer if \fB\%immedok\fP is set\*('',
+but this appears to be an error.
 .PP
 X/Open does not define any error conditions.
 This implementation returns an error
index 7349a14caa045cba51b56a2d875639f5d6d0c736..de9ee2ed6bfed38f337051bae4ae68020fa7e2c6 100644 (file)
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_clear.3x,v 1.40 2023/11/25 11:31:27 tom Exp $
-.TH curs_clear 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_clear.3x,v 1.41 2023/12/16 21:09:11 tom Exp $
+.TH curs_clear 3X 2023-12-16 "ncurses 6.4" "Library calls"
+.ie \n(.g \{\
+.ds `` \(lq
+.ds '' \(rq
+.\}
+.el \{\
+.ie t .ds `` ``
+.el   .ds `` ""
+.ie t .ds '' ''
+.el   .ds '' ""
+.\}
+.
 .de bP
 .ie n  .IP \(bu 4
 .el    .IP \(bu 2
@@ -95,8 +106,8 @@ Note that \fBerase\fP, \fBwerase\fP, \fBclear\fP, \fBwclear\fP,
 .SH PORTABILITY
 These functions are described in the XSI Curses standard, Issue 4.
 .PP
-The SVr4.0 manual says that these functions could
-return "a non-negative integer if \fBimmedok\fP(3X) is set",
+The SVr4.0 manual says that these functions could return
+\*(``or a non-negative integer if \fB\%immedok\fP is set\*('',
 referring to the return-value of \fBwrefresh\fP.
 In that implementation, \fBwrefresh\fP would return a count of
 the number of characters written to the terminal.
@@ -105,7 +116,7 @@ Some historic curses implementations had, as an undocumented feature, the
 ability to do the equivalent of \fBclearok(..., 1)\fP by saying
 \fBtouchwin(stdscr)\fP or \fBclear(stdscr)\fP.
 This will not work under
-ncurses.
+\fI\%ncurses\fP.
 .PP
 This implementation, and others such as Solaris,
 sets the current position to 0,0 after erasing
index 20c0fbde66a174a410ed4fce21ec5b1bc8dc6ab9..9cf9165e5312f65c9d9df79912b08579972b4c5a 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_color.3x,v 1.92 2023/11/25 17:36:51 tom Exp $
-.TH curs_color 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_color.3x,v 1.93 2023/12/16 21:07:24 tom Exp $
+.TH curs_color 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
 \fB\%extended_pair_content\fP,
 \fB\%reset_color_pairs\fP,
 \fB\%COLOR_PAIR\fP,
-\fB\%PAIR_NUMBER\fP \-
+\fB\%PAIR_NUMBER\fP,
+\fB\%COLORS\fP,
+\fB\%COLOR_PAIRS\fP,
+\fB\%COLOR_BLACK\fP,
+\fB\%COLOR_RED\fP,
+\fB\%COLOR_GREEN\fP,
+\fB\%COLOR_YELLOW\fP,
+\fB\%COLOR_BLUE\fP,
+\fB\%COLOR_MAGENTA\fP,
+\fB\%COLOR_CYAN\fP,
+\fB\%COLOR_WHITE\fP \-
 manipulate terminal colors with \fIcurses\fR
 .SH SYNOPSIS
 .nf
@@ -86,17 +96,17 @@ manipulate terminal colors with \fIcurses\fR
 \fBvoid reset_color_pairs(void);
 .PP
 \fBint COLOR_PAIR(int \fIn\fP);
-\fBPAIR_NUMBER(\fIattrs\fP);
+\fBPAIR_NUMBER(int \fIattr\fP);
 .fi
 .SH DESCRIPTION
 .SS Overview
 \fIcurses\fP supports color attributes on terminals with that capability.
 To use these routines \fB\%start_color\fP must be called, usually right after
 \fB\%initscr\fP.
-Colors are always used in pairs (referred to as color-pairs).
-A color-pair consists of a foreground color (for characters) and a background
+Colors are always used in pairs (referred to as color pairs).
+A color pair consists of a foreground color (for characters) and a background
 color (for the blank field on which the characters are displayed).
-A programmer initializes a color-pair with the routine \fB\%init_pair\fP.
+A programmer initializes a color pair with the routine \fB\%init_pair\fP.
 After it has been initialized, \fB\%COLOR_PAIR\fP(\fIn\fP)
 can be used to convert the pair to a video attribute.
 .PP
@@ -110,7 +120,7 @@ The routine \fB\%color_content\fP allows a
 programmer to extract the amounts of red, green, and blue components in an
 initialized color.
 The routine \fB\%pair_content\fP allows a programmer to find
-out how a given color-pair is currently defined.
+out how a given color pair is currently defined.
 .SS Color Rendering
 The \fIcurses\fP library combines these inputs to produce the
 actual foreground and background colors shown on the screen:
@@ -191,7 +201,7 @@ It is good practice to call this routine right after \fB\%initscr\fP.
 .bP
 It initializes two global variables, \fB\%COLORS\fP and
 \fB\%COLOR_PAIRS\fP (respectively defining the maximum number of colors
-and color-pairs the terminal can support).
+and color pairs the terminal can support).
 .bP
 It initializes the special color pair \fB\%0\fP to the default foreground
 and background colors.
@@ -265,9 +275,9 @@ and can change their definitions;
 other, it returns \fBFALSE\fP.
 This routine facilitates writing terminal-independent programs.
 .SS init_pair
-The \fB\%init_pair\fP routine changes the definition of a color-pair.
+The \fB\%init_pair\fP routine changes the definition of a color pair.
 It takes three arguments:
-the number of the color-pair to be changed, the foreground
+the number of the color pair to be changed, the foreground
 color number, and the background color number.
 For portable applications:
 .bP
@@ -278,20 +288,21 @@ a default color in foreground and/or background.
 .bP
 The second and third arguments must be valid color values.
 .PP
-If the color-pair was previously initialized,
-the screen is refreshed and all occurrences of that color-pair
+If the color pair was previously initialized,
+the screen is refreshed and all occurrences of that color pair
 are changed to the new definition.
 .PP
-As an extension, ncurses allows you to set color pair \fB0\fP via
-the \fB\%assume_default_colors\fP(3X) routine, or to specify the use of
+As an extension,
+\fI\%ncurses\fP allows you to set color pair \fB0\fP via the
+\fB\%assume_default_colors\fP(3X) routine, or to specify the use of
 default colors (color number \fB\-1\fP) if you first invoke the
 \fB\%use_default_colors\fP(3X) routine.
 .SS init_extended_pair
 Because \fB\%init_pair\fP uses signed \fBshort\fPs for its parameters,
-that limits color-pairs and color-values
+that limits color pairs and color-values
 to 32767 on modern hardware.
 The extension \fB\%init_extended_pair\fP uses \fBint\fPs
-for the color-pair and color-value,
+for the color pair and color-value,
 allowing a larger number of colors to be supported.
 .SS init_color
 The \fB\%init_color\fP routine changes the definition of a color.
@@ -342,8 +353,8 @@ for returning the red, green, and blue components,
 allowing a larger number of colors to be supported.
 .SS pair_content
 The \fB\%pair_content\fP routine allows programmers to find out what colors a
-given color-pair consists of.
-It requires three arguments: the color-pair
+given color pair consists of.
+It requires three arguments: the color pair
 number, and two addresses of \fBshort\fRs for storing the foreground and the
 background color numbers.
 .bP
@@ -355,26 +366,28 @@ to by the second and third arguments are in the
 range \fB0\fP through \fB\%COLORS\fP, inclusive.
 .SS extended_pair_content
 Because \fB\%pair_content\fP uses signed \fBshort\fPs for its parameters,
-that limits color-pair and color-values to 32767 on modern hardware.
+that limits color pair and color-values to 32767 on modern hardware.
 The extension \fB\%extended_pair_content\fP uses \fBint\fPs
 for the color pair and
 for returning the foreground and background colors,
 allowing a larger number of colors to be supported.
 .SS reset_color_pairs
-The extension \fB\%reset_color_pairs\fP tells ncurses to discard all
-of the color-pair information which was set with \fB\%init_pair\fP.
+The extension \fB\%reset_color_pairs\fP tells \fI\%ncurses\fP to discard
+all of the color pair information which was set with \fB\%init_pair\fP.
 It also touches the current- and standard-screens, allowing an application to
 switch color palettes rapidly.
-.SS PAIR_NUMBER
-\fB\%PAIR_NUMBER(\fIattrs\fR) extracts the color
-value from its \fIattrs\fP parameter and returns it as a color pair number.
 .SS COLOR_PAIR
-Its inverse \fB\%COLOR_PAIR(\fIn\fB)\fR converts a color pair number
-to an attribute.
+\fB\%COLOR_PAIR(\fIn\fB)\fR converts a color pair number to an
+attribute.
 Attributes can hold color pairs in the range 0 to 255.
-If you need a color pair larger than that, you must use functions
-such as \fB\%attr_set\fP (which pass the color pair as a separate parameter)
+If you need a color pair larger than that,
+you must use functions such as \fB\%attr_set\fP
+(which pass the color pair as a separate parameter)
 rather than the legacy functions such as \fB\%attrset\fP.
+.SS PAIR_NUMBER
+\fB\%PAIR_NUMBER(\fIattr\fR) extracts the color information from its
+\fIattr\fP parameter and returns it as a color pair number;
+it is the inverse operation of \fB\%COLOR_PAIR\fP.
 .SH RETURN VALUE
 The routines \fB\%can_change_color\fP and \fB\%has_colors\fP return \fBTRUE\fP
 or \fBFALSE\fP.
@@ -421,7 +434,8 @@ from the terminal description.
 returns an error if the color table cannot be allocated.
 .RE
 .SH NOTES
-In the \fIncurses\fP implementation, there is a separate color activation flag,
+In the \fI\%ncurses\fP implementation,
+there is a separate color activation flag,
 color palette, color pairs table,
 and associated \fB\%COLORS\fP and \fB\%COLOR_PAIRS\fP counts
 for each screen; the \fB\%start_color\fP function only affects the current
@@ -449,7 +463,8 @@ Paradise and compatibles) do the wrong thing when you try to set a bright
 .bP
 Color RGB values are not settable.
 .SH EXTENSIONS
-The functions marked as extensions were designed for \fBncurses\fP(3X),
+The functions marked as extensions were designed for
+\fB\%ncurses\fP(3X),
 and are not found in SVr4 curses, 4.4BSD curses,
 or any other previous version of curses.
 .SH PORTABILITY
@@ -478,7 +493,8 @@ This implementation provides extended versions of those functions
 which use \fBshort\fP parameters,
 allowing applications to use larger color- and pair-numbers.
 .PP
-The \fB\%reset_color_pairs\fP function is an extension of ncurses.
+The \fB\%reset_color_pairs\fP function is an extension of
+\fI\%ncurses\fP.
 .SH HISTORY
 SVr3.2 introduced color support to curses in 1987.
 .PP
@@ -503,29 +519,29 @@ along with changing \fB\%chtype\fP from 16-bits to 32-bits.
 .bP
 X/Open Curses (1992-present)
 added a new structure \fB\%cchar_t\fP to store the character,
-attributes and color-pair values, allowing increased range of color-pairs.
-Both color-pairs and color-values used a signed \fBshort\fP,
+attributes and color pair values, allowing increased range of color pairs.
+Both color pairs and color-values used a signed \fBshort\fP,
 limiting values to 15 bits.
 .bP
-ncurses (1992-present) uses eight bits
+\fI\%ncurses\fP (1992-present) uses eight bits
 for \fB\%A_COLOR\fP in \fB\%chtype\fP values.
 .IP
 Version 5.3 provided a wide-character interface (2002),
-but left color-pairs as part of the attributes-field.
+but left color pairs as part of the attributes-field.
 .IP
 Since version 6 (2015),
-ncurses uses a separate \fBint\fP for color-pairs in the \fB\%cchar_t\fP values.
-When those color-pair values fit in 8 bits,
-ncurses allows color-pairs to be manipulated
+ncurses uses a separate \fBint\fP for color pairs in the \fB\%cchar_t\fP values.
+When those color pair values fit in 8 bits,
+ncurses allows color pairs to be manipulated
 via the functions using \fB\%chtype\fP values.
 .bP
 NetBSD curses used 6 bits from
 2000 (when colors were first supported) until 2004.
 At that point, NetBSD changed to use 10 bits.
 As of 2021, that size is unchanged.
-Like ncurses before version 6,
-the NetBSD color-pair information is stored in
-the attributes field of \fB\%cchar_t\fP, limiting the number of color-pairs
+Like \fI\%ncurses\fP before version 6,
+the NetBSD color pair information is stored in
+the attributes field of \fB\%cchar_t\fP, limiting the number of color pairs
 by the size of the bitfield.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
index 81028fda1d76a0f656a67021f319e0dd6f74bc59..2f42bf02098081eba17edacc8cd4da5bb4e82857 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_delch.3x,v 1.29 2023/10/07 21:19:07 tom Exp $
-.TH curs_delch 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_delch.3x,v 1.30 2023/12/16 21:09:11 tom Exp $
+.TH curs_delch 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -63,9 +63,10 @@ not change (after moving to \fIy\fP, \fIx\fP, if specified).
 (This does not
 imply use of the hardware delete character feature.)
 .SH RETURN VALUE
-All routines return the integer \fBERR\fP upon failure and an \fBOK\fP (SVr4
-specifies only "an integer value other than \fBERR\fP") upon successful
-completion.
+All routines return the integer \fBERR\fP upon failure and an \fBOK\fP
+(SVr4 specifies only
+\*(``an integer value other than \fBERR\fP\*('')
+upon successful completion.
 .PP
 Functions with a \*(``mv\*('' prefix first perform a cursor movement using
 \fBwmove\fP, and return an error if the position is outside the window,
index 3ef55d723bd6c806e58afff49382714596d1804b..29b8bb57d58cdcf769fc29a389d22bb886c96338 100644 (file)
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_deleteln.3x,v 1.33 2023/11/25 14:08:05 tom Exp $
-.TH curs_deleteln 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_deleteln.3x,v 1.34 2023/12/16 21:33:34 tom Exp $
+.TH curs_deleteln 3X 2023-12-16 "ncurses 6.4" "Library calls"
+.ie \n(.g \{\
+.ds `` \(lq
+.ds '' \(rq
+.\}
+.el \{\
+.ie t .ds `` ``
+.el   .ds `` ""
+.ie t .ds '' ''
+.el   .ds '' ""
+.\}
+.
 .SH NAME
 \fB\%deleteln\fP,
 \fB\%wdeleteln\fP,
@@ -69,9 +80,10 @@ The current cursor position remains the same.
 The \fBinsertln\fP and \fBwinsertln\fP routines insert a blank line above the
 current line and the bottom line is lost.
 .SH RETURN VALUE
-All routines return the integer \fBERR\fP upon failure and an \fBOK\fP (SVr4
-specifies only "an integer value other than \fBERR\fP") upon successful
-completion.
+These routines return the integer \fBERR\fP upon failure and an \fBOK\fP
+(SVr4 specifies only
+\*(``an integer value other than \fBERR\fP\*('')
+upon successful completion.
 .PP
 X/Open defines no error conditions.
 In this implementation,
index 873870662fb615675a43c23edb51bf7c1fb96641..54cb1e7f58f03ba22316d2ed68c519bd3454c529 100644 (file)
@@ -29,8 +29,8 @@
 .\"
 .\" Author: Thomas E. Dickey 1999-on
 .\"
-.\" $Id: curs_extend.3x,v 1.42 2023/11/25 14:26:30 tom Exp $
-.TH curs_extend 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_extend.3x,v 1.43 2023/12/16 20:32:22 tom Exp $
+.TH curs_extend 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -81,7 +81,7 @@ this in your application.
 \fBuse_extended_names\fP returns the previous state, allowing you to
 save this and restore it.
 .SH PORTABILITY
-These routines are specific to ncurses.
+These routines are specific to \fI\%ncurses\fP.
 They were not supported on
 Version 7, BSD or System V implementations.
 It is recommended that
index 4ec2c3ec80d98975136bc994e828329e9a7de4b2..6d7a3c3e98f01415b5a493ca9cb381480668462e 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_get_wstr.3x,v 1.41 2023/11/25 14:29:54 tom Exp $
-.TH curs_get_wstr 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_get_wstr.3x,v 1.42 2023/12/16 20:32:22 tom Exp $
+.TH curs_get_wstr 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -208,12 +208,12 @@ This implementation counts the terminator in the length.
 X/Open Curses does not specify what happens if the length \fIn\fP is negative.
 .bP
 For analogy with \fBwgetnstr\fP,
-ncurses 6.2 uses a limit (based on \fBLINE_MAX\fP).
+\fI\%ncurses\fP 6.2 uses a limit (based on \fBLINE_MAX\fP).
 .bP
 Some other implementations (such as Solaris xcurses) do the same,
 while others (PDCurses) do not allow this.
 .bP
-NetBSD 7 curses imitates ncurses 6.1 in this regard,
+NetBSD 7 curses imitates \fI\%ncurses\fP 6.1 in this regard,
 treating a \fB\-1\fP as an indefinite number of characters.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
index 1f2f74502e1f3e5612ba4b622b42b1874f46f0e2..760b85bd29e090dc99b9b164ae8242c9b358943c 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_getcchar.3x,v 1.42 2023/11/25 14:30:18 tom Exp $
-.TH curs_getcchar 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_getcchar.3x,v 1.43 2023/12/16 21:07:24 tom Exp $
+.TH curs_getcchar 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .de bP
 .ie n  .IP \(bu 4
 .el    .IP \(bu 2
@@ -66,7 +66,7 @@ Extracts information from a \fBcchar_t\fP value \fIwcval\fP
 .bP
 Stores the character attributes in the location pointed to by \fIattrs\fP
 .bP
-Stores the color-pair in the location pointed to by \fIcolor_pair\fP
+Stores the color pair in the location pointed to by \fIcolor_pair\fP
 .bP
 Stores the wide-character string,
 characters referenced by \fIwcval\fP, into the array pointed to by \fIwch\fP.
@@ -98,11 +98,11 @@ The string must be L'\e0' terminated,
 contain at most one spacing character,
 which must be the first.
 .IP
-Up to \fBCCHARW_MAX\fP\-1 nonspacing characters may follow.
-Additional nonspacing characters are ignored.
+Up to \fBCCHARW_MAX\fP\-1 non-spacing characters may follow.
+Additional non-spacing characters are ignored.
 .IP
 The string may contain a single control character instead.
-In that case, no nonspacing characters are allowed.
+In that case, no non-spacing characters are allowed.
 .SH RETURN VALUE
 When \fIwch\fP is a null pointer,
 \fBgetcchar\fP returns the number of wide characters referenced by
@@ -123,7 +123,7 @@ If \fIwcval\fP is constructed by any other means, the effect is unspecified.
 X/Open Curses documents the \fIopts\fP argument as reserved for future use,
 saying that it must be null.
 This implementation
-uses that parameter in ABI 6 for the functions which have a color-pair
+uses that parameter in ABI 6 for the functions which have a color pair
 parameter to support extended color pairs:
 .bP
 For  functions  which modify the color, e.g., \fBsetcchar\fP,
@@ -135,7 +135,7 @@ if \fIopts\fP is set it is treated as a pointer to \fBint\fP,
 and  used  to  retrieve  the color pair as an \fBint\fP value,
 in addition retrieving it via the standard pointer to \fBshort\fP parameter.
 .SH PORTABILITY
-The \fBCCHARW_MAX\fP symbol is specific to ncurses.
+The \fBCCHARW_MAX\fP symbol is specific to \fI\%ncurses\fP.
 X/Open Curses does not provide details for the layout of the \fBcchar_t\fP
 structure.
 It tells what data are stored in it:
index cf7225b6cf3436e156ef3771d557e43b507865e5..69067297117307df0067c97a4d53383ae4348aed 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_getch.3x,v 1.75 2023/10/07 21:19:07 tom Exp $
-.TH curs_getch 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_getch.3x,v 1.76 2023/12/16 21:01:28 tom Exp $
+.TH curs_getch 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -59,7 +59,6 @@ get (or push back) characters from \fIcurses\fR terminal keyboard
 .PP
 .B int getch(void);
 .B int wgetch(WINDOW *\fIwin\fP);
-.PP
 .B int mvgetch(int \fIy\fP, int \fIx\fP);
 .B int mvwgetch(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP);
 .PP
@@ -129,7 +128,7 @@ otherwise, the function key value is returned.
 For this reason, many terminals experience a delay between the time
 a user presses the escape key and the escape is returned to the program.
 .PP
-In \fBncurses\fP, the timer normally expires after
+In \fI\%ncurses\fP, the timer normally expires after
 the value in \fBESCDELAY\fP (see \fBcurs_variables\fP(3X)).
 If \fBnotimeout\fP is \fBTRUE\fP, the timer does not expire;
 it is an infinite (or very large) value.
@@ -280,8 +279,10 @@ This code is returned whether or not \fBkeypad\fP has been enabled.
 .B KEY_MOUSE
 is returned for mouse-events (see \fBcurs_mouse\fP(3X)).
 This code relies upon whether or not \fBkeypad\fP(3X) has been enabled,
-because (e.g., with \fBxterm\fP(1) mouse prototocol) ncurses must
-read escape sequences,
+because
+(e.g.,
+with \fBxterm\fP(1) mouse prototocol)
+\fI\%ncurses\fP must read escape sequences,
 just like a function key.
 .SS Testing key-codes
 The \fBhas_key\fP routine takes a key-code value from the above list, and
@@ -331,7 +332,7 @@ keys, e.g.,
 Some curses implementations may differ according to whether they
 treat these control keys specially (and ignore the terminfo), or
 use the terminfo definitions.
-\fBNcurses\fP uses the terminfo definition.
+\fI\%ncurses\fP uses the terminfo definition.
 If it says that \fBKEY_ENTER\fP is control/M,
 \fBgetch\fP will return \fBKEY_ENTER\fP
 when you press control/M.
@@ -391,9 +392,9 @@ input timeout or non-blocking mode has been set.
 .PP
 \fBKEY_MOUSE\fP is mentioned in XSI Curses, along with a few related
 terminfo capabilities, but no higher-level functions use the feature.
-The implementation in ncurses is an extension.
+The implementation in \fI\%ncurses\fP is an extension.
 .PP
-\fBKEY_RESIZE\fP is an extension first implemented for ncurses.
+\fBKEY_RESIZE\fP is an extension first implemented for \fI\%ncurses\fP.
 NetBSD curses later added this extension.
 .PP
 Programmers concerned about portability should be prepared for either of two
@@ -401,7 +402,7 @@ cases: (a) signal receipt does not interrupt \fBgetch\fP; (b) signal receipt
 interrupts \fBgetch\fP and causes it to return \fBERR\fP with \fBerrno\fP set to
 \fBEINTR\fP.
 .PP
-The \fBhas_key\fP function is unique to \fBncurses\fP.
+The \fBhas_key\fP function is unique to \fI\%ncurses\fP.
 We recommend that
 any code using it be conditionalized on the \fBNCURSES_VERSION\fP feature macro.
 .SH SEE ALSO
index a7d0c8ce359ce4c87f38b2c7bf13e4acc7517c30..08b39ab4d1f306a15e885dfa0f40f56718cdbe37 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_getstr.3x,v 1.51 2023/11/25 14:29:54 tom Exp $
-.TH curs_getstr 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_getstr.3x,v 1.52 2023/12/16 20:32:22 tom Exp $
+.TH curs_getstr 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -203,7 +203,7 @@ X/Open Curses, Issue 7 (2009) changed that to say they
 to allow for the terminating NUL.
 As of 2018, some implementations count it, some do not:
 .bP
-ncurses 6.1 and PDCurses do not count the NUL in the given limit, while
+\fI\%ncurses\fP 6.1 and PDCurses do not count the NUL in the given limit, while
 .bP
 Solaris SVr4 and NetBSD curses count the NUL as part of the limit.
 .bP
@@ -231,15 +231,15 @@ that it is greater than zero.
 .IP
 A comment in NetBSD's source code states that this is specified in SUSv2.
 .bP
-ncurses (before 6.2) assumes no particular limit for the result
+\fI\%ncurses\fP (before 6.2) assumes no particular limit for the result
 from \fBwgetstr\fP, and treats the \fIn\fP parameter of \fBwgetnstr\fP
 like SVr4 curses.
 .bP
-ncurses 6.2 uses \fBLINE_MAX\fP,
+\fI\%ncurses\fP 6.2 uses \fBLINE_MAX\fP,
 or a larger (system-dependent) value
 which the \fBsysconf\fP function may provide.
 If neither \fBLINE_MAX\fP or \fBsysconf\fP is available,
-ncurses uses the POSIX value for \fBLINE_MAX\fP (a 2048 byte limit).
+\fI\%ncurses\fP uses the POSIX value for \fBLINE_MAX\fP (a 2048 byte limit).
 In either case, it reserves a byte for the terminating NUL.
 .PP
 Although \fBgetnstr\fP is equivalent to a series of calls to \fBgetch\fP,
@@ -269,18 +269,22 @@ They may take the \fIcbreak\fP
 mode set by the caller into account when deciding whether to handle
 echoing within \fBgetnstr\fP or as a side-effect of the \fBgetch\fP calls.
 .bP
-The original ncurses (as \fIpcurses\fP in 1986) set \fBnoraw\fP and \fBcbreak\fP
-when accepting input for \fBgetnstr\fP.
+The original \fI\%ncurses\fP
+(as \fIpcurses\fP in 1986)
+set \fBnoraw\fP and \fBcbreak\fP when accepting input for \fBgetnstr\fP.
 That may have been done to make function- and cursor-keys work;
-it is not necessary with ncurses.
+it is not necessary with \fI\%ncurses\fP.
 .IP
-Since 1995, ncurses has provided signal handlers for INTR and QUIT
+Since 1995,
+\fI\%ncurses\fP has provided signal handlers for INTR and QUIT
 (e.g., \fB^C\fP or \fB^\e\fP).
 With the \fBnoraw\fP and \fBcbreak\fP settings,
 those may catch a signal and stop the program,
 where other implementations allow one to enter those characters in the buffer.
 .bP
-Starting in 2021 (ncurses 6.3), \fBgetnstr\fP sets \fBraw\fP,
+Starting in 2021
+(\fI\%ncurses\fP 6.3),
+\fBgetnstr\fP sets \fBraw\fP,
 rather than \fBnoraw\fP and \fBcbreak\fP for better compatibility with
 SVr4-curses, e.g., allowing one to enter a \fB^C\fP into the buffer.
 .SH SEE ALSO
index d75ebeb68ddfd2d54ee2402da46543f3d5ad9f98..a358e750007bfc870ca4fb4def1db0ce02c27a50 100644 (file)
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_getyx.3x,v 1.39 2023/10/21 10:28:36 tom Exp $
-.TH curs_getyx 3X 2023-10-21 "ncurses 6.4" "Library calls"
+.\" $Id: curs_getyx.3x,v 1.40 2023/12/16 21:33:21 tom Exp $
+.TH curs_getyx 3X 2023-12-16 "ncurses 6.4" "Library calls"
+.ie \n(.g \{\
+.ds `` \(lq
+.ds '' \(rq
+.\}
+.el \{\
+.ie t .ds `` ``
+.el   .ds `` ""
+.ie t .ds '' ''
+.el   .ds '' ""
+.\}
+.
 .SH NAME
 \fB\%getyx\fP,
 \fB\%getparyx\fP,
@@ -60,7 +71,7 @@ The return values of these macros are undefined (i.e.,
 they should not be used as the right-hand side of assignment statements).
 .SH NOTES
 All of these interfaces are macros.
-A "\fB&\fP" is not necessary before the variables \fIy\fP and \fIx\fP.
+A \*(``&\*('' is not necessary before the variables \fIy\fP and \fIx\fP.
 .SH PORTABILITY
 The
 \fB\%getyx\fP,
@@ -92,7 +103,7 @@ Besides the problem of opaque structures,
 the data stored in like-named members may not have like-values in
 different implementations.
 For example, the \fB\%WINDOW._maxx\fP and \fB\%WINDOW._maxy\fP values
-in \fIncurses\fP have
+in \fI\%ncurses\fP have
 (at least since release 1.8.1)
 differed by one from some other implementations.
 The difference is hidden by means of the macro \fB\%getmaxyx\fP.
index 4e5f14d8abc7cf3cf5b9ddb29165d86ee5dc59ec..db92f6dfd9ec5d71fc6a2d3c77f6cf12bdb2eb10 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_inch.3x,v 1.40 2023/10/07 21:19:07 tom Exp $
-.TH curs_inch 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_inch.3x,v 1.41 2023/12/16 21:08:16 tom Exp $
+.TH curs_inch 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -71,13 +71,13 @@ Constants defined in
 extract the character or attributes alone.
 .
 .SS Attributes
-The following bit-masks may be AND-ed with characters returned by \fBwinch\fP.
+The following bit masks may be AND-ed with characters returned by \fBwinch\fP.
 .PP
 .TS
 l l .
-\fBA_CHARTEXT\fP       Bit-mask to extract character
-\fBA_ATTRIBUTES\fP     Bit-mask to extract attributes
-\fBA_COLOR\fP  Bit-mask to extract color-pair field information
+\fBA_CHARTEXT\fP       Bit mask to extract character
+\fBA_ATTRIBUTES\fP     Bit mask to extract attributes
+\fBA_COLOR\fP  Bit mask to extract color pair field information
 .TE
 .SH RETURN VALUE
 Functions with a \*(``mv\*('' prefix first perform a cursor movement using
index ea9c516a4f0ae006a6dada11b879d07f35028502..fcb73d677f53ff02b36fe4f9295b55078b859390 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_initscr.3x,v 1.56 2023/12/03 00:09:54 tom Exp $
-.TH curs_initscr 3X 2023-12-02 "ncurses 6.4" "Library calls"
+.\" $Id: curs_initscr.3x,v 1.59 2023/12/17 23:56:04 tom Exp $
+.TH curs_initscr 3X 2023-12-17 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -181,7 +181,7 @@ X/Open specifies that portable applications must not
 call \fBinitscr\fP more than once:
 .bP
 The portable way to use \fBinitscr\fP is once only,
-using \fBrefresh\fP (see curs_refresh(3X))
+using \fB\%refresh\fP(3X)
 to restore the screen after \fBendwin\fP.
 .bP
 This implementation allows using \fBinitscr\fP after \fBendwin\fP.
@@ -208,14 +208,14 @@ SVr4 curses deletes the standard \fBWINDOW\fP structures
 \fBstdscr\fP and \fBcurscr\fP as well as a work area \fBnewscr\fP.
 SVr4 curses ignores other windows.
 .bP
-Since version 4.0 (1996), ncurses has maintained a list of all windows
-for each screen,
+Since version 4.0 (1996),
+\fI\%ncurses\fP has maintained a list of all windows for each screen,
 using that information to delete those windows when \fBdelscreen\fP is called.
 .bP
-NetBSD copied this feature of ncurses in 2001.
+NetBSD copied this feature of \fI\%ncurses\fP in 2001.
 PDCurses follows the SVr4 model,
 deleting only the standard \fBWINDOW\fP structures.
-.SS High-level versus low-level
+.SS "High-level versus Low-level"
 Different implementations may disagree regarding the level of some functions.
 For example, \fBSCREEN\fP (returned by \fBnewterm\fP) and
 \fBTERMINAL\fP (returned by \fBsetupterm\fP(3X)) hold file descriptors for
@@ -228,16 +228,16 @@ behavior depending on which structure holds the corresponding descriptor.
 For example
 .bP
 NetBSD's \fBbaudrate\fP(3X) function uses the descriptor in \fBTERMINAL\fP.
-\fBncurses\fP and SVr4 use the descriptor in \fBSCREEN\fP.
+\fI\%ncurses\fP and SVr4 use the descriptor in \fBSCREEN\fP.
 .bP
-NetBSD and \fBncurses\fP use the descriptor
+NetBSD and \fI\%ncurses\fP use the descriptor
 in \fBTERMINAL\fP
 for terminal I/O modes,
 e.g.,
 \fBdef_shell_mode\fP(3X),
 \fBdef_prog_mode\fP(3X).
 SVr4 curses uses the descriptor in \fBSCREEN\fP.
-.SS Unset TERM Variable
+.SS "Unset \fITERM\fP Variable"
 If the \fITERM\fP variable is missing or empty, \fBinitscr\fP uses the
 value \*(``unknown\*('',
 which normally corresponds to a terminal entry with the \fIgeneric\fP
@@ -245,7 +245,7 @@ which normally corresponds to a terminal entry with the \fIgeneric\fP
 Generic entries are detected by \fBsetupterm\fP(3X)
 and cannot be used for full-screen operation.
 Other implementations may handle a missing/empty \fITERM\fP variable differently.
-.SS Signal Handlers
+.SS "Signal Handlers"
 Quoting from X/Open Curses Issue 7, section 3.1.1:
 .RS 5
 .PP
@@ -292,16 +292,16 @@ purpose than \fBSIGQUIT\fP (which is used in debugging).
 .B SIGTSTP
 This handles the \fIstop\fP signal, used in job control.
 When resuming the process, this implementation discards pending
-input with \fBflushinput\fP (see curs_util(3X)), and repaints the screen
+input with \fB\%flushinp\fP(3X), and repaints the screen
 assuming that it has been completely altered.
-It also updates the saved terminal modes with \fBdef_shell_mode\fP
-(see \fBcurs_kernel\fP(3X)).
+It also updates the saved terminal modes with
+\fB\%def_shell_mode\fP(3X).
 .TP 5
 .B SIGWINCH
 This handles the window-size changes which were ignored in
 the standardization efforts.
 The handler sets a (signal-safe) variable
-which is later tested in \fBwgetch\fP (see curs_getch(3X)).
+which is later tested in \fB\%wgetch\fP(3X).
 If \fBkeypad\fP has been enabled for the corresponding window,
 \fBwgetch\fP returns the key symbol \fBKEY_RESIZE\fP.
 At the same time, \fBwgetch\fP calls \fBresizeterm\fP to adjust the
index fd07da5f24452cfe5c02f403d92fab191cf06213..d5d9c9685c01deab2bf3c9c48483297ed52e97b2 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_inopts.3x,v 1.58 2023/11/25 14:30:50 tom Exp $
-.TH curs_inopts 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_inopts.3x,v 1.59 2023/12/16 20:32:22 tom Exp $
+.TH curs_inopts 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -103,8 +103,8 @@ get and set \fIcurses\fR terminal input options
 \fBint is_raw(void);
 .fi
 .SH DESCRIPTION
-The \fIncurses\fP library provides several functions which let an application
-change the way input from the terminal is handled.
+The \fI\%ncurses\fP library provides several functions which let an
+application change the way input from the terminal is handled.
 Some are global, applying to all windows.
 Others apply only to a specific window.
 Window-specific settings are not automatically applied to new or derived
@@ -333,15 +333,15 @@ if the flag is reset, or
 \-1
 if the \fIcurses\fP library was not initialized.
 .PP
-These routines are specific to \fIncurses\fP.
+These routines are specific to \fI\%ncurses\fP.
 They were not supported on Version 7, BSD or System V implementations.
-It is recommended that any code depending on \fIncurses\fP extensions
+It is recommended that any code depending on \fI\%ncurses\fP extensions
 be conditioned using NCURSES_VERSION.
 .SH PORTABILITY
 Except as noted in the section on extensions,
 these functions are described in the XSI Curses standard, Issue 4.
 .PP
-The \fIncurses\fP library obeys the XPG4 standard
+The \fI\%ncurses\fP library obeys the XPG4 standard
 and the historical practice of the
 AT&T \fIcurses\fP implementations,
 in that the echo bit is cleared when \fIcurses\fP
@@ -361,10 +361,11 @@ raw input wants a clean (ideally 8-bit clean) connection that the operating
 system will not alter.
 .PP
 When \fB\%keypad\fP is first enabled,
-\fIncurses\fP loads the key-definitions for the current terminal description.
+\fI\%ncurses\fP loads the key-definitions for the current terminal
+description.
 If the terminal description includes extended string capabilities,
 e.g., from using the \fB\-x\fP option of \fB@TIC@\fP,
-then \fIncurses\fP also defines keys for the capabilities whose names
+then \fI\%ncurses\fP also defines keys for the capabilities whose names
 begin with \*(``k\*(''.
 The corresponding keycodes are generated and (depending on previous
 loads of terminal descriptions) may differ from one execution of a
@@ -386,12 +387,12 @@ and similar functions to return keycodes rely upon the order in which
 the strings are loaded.
 If more than one key definition has the same string value,
 then \fB\%wgetch\fP can return only one keycode.
-Most \fIcurses\fP implementations (including \fIncurses\fP)
+Most \fIcurses\fP implementations (including \fI\%ncurses\fP)
 load key definitions in the order
 defined by the array of string capability names.
 The last key to be loaded determines the keycode which will be returned.
-In \fIncurses\fP, you may also have extended capabilities interpreted as
-key definitions.
+In \fI\%ncurses\fP,
+you may also have extended capabilities interpreted as key definitions.
 These are loaded after the predefined keys,
 and if a capability's value is the same as a previously-loaded
 key definition,
index f059fceec61c533e39bf2dc603348eb5a88b0703..10000832daf67d59c4761fbf0f9c5c3a0c9b7e77 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_ins_wstr.3x,v 1.29 2023/11/25 11:29:34 tom Exp $
-.TH curs_ins_wstr 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_ins_wstr.3x,v 1.30 2023/12/16 20:36:15 tom Exp $
+.TH curs_ins_wstr 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -104,9 +104,9 @@ or if the window pointer is null.
 .SH NOTES
 All but \fBwins_nwstr\fP may be macros.
 .PP
-If the first character in the string is a nonspacing character, these
+If the first character in the string is a non-spacing character, these
 functions will fail.
-XSI does not define what will happen if a nonspacing character follows
+XSI does not define what will happen if a non-spacing character follows
 a control character.
 .SH PORTABILITY
 These functions are described in the XSI Curses standard, Issue 4,
index 37903968e1d69c95cba7858ee588965e5a753f58..889ea4ac559d4691c2320bf9b2417aebe35c0a11 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_insch.3x,v 1.33 2023/10/07 21:19:07 tom Exp $
-.TH curs_insch 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_insch.3x,v 1.34 2023/12/16 21:09:11 tom Exp $
+.TH curs_insch 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -62,10 +62,10 @@ All characters to the right of the cursor are moved one space to the
 right, with the possibility of the rightmost character on the line being lost.
 The insertion operation does not change the cursor position.
 .SH RETURN VALUE
-All routines that return an integer return \fBERR\fP upon failure and \fBOK\fP
-(SVr4 specifies only "an integer value other than \fBERR\fP")
-upon successful completion,
-unless otherwise noted in the preceding routine descriptions.
+These routines return the integer \fBERR\fP upon failure and an \fBOK\fP
+(SVr4 specifies only
+\*(``an integer value other than \fBERR\fP\*('')
+upon successful completion.
 .PP
 Functions with a \*(``mv\*('' prefix first perform a cursor movement using
 \fBwmove\fP, and return an error if the position is outside the window,
index 13835a4e84bfa712e24f24b0742ebbe445eb18bf..20f42f38a0bf169cc73d344a85dc0ea99cdacddc 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_instr.3x,v 1.43 2023/11/25 17:58:25 tom Exp $
-.TH curs_instr 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_instr.3x,v 1.44 2023/12/16 20:32:22 tom Exp $
+.TH curs_instr 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -114,8 +114,8 @@ is recommended.
 SVr4 does not
 document whether a length limit includes or excludes the trailing NUL.
 .PP
-The ncurses library extends the XSI description by allowing a negative
-value for \fIn\fP.
+The \fI\%ncurses\fP library extends the XSI description by allowing a
+negative value for \fIn\fP.
 In this case, the functions return the string ending at the right margin.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
index 3ff80107bfdbdbff36e39f6a90e27628fe4bd73a..cbb870605ead2a2f1ca69161aa9b7d6a1c107c55 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_kernel.3x,v 1.49 2023/10/14 22:03:52 tom Exp $
-.TH curs_kernel 3X 2023-10-14 "ncurses 6.4" "Library calls"
+.\" $Id: curs_kernel.3x,v 1.50 2023/12/16 20:32:22 tom Exp $
+.TH curs_kernel 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -197,12 +197,12 @@ of \fBcurs_set\fP \*(``is currently incorrect\*(''.
 This implementation gets it right, but it may be unwise to count
 on the correctness of the return value anywhere else.
 .PP
-Both ncurses and SVr4 will call \fBcurs_set\fP in \fBendwin\fP
+Both \fI\%ncurses\fP and SVr4 will call \fBcurs_set\fP in \fBendwin\fP
 if \fBcurs_set\fP
 has been called to make the cursor other than normal, i.e., either
 invisible or very visible.
-There is no way for ncurses to determine the initial cursor state to
-restore that.
+There is no way for \fI\%ncurses\fP to determine the initial cursor
+state to restore that.
 .SH PORTABILITY
 The \fIvirtual screen\fP functions \fBsetsyx\fP and \fBgetsyx\fP
 are not described in the XSI Curses standard, Issue 4.
@@ -213,7 +213,7 @@ as having return type int.
 This is misleading, as they are macros with no documented semantics
 for the return value.
 .PP
-If interrupted, ncurses restarts \fBnapms\fP.
+If interrupted, \fI\%ncurses\fP restarts \fBnapms\fP.
 That, and the limitation to 30 seconds,
 are different from other implementations.
 .SH SEE ALSO
index 0f52899c73080fffa1d92003a5bab48568079040..77d05ac344a767bf9ceafef65ccf671fc1dc8156 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_memleaks.3x,v 1.31 2023/11/11 11:46:43 tom Exp $
-.TH curs_memleaks 3X 2023-11-11 "ncurses 6.4" "Library calls"
+.\" $Id: curs_memleaks.3x,v 1.32 2023/12/16 20:32:22 tom Exp $
+.TH curs_memleaks 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -62,15 +62,16 @@ check for memory leaks in \fIcurses\fR
 \fBvoid _nc_free_tinfo(int \fIcode\fP);
 .fi
 .SH DESCRIPTION
-These functions are used to simplify analysis of memory leaks in the ncurses
-library.
+These functions are used to simplify analysis of memory leaks in the
+\fI\%ncurses\fP library.
 .PP
 Any implementation of curses must not free the memory associated with
 a screen, since (even after calling \fB\%endwin\fP(3X)), it must be available
 for use in the next call to \fB\%refresh\fP(3X).
 There are also chunks of memory held for performance reasons.
 That makes it hard to analyze curses applications for memory leaks.
-When using the specially configured debugging version of the ncurses library,
+When using the specially configured debugging version of the
+\fI\%ncurses\fP library,
 applications can call functions which free those chunks of memory,
 simplifying the process of memory-leak checking.
 .PP
@@ -78,10 +79,11 @@ Some of the functions are named with a \*(``_nc_\*('' prefix
 because they are not intended for use in the non-debugging library:
 .TP 5
 \fB\%_nc_freeall\fP
-This frees (almost) all of the memory allocated by ncurses.
+This frees (almost) all of the memory allocated by \fI\%ncurses\fP.
 .TP 5
 \fB\%_nc_free_and_exit\fP
-This frees the memory allocated by ncurses (like \fB\%_nc_freeall\fP),
+This frees the memory allocated by \fI\%ncurses\fP
+(like \fB\%_nc_freeall\fP),
 and exits the program.
 It is preferred over \fB\%_nc_freeall\fP since some of that memory
 may be required to keep the application running.
index b65403ae24cae7f2bb248f5d91cb2e73de31851c..64c8e0f535e8045358bc85339fa14c962798ada7 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_mouse.3x,v 1.81 2023/10/21 10:29:45 tom Exp $
-.TH curs_mouse 3X 2023-10-21 "ncurses 6.4" "Library calls"
+.\" $Id: curs_mouse.3x,v 1.82 2023/12/16 21:08:16 tom Exp $
+.TH curs_mouse 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -180,11 +180,11 @@ It is useful for determining what subset of
 the screen windows enclose the location of a mouse event.
 .SS wmouse_trafo
 The \fB\%wmouse_trafo\fP function transforms a given pair of coordinates
-from stdscr-relative coordinates
+from \fB\%stdscr\fP-relative coordinates
 to coordinates relative to the given window or vice versa.
-The resulting stdscr-relative coordinates are not always identical
-to window-relative coordinates due to the mechanism to reserve lines on top
-or bottom of the screen for other purposes
+The resulting \fB\%stdscr\fP-relative coordinates are not always
+identical to window-relative coordinates due to the mechanism to reserve
+lines on top or bottom of the screen for other purposes
 (see the \fB\%ripoffline\fP and \fB\%slk_init\fP(3X) calls, for example).
 .bP
 If the parameter \fIto_screen\fP is \fBTRUE\fP, the pointers
@@ -200,7 +200,7 @@ not inside the window, \fBFALSE\fP is returned.
 If \fIto_screen\fP is
 \fBFALSE\fP, the pointers \fIpY, pX\fP must reference window-relative
 coordinates.
-They are converted to stdscr-relative coordinates if the
+They are converted to \fB\%stdscr\fP-relative coordinates if the
 window \fIwin\fP encloses this point.
 In this case the function returns \fBTRUE\fP.
 .bP
@@ -212,7 +212,7 @@ successful.
 .SS mouse_trafo
 The \fB\%mouse_trafo\fP function performs the same translation
 as \fB\%wmouse_trafo\fP,
-using stdscr for \fIwin\fP.
+using \fB\%stdscr\fP for \fIwin\fP.
 .SS mouseinterval
 The \fB\%mouseinterval\fP function sets the maximum time (in thousands of a
 second) that can elapse between press and release events for them to
@@ -222,33 +222,36 @@ This function returns the previous interval value.
 Use \fB\%mouseinterval(\-1)\fP to obtain the interval without altering it.
 The default is one sixth of a second.
 .SS has_mouse
-The \fB\%has_mouse\fP function returns \fBTRUE\fP if the mouse driver has been
-successfully initialized.
+The \fB\%has_mouse\fP function returns \fBTRUE\fP if the mouse driver
+has been successfully initialized,
+and \fBFALSE\fP otherwise.
 .PP
 Note that mouse events will be ignored when input is in cooked mode, and will
 cause an error beep when cooked mode is being simulated in a window by a
 function such as \fB\%getstr\fP that expects a linefeed for input-loop
 termination.
 .SH RETURN VALUE
+\fB\%has_mouse\fP,
+\fB\%wenclose\fP,
+\fB\%mouse_trafo\fP,
+and
+\fB\%wmouse_trafo\fP
+return \fBTRUE\fP or \fBFALSE\fP as noted above.
+.PP
 \fB\%getmouse\fP and \fB\%ungetmouse\fP
-return the integer \fBERR\fP upon failure or \fBOK\fP
-upon successful completion:
-.RS 3
-.TP 5
-\fB\%getmouse\fP
-returns an error.
+return \fBERR\fP upon failure and \fBOK\fP upon success.
+.PP
+\fB\%getmouse\fP fails if:
 .bP
-If no mouse driver was initialized, or
-if the mask parameter is zero,
+no mouse driver was initialized,
 .bP
-It returns an error if a mouse event was detected which did not match the
-current \fImousemask\fP.
+the mask of reportable events is zero,
 .bP
-It also returns an error if no more events remain in the queue.
-.TP 5
-\fB\%ungetmouse\fP
-returns an error if the FIFO is full.
-.RE
+a mouse event was detected that does not match the mask,
+.bP
+or if no more events remain in the queue.
+.PP
+\fB\%ungetmouse\fP returns an error if the event queue is full.
 .PP
 \fB\%mousemask\fP
 returns the mask of reportable events.
@@ -257,74 +260,13 @@ returns the mask of reportable events.
 returns the previous interval value, unless
 the terminal was not initialized.
 In that case, it returns the maximum interval value (166).
-.PP
-\fB\%wenclose\fP and \fB\%wmouse_trafo\fP
-are boolean functions returning \fBTRUE\fP or \fBFALSE\fP depending
-on their test result.
-.SH PORTABILITY
-These calls were designed for \fIncurses\fP, and are not found in SVr4
-\fIcurses\fP, 4.4BSD \fIcurses\fP, or any other previous version of \fIcurses\fP.
-.PP
-SVr4 \fIcurses\fP had support for the mouse in a variant of \fBxterm\fP(1).
-It is mentioned in a few places, but with no supporting documentation:
-.bP
-the \*(``libcurses\*('' manual page lists functions for this feature
-which are prototyped in \fBcurses.h\fP:
-.PP
-.RS 8
-.EX
-extern int mouse_set(long int);
-extern int mouse_on(long int);
-extern int mouse_off(long int);
-extern int request_mouse_pos(void);
-extern int map_button(unsigned long);
-extern void wmouse_position(WINDOW *, int *, int *);
-extern unsigned long getmouse(void), getbmap(void);
-.EE
-.RE
-.bP
-the \*(``terminfo\*('' manual page lists capabilities for the feature
-.PP
-.RS 8
-.EX
-buttons           btns    BT       Number of buttons on the mouse
-get_mouse         getm    Gm       Curses should get button events
-key_mouse         kmous   Km       0631, Mouse event has occurred
-mouse_info        minfo   Mi       Mouse status information
-req_mouse_pos     reqmp   RQ       Request mouse position report
-.EE
-.RE
-.bP
-the interface made assumptions (as does \fIncurses\fP)
-about the escape sequences
-sent to and received from the terminal.
-.IP
-For instance
-the SVr4 \fIcurses\fP library used the \fB\%get_mouse\fP capability to tell the
-terminal which mouse button events it should send,
-passing the mouse-button bit-mask to the terminal.
-Also, it could ask the terminal
-where the mouse was using the \fB\%req_mouse_pos\fP capability.
-.IP
-Those features required a terminal which had been modified
-to work with \fIcurses\fP.
-They were not part of the X Consortium's xterm.
-.PP
-When developing the xterm mouse support for \fIncurses\fP in September 1995,
-Eric Raymond was uninterested in using the same interface due to its
-lack of documentation.
-Later, in 1998, Mark Hesseling provided support in
-PDCurses 2.3 using the SVr4 interface.
-PDCurses, however, does not use video terminals,
-making it unnecessary to be concerned about compatibility with the
-escape sequences.
-.PP
+.SH NOTES
 The feature macro \fB\%NCURSES_MOUSE_VERSION\fP is provided so the preprocessor
 can be used to test whether these features are present.
 If the interface is changed, the value of \fB\%NCURSES_MOUSE_VERSION\fP will be
 incremented.
 These values for \fB\%NCURSES_MOUSE_VERSION\fP may be
-specified when configuring \fIncurses\fP:
+specified when configuring \fI\%ncurses\fP:
 .RS 3
 .TP 3
 1
@@ -340,7 +282,7 @@ The mask uses 29 bits.
 The order of the \fB\%MEVENT\fP structure members is not guaranteed.
 Additional fields may be added to the structure in the future.
 .PP
-Under \fIncurses\fP, these calls are implemented using either
+Under \fI\%ncurses\fP, these calls are implemented using either
 xterm's built-in mouse-tracking API or
 platform-specific drivers including
 .RS 3
@@ -354,7 +296,7 @@ OS/2 EMX
 .PP
 If you are using an unsupported configuration,
 mouse events will not be visible to
-\fIncurses\fP (and the \fB\%mousemask\fP function will always
+\fI\%ncurses\fP (and the \fB\%mousemask\fP function will always
 return \fB0\fP).
 .PP
 If the terminfo entry contains a \fBXM\fP string,
@@ -384,6 +326,65 @@ They are distinct.
 For example, in xterm,
 wheel/scrolling mice send position reports as a sequence of
 presses of buttons 4 or 5 without matching button-releases.
+.SH PORTABILITY
+These calls were designed for \fI\%ncurses\fP,
+and are not found in SVr4 \fIcurses\fP,
+4.4BSD \fIcurses\fP, or any other previous version of \fIcurses\fP.
+.PP
+SVr4 \fIcurses\fP had support for the mouse in a variant of \fBxterm\fP(1).
+It is mentioned in a few places, but with no supporting documentation:
+.bP
+the \*(``libcurses\*('' manual page lists functions for this feature
+which are prototyped in \fBcurses.h\fP:
+.PP
+.RS 8
+.EX
+extern int mouse_set(long int);
+extern int mouse_on(long int);
+extern int mouse_off(long int);
+extern int request_mouse_pos(void);
+extern int map_button(unsigned long);
+extern void wmouse_position(WINDOW *, int *, int *);
+extern unsigned long getmouse(void), getbmap(void);
+.EE
+.RE
+.bP
+the \*(``terminfo\*('' manual page lists capabilities for the feature
+.PP
+.RS 8
+.EX
+buttons           btns    BT       Number of buttons on the mouse
+get_mouse         getm    Gm       Curses should get button events
+key_mouse         kmous   Km       0631, Mouse event has occurred
+mouse_info        minfo   Mi       Mouse status information
+req_mouse_pos     reqmp   RQ       Request mouse position report
+.EE
+.RE
+.bP
+the interface made assumptions (as does \fI\%ncurses\fP)
+about the escape sequences
+sent to and received from the terminal.
+.IP
+For instance
+the SVr4 \fIcurses\fP library used the \fB\%get_mouse\fP capability to tell the
+terminal which mouse button events it should send,
+passing the mouse-button bit mask to the terminal.
+Also, it could ask the terminal
+where the mouse was using the \fB\%req_mouse_pos\fP capability.
+.IP
+Those features required a terminal which had been modified
+to work with \fIcurses\fP.
+They were not part of the X Consortium's xterm.
+.PP
+When developing the xterm mouse support for \fI\%ncurses\fP in September
+1995,
+Eric Raymond was uninterested in using the same interface due to its
+lack of documentation.
+Later, in 1998, Mark Hesseling provided support in
+PDCurses 2.3 using the SVr4 interface.
+PDCurses, however, does not use video terminals,
+making it unnecessary to be concerned about compatibility with the
+escape sequences.
 .SH BUGS
 Mouse events from \fI\%xterm\fP are \fInot\fP ignored in cooked mode if
 they have been enabled by \fB\%mousemask\fP.
index d3d656a09ee75a0acf5f7ab8caed10b65c31d349..41c912edd4a4570d9e5b0744329d62a355bbecf6 100644 (file)
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_move.3x,v 1.32 2023/10/07 21:19:07 tom Exp $
-.TH curs_move 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_move.3x,v 1.33 2023/12/16 21:33:08 tom Exp $
+.TH curs_move 3X 2023-12-16 "ncurses 6.4" "Library calls"
+.ie \n(.g \{\
+.ds `` \(lq
+.ds '' \(rq
+.\}
+.el \{\
+.ie t .ds `` ``
+.el   .ds `` ""
+.ie t .ds '' ''
+.el   .ds '' ""
+.\}
+.
 .SH NAME
 \fB\%move\fP,
 \fB\%wmove\fP \-
@@ -48,9 +59,10 @@ until \fBrefresh\fP(3X) is called.
 The position specified is relative to the upper
 left-hand corner of the window, which is (0,0).
 .SH RETURN VALUE
-These routines return \fBERR\fP upon failure and \fBOK\fP (SVr4
-specifies only "an integer value other than \fBERR\fP") upon successful
-completion.
+These routines return the integer \fBERR\fP upon failure and an \fBOK\fP
+(SVr4 specifies only
+\*(``an integer value other than \fBERR\fP\*('')
+upon successful completion.
 .PP
 Specifically, they return an error
 if the window pointer is null, or
index 3eac44fafecf872dde07090312bfeab3a42a00f4..090b490e083d37ff6ac6db4340919d44fa0fda44 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_opaque.3x,v 1.40 2023/12/02 20:52:50 tom Exp $
-.TH curs_opaque 3X 2023-12-02 "ncurses 6.4" "Library calls"
+.\" $Id: curs_opaque.3x,v 1.41 2023/12/16 20:32:22 tom Exp $
+.TH curs_opaque 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -78,7 +78,7 @@ obtain \fIcurses\fR window properties
 \fBint wgetscrreg(const WINDOW *\fIwin\fP, int *\fItop\fP, int *\fIbottom\fP);
 .fi
 .SH DESCRIPTION
-\fIncurses\fP provides functions returning properties of a
+\fI\%ncurses\fP provides functions returning properties of a
 \fI\%WINDOW\fP structure,
 allowing it to be \*(``opaque\*('' if
 the application defines the \fB\%NCURSES_OPAQUE\fP preprocessor symbol.
@@ -146,12 +146,12 @@ completion.
 .SH RETURN VALUE
 These functions return \fBTRUE\fP or \fBFALSE\fP except as noted.
 .SH NOTES
-\fIncurses\fP provides both a C function and a preprocessor macro for
+\fI\%ncurses\fP provides both a C function and a preprocessor macro for
 each function documented in this page.
 .SH PORTABILITY
-These routines are specific to \fIncurses\fP.
+These routines are specific to \fI\%ncurses\fP.
 They were not supported on Version 7, BSD or System V implementations.
-It is recommended that any code depending on \fIncurses\fP extensions
+It is recommended that any code depending on \fI\%ncurses\fP extensions
 be conditioned using \fB\%NCURSES_VERSION\fP.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
index 2fa712752b8990bf8ded606b6f6a23b4645716f8..9c559fb5adb590630fdb8d8ddad1b69388d69692 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_outopts.3x,v 1.52 2023/11/25 14:08:05 tom Exp $
-.TH curs_outopts 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_outopts.3x,v 1.53 2023/12/16 20:32:22 tom Exp $
+.TH curs_outopts 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .de bP
 .ie n  .IP \(bu 4
 .el    .IP \(bu 2
@@ -169,8 +169,9 @@ emulators.
 .SH PORTABILITY
 These functions are described in the XSI Curses standard, Issue 4.
 .PP
-From the outset, ncurses used \fBnl\fP/\fBnonl\fP to control the conversion
-of newlines to carriage return/line-feed on output as well as input.
+From the outset,
+\fI\%ncurses\fP used \fBnl\fP/\fBnonl\fP to control the conversion of
+newlines to carriage return/line-feed on output as well as input.
 XSI Curses documents only the use of these functions for input.
 This difference arose from converting the \fIpcurses\fP source
 (which used \fBioctl\fP calls with the \fBsgttyb\fP structure)
@@ -179,18 +180,18 @@ In the former, both input and output were controlled via a single
 option \fBCRMOD\fP,
 while the latter separates these features.
 Because that conversion interferes with output optimization,
-\fBnl\fP/\fBnonl\fP were amended after ncurses 6.2
+\fBnl\fP/\fBnonl\fP were amended after \fI\%ncurses\fP 6.2
 to eliminate their effect on output.
 .PP
 Some historic curses implementations had, as an undocumented feature, the
 ability to do the equivalent of \fBclearok(..., 1)\fP by saying
 \fBtouchwin(stdscr)\fP or \fBclear(stdscr)\fP.
-This will not work under ncurses.
+This will not work under \fI\%ncurses\fP.
 .PP
 Earlier System V curses implementations specified that with \fBscrollok\fP
 enabled, any window modification triggering a scroll also forced a physical
 refresh.
-XSI Curses does not require this, and \fBncurses\fP avoids doing
+XSI Curses does not require this, and \fI\%ncurses\fP avoids doing
 it to perform better vertical-motion optimization at \fBwrefresh\fP
 time.
 .PP
index 422824b79c1ac698386e0d05a6255253e72737d2..c4e2125ece5f7562aae17e871b1e9325995fd95c 100644 (file)
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_overlay.3x,v 1.35 2023/11/25 11:29:34 tom Exp $
-.TH curs_overlay 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_overlay.3x,v 1.36 2023/12/16 21:32:51 tom Exp $
+.TH curs_overlay 3X 2023-12-16 "ncurses 6.4" "Library calls"
+.ie \n(.g \{\
+.ds `` \(lq
+.ds '' \(rq
+.\}
+.el \{\
+.ie t .ds `` ``
+.el   .ds `` ""
+.ie t .ds '' ''
+.el   .ds '' ""
+.\}
+.
 .SH NAME
 \fB\%overlay\fP,
 \fB\%overwrite\fP,
@@ -63,9 +74,10 @@ If the argument \fIoverlay\fP is \fBtrue\fP,
 then copying is non-destructive,
 as in \fBoverlay\fP.
 .SH RETURN VALUE
-Routines that return an integer return \fBERR\fP upon failure, and \fBOK\fP
-(SVr4 only specifies "an integer value other than \fBERR\fP") upon successful
-completion.
+These routines return the integer \fBERR\fP upon failure and an \fBOK\fP
+(SVr4 specifies only
+\*(``an integer value other than \fBERR\fP\*('')
+upon successful completion.
 .PP
 X/Open defines no error conditions.
 In this implementation,
index a20c1c369eb476522a7a41af0f3914690ae41b30..7c04ca0a18b49c6e09dd772a2a272182d27358e6 100644 (file)
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_pad.3x,v 1.49 2023/11/25 14:08:35 tom Exp $
-.TH curs_pad 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_pad.3x,v 1.50 2023/12/16 21:18:02 tom Exp $
+.TH curs_pad 3X 2023-12-16 "ncurses 6.4" "Library calls"
+.ie \n(.g \{\
+.ds `` \(lq
+.ds '' \(rq
+.\}
+.el \{\
+.ie t .ds `` ``
+.el   .ds `` ""
+.ie t .ds '' ''
+.el   .ds '' ""
+.\}
+.
 .de bP
 .ie n  .IP \(bu 4
 .el    .IP \(bu 2
@@ -57,16 +68,19 @@ create and display \fIcurses\fR pads
 .fi
 .SH DESCRIPTION
 .SS newpad
-The \fB\%newpad\fP routine creates and returns a pointer to a new pad data
-structure with the given number of lines, \fInlines\fP, and columns,
+\fB\%newpad\fP creates and returns a pointer to a new pad data structure
+with the given number of lines,
+\fInlines\fP,
+and columns,
 \fIncols\fP.
-A pad is like a window, except that it is not restricted by the
-screen size, and is not necessarily associated with a particular part of the
-screen.
-Pads can be used when a large window is needed, and only a part of the
-window will be on the screen at one time.
+A pad is like a window,
+except that it is not restricted by the screen size,
+and is not necessarily associated with a particular part of the screen.
+Pads can be used when a large window is needed,
+and only a part of the window will be on the screen at one time.
 Automatic refreshes of pads
-(e.g., from scrolling or echoing of input) do not occur.
+(as from scrolling or echoing of input)
+do not occur.
 .PP
 It is not valid to call \fB\%wrefresh\fP with a \fIpad\fP argument;
 call \fB\%prefresh\fP or \fB\%pnoutrefresh\fP instead.
@@ -126,14 +140,16 @@ It outputs one character to a pad and immediately refreshes the pad.
 It does this by a call to \fB\%wadd_wch\fP followed by a call
 to \fB\%prefresh\fP.
 .SH RETURN VALUE
-Routines that return an integer return \fBERR\fP upon failure and \fBOK\fP
-(SVr4 only specifies "an integer value other than \fBERR\fP") upon successful
-completion.
+Functions that return an integer return \fBERR\fP upon failure and
+\fBOK\fP
+(SVr4 specifies only
+\*(``an integer value other than \fBERR\fP\*('')
+upon successful completion.
 .PP
-Routines that return pointers return \fBNULL\fP on error, and set \fB\%errno\fP
-to \fB\%ENOMEM\fP.
+Functions that return pointers return \fBNULL\fP on error,
+and set \fB\%errno\fP to \fB\%ENOMEM\fP.
 .PP
-X/Open does not define any error conditions.
+X/Open Curses does not define any error conditions.
 In this implementation
 .RS 3
 .TP 5
@@ -155,7 +171,7 @@ if the window is not really a pad, and the associated call
 to \fB\%wecho_wchar\fP returns an error.
 .RE
 .SH NOTES
-Note that \fB\%pechochar\fP may be a macro.
+\fB\%pechochar\fP may be a macro.
 .SH PORTABILITY
 BSD \fIcurses\fP has no \fIpad\fP feature.
 .PP
@@ -181,8 +197,8 @@ The behavior of \fB\%subpad\fP if the parent window is not
 a pad is undocumented,
 and is not checked by the vendor Unix implementations:
 .bP
-SVr4 \fIcurses\fP sets a flag in the \fB\%WINDOW\fP structure in \fB\%newpad\fP
-which tells if the window is a \fIpad\fP.
+SVr4 \fIcurses\fP sets a flag in the \fI\%WINDOW\fP structure in
+\fB\%newpad\fP which tells if the window is a \fIpad\fP.
 .IP
 However, it uses this information only in
 \fB\%waddch\fP (to decide if it should call \fB\%wrefresh\fP) and
@@ -190,10 +206,12 @@ However, it uses this information only in
 and does not check in \fB\%wrefresh\fP to ensure that the pad
 is refreshed properly.
 .bP
-Solaris X/Open Curses checks if a window is a pad in \fB\%wnoutrefresh\fP,
+Solaris \fI\%xcurses\fP checks whether a window is a pad in
+\fB\%wnoutrefresh\fP,
 returning \fBERR\fP in that case.
 .IP
-However, it only sets the flag for subwindows if the parent window is a pad.
+However,
+it only sets the flag for subwindows if the parent window is a pad.
 Its \fB\%newpad\fP function does not set this information.
 Consequently, the check will never fail.
 .IP
@@ -202,7 +220,7 @@ though interestingly enough, a comment in the source code
 states that the lack of a check was an MKS extension.
 .bP
 NetBSD 7 \fIcurses\fP
-sets a flag in the \fB\%WINDOW\fP structure
+sets a flag in the \fI\%WINDOW\fP structure
 for \fB\%newpad\fP and \fB\%subpad\fP,
 using this to help with the distinction between \fB\%wnoutrefresh\fP
 and \fB\%pnoutrefresh\fP.
@@ -216,7 +234,7 @@ data was from a pad.
 .PP
 This implementation
 .bP
-sets a flag in the \fB\%WINDOW\fP structure
+sets a flag in the \fI\%WINDOW\fP structure
 for \fB\%newpad\fP and \fB\%subpad\fP,
 .bP
 allows a \fB\%subwin\fP or \fB\%derwin\fP call to succeed having a pad parent by
index 8c9211cc7df440e29b661b105449ab6a6ca78dba..16fac2dd6888eef9df1d6410f7d1e05cfd689df0 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_print.3x,v 1.34 2023/10/21 10:31:22 tom Exp $
-.TH curs_print 3X 2023-10-21 "ncurses 6.4" "Library calls"
+.\" $Id: curs_print.3x,v 1.35 2023/12/16 20:32:22 tom Exp $
+.TH curs_print 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .SH NAME
 \fB\%mcprint\fP \-
 write binary data to printer using \fIterminfo\fR capabilities
@@ -67,10 +67,11 @@ Couldn't allocate sufficient memory to buffer the printer write.
 When \fB\%mcprint\fP succeeds, it returns the number of characters actually
 sent to the printer.
 .SH PORTABILITY
-The \fB\%mcprint\fP call was designed for \fIncurses\fP, and is not found
-in SVr4 \fIcurses\fP, 4.4BSD \fIcurses\fP,
+The \fB\%mcprint\fP call was designed for \fI\%ncurses\fP,
+and is not found in SVr4 \fIcurses\fP,
+4.4BSD \fIcurses\fP,
 or any other previous version of \fIcurses\fP.
-It is recommended that any code depending on \fIncurses\fP extensions
+It is recommended that any code depending on \fI\%ncurses\fP extensions
 be conditioned using \fB\%NCURSES_VERSION\fP.
 .SH BUGS
 Padding in the
index e9f2f74f5ae5dbff786e263c46e57edf1c1be01b..ea3a6b5857ab20059842c83aa0bc16392d6831b3 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_printw.3x,v 1.43 2023/11/25 11:31:06 tom Exp $
-.TH curs_printw 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_printw.3x,v 1.45 2023/12/18 00:03:28 tom Exp $
+.TH curs_printw 3X 2023-12-17 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -51,7 +51,7 @@
 \fB\%mvwprintw\fP,
 \fB\%vwprintw\fP,
 \fB\%vw_printw\fP \-
-write formatted output to \fIcurses\fR windows
+write formatted output to a \fIcurses\fR window
 .SH SYNOPSIS
 .nf
 \fB#include <curses.h>
@@ -60,96 +60,142 @@ write formatted output to \fIcurses\fR windows
 \fBint wprintw(WINDOW *\fIwin\fP, const char *\fIfmt\fP, ...);
 \fBint mvprintw(int \fIy\fP, int \fIx\fP, const char *\fIfmt\fP, ...);
 \fBint mvwprintw(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, const char *\fIfmt\fP, ...);
+.PP
 \fBint vw_printw(WINDOW *\fIwin\fP, const char *\fIfmt\fP, va_list \fIvarglist\fP);
 .PP
 \fI/* obsolete */\fP
 \fBint vwprintw(WINDOW *\fIwin\fP, const char *\fIfmt\fP, va_list \fIvarglist\fP);
 .fi
 .SH DESCRIPTION
-The \fBprintw\fP, \fBwprintw\fP, \fBmvprintw\fP and \fBmvwprintw\fP
-routines are analogous to \fBprintf\fP [see \fBprintf\fP(3)].
-In
-effect, the string that would be output by \fBprintf\fP is output
-instead as though \fBwaddstr\fP were used on the given window.
+\fB\%printw\fP,
+\fB\%wprintw\fP,
+\fB\%mvprintw\fP,
+and
+\fB\%mvwprintw\fP
+are analogous to \fI\%printf\fP(3).
+In effect,
+the string that would be output by \fI\%printf\fP(3) is instead output
+as though \fB\%waddstr\fP(3X) were used with
+.I win
+(or
+.BR \%stdscr )
+as its first argument.
 .PP
-The \fBvwprintw\fP and \fBvw_printw\fP routines are analogous
-to \fBvprintf\fP [see \fBprintf\fP(3)]
-and perform a \fBwprintw\fP using a variable argument list.
-The third argument is a \fBva_list\fP, a pointer to a
-list of arguments, as defined in \fB<stdarg.h>\fP.
+\fB\%vwprintw\fP
+and
+\fB\%vw_printw\fP are analogous to \fI\%vprintf\fP(3),
+and perform a \fB\%wprintw\fP using a variable argument list.
+The third argument is a \fI\%va_list\fP,
+a pointer to a list of arguments,
+as defined in \fI\%stdarg.h\fP.
 .SH RETURN VALUE
-Routines that return an integer return \fBERR\fP upon failure and \fBOK\fP
-(SVr4 only specifies "an integer value other than \fBERR\fP") upon successful
-completion.
+These functions return
+.B ERR
+upon failure and
+.B OK
+upon success.
 .PP
-X/Open defines no error conditions.
-In this implementation,
-an error may be returned if it cannot allocate enough memory for the
-buffer used to format the results.
-It will return an error if the window pointer is null.
+In
+.I \%ncurses,
+failure occurs if the library cannot allocate enough memory for the
+buffer into which the output is formatted,
+or if the window pointer
+.I win
+is null.
 .PP
-Functions with a \*(``mv\*('' prefix first perform a cursor movement using
-\fBwmove\fP, and return an error if the position is outside the window,
-or if the window pointer is null.
+Functions with a \*(``mv\*('' prefix first perform a cursor movement
+using \fB\%wmove\fP,
+and fail if the position is outside the window.
+.SH NOTES
+No wide character counterpart functions are defined by the
+\*(``wide\*(''
+.I \%ncurses
+configuration nor by any standard.
+To format and write a wide-character string to a
+.I curses
+window,
+consider using \fI\%swprintf\fP(3) and \fB\%waddwstr\fP(3X) or similar.
 .SH PORTABILITY
-In this implementation, \fBvw_printw\fP and \fBvwprintw\fP are equivalent,
-to support legacy applications.
-However, the latter (\fBvwprintw\fP) is obsolete:
-.bP
-The XSI Curses standard, Issue 4 described these functions.
-The function
-\fBvwprintw\fP is marked TO BE WITHDRAWN, and is to be replaced by a function
-\fBvw_printw\fP using the \fB<stdarg.h>\fP interface.
+X/Open Curses, Issue 4, describes these functions.
+It specifies no error conditions for them.
+.PP
+.I \%ncurses
+defines \fB\%vw_printw\fP and \fB\%vwprintw\fP identically to support
+legacy applications.
+However,
+the latter is obsolete.
 .bP
-The Single Unix Specification, Version 2 states that
-\fBvw_printw\fP  is preferred to \fBvwprintw\fP since the latter requires
-including \fB<varargs.h>\fP, which
-cannot be used in the same file as \fB<stdarg.h>\fP.
-This implementation uses \fB<stdarg.h>\fP for both,
-because that header is included in \fB<curses.h\fP>.
+X/Open Curses, Issue 4, Version 2 (1996),
+marked \fB\%vwprintw\fP as requiring \fI\%varargs.h\fP and
+\*(``TO BE WITHDRAWN\*('',
+and specified \fB\%vw_printw\fP using the \fI\%stdarg.h\fP interface.
 .bP
-X/Open Curses, Issue 5 (December 2007) marked \fBvwprintw\fP (along with
+X/Open Curses, Issue 5, Draft 2
+(December 2007) marked \fBvwprintw\fP (along with
 \fBvwscanw\fP and the termcap interface) as withdrawn.
+After incorporating review comments,
+this became
+X/Open Curses, Issue 7 (2009).
+.bP
+.I \%ncurses
+provides \fB\%vwprintw\fP,
+but marks it as deprecated.
 .SH HISTORY
-While \fBprintw\fP was implemented in 4BSD,
-it was unused until 4.2BSD (which used it in games).
-That early version of curses was before the ANSI C standard.
-It did not use <varargs.h>, though that was available.
-In 1991 (a couple of years after SVr4 was generally available,
+While \fB\%printw\fP was implemented in 4BSD
+(November 1980),
+.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=4BSD/usr/src/lib/\
+.\"   libcurses/printw.c
+it was unused until 4.2BSD
+(August 1983),
+which employed it for games.
+That early version of
+.I curses
+preceded the ANSI C standard of 1989.
+It did not use \fI\%varargs.h\fP,
+though that had been available since Seventh Edition Unix (1979).
+.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=V7/usr/include/\
+.\"  varargs.h
+In 1991
+(a couple of years after SVr4 was generally available,
 and after the C standard was published),
 other developers updated the library,
-using <stdarg.h> internally in 4.4BSD curses.
+using \fI\%stdarg.h\fP internally in 4.4BSD
+.I curses.
 Even with this improvement,
-BSD curses did not use function prototypes (or even declare
-functions) in the <curses.h> header until 1992.
+BSD
+.I curses
+did not use function prototypes
+(nor even declare functions)
+in \fI\%curses.h\fP until 1992.
 .PP
-SVr2 documented
-\fBprintw\fP,
-\fBwprintw\fP
-tersely as \*(``printf on \fIstdscr\fP\*('' and
-tersely as \*(``printf on \fIwin\fP\*('', respectively.
+SVr2 (1984) documented \fB\%printw\fP and \fB\%wprintw\fP tersely as
+\*(``printf on \fB\%stdscr\fP\*('' and
+\*(``printf on \fIwin\fP\*('',
+respectively.
 .PP
-SVr3 added
-\fBmvprintw\fP, and
-\fBmvwprintw\fP, with a three-line summary saying that they were analogous
-to \fBprintf\fP(3),
-explaining that the string which would be output from \fBprintf\fP(3) would
-instead be output using \fBwaddstr\fP on the given window.
-SVr3 also added \fBvwprintw\fP, saying that the third parameter
-is a \fBva_list\fP, defined in <varargs.h>,
-and referring the reader to the manual pages for \fIvarargs\fP and
-\fBvprintf\fP for detailed descriptions.
+SVr3 (1987) added \fB\%mvprintw\fP and \fB\%mvwprintw\fP,
+with a three-line summary asserting that they were analogous to
+\fI\%printf\fP(3),
+explaining that the string that \fI\%printf\fP(3) would write to the
+standard output stream would instead be output using \fB\%waddstr\fP to
+the given window.
+SVr3 also implemented \fB\%vwprintw\fP,
+describing its third parameter as a \fI\%va_list\fP,
+defined in \fI\%varargs.h\fP,
+and referred the reader to the manual pages for \fI\%varargs\fP and
+\fI\%vprintf\fP for detailed descriptions.
 .PP
-SVr4 added no new variations of \fBprintw\fP,
-but provided for using <varargs.h> or <stdarg.h> to define the \fBva_list\fP
-type.
+SVr4 (1989) introduced no new variations of \fI\%printw\fP,
+but provided for using either \fI\%varargs.h\fP or \fI\%stdarg.h\fP to
+define the \fI\%va_list\fP type.
+.\" either header declares "va_list", but only one can be used
 .PP
-X/Open Curses added \fBvw_printw\fP to replace \fBvwprintw\fP,
-stating that its \fBva_list\fP definition requires <stdarg.h>.
+X/Open Curses, Issue 4 (1995),
+defined \fB\%vw_printw\fP to replace \fB\%vwprintw\fP,
+stating that its \fI\%va_list\fP type is defined in \fI\%stdarg.h\fP.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
 \fB\%curs_addstr\fP(3X),
 \fB\%curs_scanw\fP(3X),
-\fB\%curs_termcap\fP(3X),
 \fB\%printf\fP(3),
 \fB\%vprintf\fP(3)
index a32880df4895ababaf667fbd75357a9b2b9c96b3..9dc6f46cc4728d53e9a0548462e0a74e5b52331a 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_refresh.3x,v 1.38 2023/10/07 21:19:07 tom Exp $
-.TH curs_refresh 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_refresh.3x,v 1.39 2023/12/16 21:09:11 tom Exp $
+.TH curs_refresh 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -128,9 +128,10 @@ are corrupted and should be thrown away before anything is written over them.
 It touches the indicated lines (marking them changed).
 The routine \fBredrawwin\fP touches the entire window.
 .SH RETURN VALUE
-Routines that return an integer return \fBERR\fP upon failure, and \fBOK\fP
-(SVr4 only specifies "an integer value other than \fBERR\fP") upon successful
-completion.
+These routines return the integer \fBERR\fP upon failure and \fBOK\fP
+(SVr4 specifies only
+\*(``an integer value other than \fBERR\fP\*('')
+upon successful completion.
 .PP
 X/Open does not define any error conditions.
 In this implementation
index 47993a7ed7fae0f2cf0fe0b863e1df71dd76354d..333263d2cbd9b077cbd92d6adda5ee7abda4f285 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_scanw.3x,v 1.43 2023/11/25 11:31:06 tom Exp $
-.TH curs_scanw 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_scanw.3x,v 1.44 2023/12/17 22:50:40 tom Exp $
+.TH curs_scanw 3X 2023-12-17 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -67,109 +67,184 @@ read formatted input from a \fIcurses\fR window
 \fBint vwscanw(WINDOW *\fIwin\fP, const char *\fIfmt\fP, va_list \fIvarglist\fP);
 .fi
 .SH DESCRIPTION
-The \fBscanw\fP, \fBwscanw\fP and \fBmvscanw\fP routines are analogous to
-\fBscanf\fP [see \fBscanf\fP(3)].
-The effect of these routines is as though
-\fBwgetstr\fP were called on the window, and the resulting line used as input
-for \fBsscanf\fP(3).
-Fields which do not map to a variable in the \fIfmt\fP
-field are lost.
+\fB\%scanw\fP,
+\fB\%wscanw\fP,
+\fB\%mvscanw\fP,
+and
+\fB\%mvwscanw\fP
+are analogous to \fI\%scanf\fP(3).
+In effect,
+they call \fB\%wgetstr\fP(3X) with
+.I win
+(or
+.BR \%stdscr )
+as its first argument,
+then attempt conversion of the resulting string with \fI\%vsscanf\fP(3).
+Fields in the string that do not map to a variable in the \fIfmt\fP
+parameter are discarded.
 .PP
-The \fBvwscanw\fP and \fBvw_scanw\fP routines are analogous to \fBvscanf\fP(3).
-They perform a \fBwscanw\fP using a variable argument list.
-The third argument is a \fBva_list\fP,
-a pointer to a list of arguments, as defined in \fB<stdarg.h>\fP.
+\fB\%vwscanw\fP
+and
+\fB\%vw_scanw\fP are analogous to \fI\%vscanf\fP(3),
+and perform a \fB\%wscanw\fP using a variable argument list.
+The third argument is a \fI\%va_list\fP,
+a pointer to a list of arguments,
+as defined in \fI\%stdarg.h\fP.
 .SH RETURN VALUE
-\fBvwscanw\fP returns \fBERR\fP on failure and an integer equal to the
-number of fields scanned on success.
+These functions return
+.B ERR
+upon failure and otherwise a count of successful conversions;
+this quantity may be zero.
+.PP
+In
+.I \%ncurses,
+failure occurs if \fI\%vsscanf\fP(3) returns
+\fBEOF\fP,
+or if the window pointer
+.I win
+is null.
 .PP
-Applications may use the return value from the \fBscanw\fP, \fBwscanw\fP,
-\fBmvscanw\fP and \fBmvwscanw\fP routines to determine the number of fields
-which were mapped in the call.
+Functions with a \*(``mv\*('' prefix first perform a cursor movement
+using \fB\%wmove\fP,
+and fail if the position is outside the window.
+.SH NOTES
+No wide character counterpart functions are defined by the
+\*(``wide\*(''
+.I \%ncurses
+configuration nor by any standard.
+They are unnecessary:
+to retrieve and convert a wide-character string from a
+.I curses
+terminal keyboard,
+use these functions with the \fI\%scanf\fP(3) conversions \*(``%lc\*(''
+and \*(``%ls\*('' for wide characters and strings,
+respectively.
 .PP
-Functions with a \*(``mv\*('' prefix first perform a cursor movement using
-\fBwmove\fP, and return an error if the position is outside the window,
-or if the window pointer is null.
+.I \%ncurses
+implements \fI\%vsscanf\fP(3) internally if it is unavailable when the
+library is configured.
 .SH PORTABILITY
-In this implementation, \fBvw_scanw\fP and \fBvwscanw\fP are equivalent,
-to support legacy applications.
-However, the latter (\fBvwscanw\fP) is obsolete:
+X/Open Curses, Issue 4, describes these functions.
+It specifies no error conditions for them.
+.PP
+.I \%ncurses
+defines \fB\%vw_scanw\fP and \fB\%vwscanw\fP identically to support
+legacy applications.
+However,
+the latter is obsolete.
 .bP
-The XSI Curses standard, Issue 4 described these functions,
-noting that the function
-\fBvwscanw\fP is marked TO BE WITHDRAWN, and is to be replaced by a function
-\fBvw_scanw\fP using the \fB<stdarg.h>\fP interface.
+X/Open Curses, Issue 4, Version 2 (1996),
+marked \fB\%vwscanw\fP as requiring \fI\%varargs.h\fP and
+\*(``TO BE WITHDRAWN\*('',
+and specified \fB\%vw_scanw\fP using the \fI\%stdarg.h\fP interface.
 .bP
-The Single Unix Specification, Version 2 states that
-\fBvw_scanw\fP  is preferred to \fBvwscanw\fP since the latter requires
-including \fB<varargs.h>\fP, which
-cannot be used in the same file as \fB<stdarg.h>\fP.
-This implementation uses \fB<stdarg.h>\fP for both, because that header
-is included in \fB<curses.h\fP>.
+X/Open Curses, Issue 5, Draft 2
+(December 2007) marked \fB\%vwscanw\fP (along with
+\fB\%vwscanw\fP and the termcap interface) as withdrawn.
+After incorporating review comments,
+this became
+X/Open Curses, Issue 7 (2009).
 .bP
-X/Open Curses, Issue 5 (December 2007) marked \fBvwscanw\fP (along with
-\fBvwprintw\fP and the termcap interface) as withdrawn.
-.LP
-Both XSI and The Single Unix Specification, Version 2 state that these
-functions return \fBERR\fP or \fBOK\fP.
+.I \%ncurses
+provides \fB\%vwscanw\fP,
+but marks it as deprecated.
+.PP
+X/Open Curses Issues 4 and 7 both state that these functions return
+\fBERR\fP or \fBOK\fP.
+This is likely an erratum.
 .bP
-Since the underlying \fBscanf\fP(3) can return the number of items scanned,
-and the SVr4 code was documented to use this feature,
-this is probably an editing error which was introduced in XSI,
-rather than being done intentionally.
+Since the underlying \fI\%scanf\fP(3) returns the number of successful
+conversions,
+and SVr4
+.I curses
+was documented to use this feature,
+this may have been an editorial solecism introduced by X/Open,
+rather than an intentional change.
 .bP
-This implementation returns the number of items scanned,
-for compatibility with SVr4 curses.
-As of 2018, NetBSD curses also returns the number of items scanned.
-Both ncurses and NetBSD curses call \fBvsscanf\fP to scan the string,
+This implementation retains compatibility with SVr4
+.I curses.
+As of 2018,
+NetBSD
+.I curses
+also returns the number of successful conversions.
+Both
+.I \%ncurses\fP
+and NetBSD
+.I curses
+call \fI\%vsscanf\fP(3) to scan the string,
 which returns \fBEOF\fP on error.
 .bP
-Portable applications should only test if the return value is \fBERR\fP,
-since the \fBOK\fP value (zero) is likely to be misleading.
+Portable applications should test only if the return value is \fBERR\fP,
+and not compare it to \fBOK\fP,
+since that value (zero) might be misleading.
 .IP
-One possible way to get useful results would be to use a "%n" conversion
-at the end of the format string to ensure that something was processed.
+One portable way to get useful results would be to use a \*(``%n\*(''
+conversion at the end of the format string,
+and check the value of the corresponding variable to determine how many
+conversions succeeded.
 .SH HISTORY
-While \fBscanw\fP was implemented in 4BSD,
-none of the BSD releases used it until 4.4BSD (in a game).
-That early version of curses was before the ANSI C standard.
-It did not use <varargs.h>, though that was available.
-In 1991 (a couple of years after SVr4 was generally available,
+\fB\%scanw\fP was implemented in 4BSD
+(November 1980);
+.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=4BSD/usr/src/lib/\
+.\"  libcurses/scanw.c
+that early version of
+.I curses
+preceded the ANSI C standard of 1989.
+The function was unused in Berkeley distributions for over ten years,
+until 4.4BSD,
+which employed it in a game.
+The 4BSD \fB\%scanw\fP did not use \fI\%varargs.h\fP,
+though that had been available since Seventh Edition Unix (1979).
+.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=V7/usr/include/\
+.\"  varargs.h
+In 1991
+(a couple of years after SVr4 was generally available,
 and after the C standard was published),
 other developers updated the library,
-using <stdarg.h> internally in 4.4BSD curses.
+using \fI\%stdarg.h\fP internally in 4.4BSD
+.I curses.
 Even with this improvement,
-BSD curses did not use function prototypes (or even declare
-functions) in the <curses.h> header until 1992.
+BSD
+.I curses
+did not use function prototypes
+(nor even declare functions)
+in \fI\%curses.h\fP until 1992.
+.PP
+SVr2 (1984) documented \fB\%scanw\fP and \fB\%wscanw\fP tersely as
+\*(``scanf through \fB\%stdscr\fP\*('' and
+\*(``scanf through \fIwin\fP\*('',
+respectively.
+.PP
+SVr3 (1987) added
+\fB\%mvscanw\fP, and
+\fB\%mvwscanw\fP, stating
+.RS
 .PP
-SVr2 documented
-\fBscanw\fP,
-\fBwscanw\fP
-tersely as \*(``scanf through \fIstdscr\fP\*('' and
-tersely as \*(``scanf through \fIwin\fP\*('', respectively.
+These routines correspond to \fIscanf\fP(3S),
+as do their arguments and return values.
+\fB\%wgetstr\fP() is called on the window,
+and the resulting line is used as input for the scan.
+.RE
 .PP
-SVr3 added
-\fBmvscanw\fP, and
-\fBmvwscanw\fP, with a three-line summary saying that they were analogous
-to \fBscanf\fP(3),
-explaining that the string which would be output from \fBscanf\fP(3) would
-instead be output using \fBwaddstr\fP on the given window.
-SVr3 also added \fBvwscanw\fP, saying that the third parameter
-is a \fBva_list\fP, defined in <varargs.h>,
-and referring the reader to the manual pages for \fIvarargs\fP and
-\fBvprintf\fP for detailed descriptions.
-(Because the SVr3 documentation does not mention \fBvscanf\fP,
-that reference to \fBvprintf\fP may not be an error).
+SVr3 also implemented \fB\%vwscanw\fP,
+describing its third parameter as a \fI\%va_list\fP,
+defined in \fI\%varargs.h\fP,
+and referred the reader to the manual pages for \fI\%varargs\fP and
+\fI\%vprintf\fP for detailed descriptions.
+(Because the SVr3 documentation does not mention \fI\%vscanf\fP,
+the reference to \fI\%vprintf\fP might not be an error).
 .PP
-SVr4 added no new variations of \fBscanw\fP,
-but provided for using <varargs.h> or <stdarg.h> to define the \fBva_list\fP
-type.
+SVr4 (1989) introduced no new variations of \fI\%scanw\fP,
+but provided for using either \fI\%varargs.h\fP or \fI\%stdarg.h\fP to
+define the \fI\%va_list\fP type.
+.\" either header declares "va_list", but only one can be used
 .PP
-X/Open Curses added \fBvw_scanw\fP to replace \fBvwscanw\fP,
-stating that its \fBva_list\fP definition requires <stdarg.h>.
+X/Open Curses, Issue 4 (1995),
+defined \fI\%vw_scanw\fP to replace \fI\%vwscanw\fP,
+stating that its \fI\%va_list\fP type is defined in \fI\%stdarg.h\fP.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
 \fB\%curs_getstr\fP(3X),
 \fB\%curs_printw\fP(3X),
-\fB\%curs_termcap\fP(3X),
-\fB\%scanf\fP(3)
+\fB\%scanf\fP(3),
+\fB\%vscanf\fP(3)
index 1ef95559ba28723e134ab99a74f1f458bc56b116..ceb27fe0c8b364906ee13f3ca4d512877a2c5954 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_scr_dump.3x,v 1.35 2023/11/25 11:29:34 tom Exp $
-.TH curs_scr_dump 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_scr_dump.3x,v 1.36 2023/12/16 21:10:18 tom Exp $
+.TH curs_scr_dump 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -94,7 +94,7 @@ This can be thought of as a screen inheritance function.
 To read (write) a window from (to) a file, use the \fBgetwin\fP and
 \fBputwin\fP routines [see \fBcurs_util\fP(3X)].
 .SH RETURN VALUE
-All routines return the integer \fBERR\fP upon failure and \fBOK\fP
+These routines return the integer \fBERR\fP upon failure and \fBOK\fP
 upon success.
 .PP
 X/Open defines no error conditions.
@@ -107,8 +107,8 @@ These functions are described in the XSI Curses standard, Issue 4,
 which adds \fI\%const\fP qualifiers to the arguments.
 .PP
 The SVr4 docs merely say under \fBscr_init\fP that the dump data is also
-considered invalid "if the time-stamp of the tty is old" but do not define
-\*(``old\*(''.
+considered invalid \*(``if the time-stamp of the tty is old\*('' but do
+not define \*(``old\*(''.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
 \fB\%curs_initscr\fP(3X),
index 3f3ce7119a096d8b7371771c492ba6dfac265bfe..598838031801ab7e6a72f56941ea8700ddeffa85 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_scroll.3x,v 1.35 2023/10/07 21:19:07 tom Exp $
-.TH curs_scroll 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_scroll.3x,v 1.36 2023/12/16 22:52:35 tom Exp $
+.TH curs_scroll 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
 .ie t .ds '' ''
 .el   .ds '' ""
 .\}
+.
+.de bP
+.ie n  .IP \(bu 4
+.el    .IP \(bu 2
+..
 .SH NAME
 \fB\%scroll\fP,
 \fB\%scrl\fP,
@@ -54,46 +59,78 @@ scroll a \fIcurses\fR window
 \fBint wscrl(WINDOW *\fIwin\fP, int \fIn\fP);
 .fi
 .SH DESCRIPTION
-The \fBscroll\fP routine scrolls the window up one line.
-This involves moving
-the lines in the window data structure.
-As an optimization, if the scrolling
-region of the window is the entire screen,
-the \fIphysical screen\fP may be scrolled at the same time.
+\fBscroll\fP scrolls the given window up one line.
+That is,
+every visible line we might number
+.I i
+becomes line
+.IR i \-1.
+The text of the top line in the window disappears and the bottom line
+is populated with blank characters;
+see \fB\%bkgd\fP(3X) or \fB\%bkgrnd\fP(3X).
+As an optimization,
+if the scrolling region of the window is the entire screen,
+the physical screen may be scrolled at the same time;
+see \fB\%curscr\fP(3X).
 .PP
-For positive \fIn\fP, the \fBscrl\fP and \fBwscrl\fP routines scroll the
-window up \fIn\fP lines (line \fIi\fP+\fIn\fP becomes \fIi\fP); otherwise
-scroll the window down \fIn\fP lines.
-This involves moving the lines in the
-window character image structure.
-The current cursor position is not changed.
+\fB\%scrl\fP and \fB\%wscrl\fP scroll
+.B \%stdscr
+or the specified window up or down depending on the sign of
+.I n.
+.bP
+For positive
+.I n,
+line \fIi\fP+\fIn\fP becomes \fIi\fP (scrolling up);
+.bP
+for negative
+.I n,
+line \fIi\fP-\fIn\fP becomes \fIi\fP (scrolling down).
 .PP
-For these functions to work, scrolling must be enabled via \fBscrollok\fP(3X).
-.SH RETURN VALUE
-These routines return \fBERR\fP upon failure, and \fBOK\fP (SVr4 only specifies
-"an integer value other than \fBERR\fP") upon successful completion.
+The cursor does not move.
+These functions perform no operation unless scrolling is enabled for the
+window via \fB\%scrollok\fP(3X).
+.SH "RETURN VALUE"
+These functions return
+.B ERR
+upon failure and
+.B OK
+upon success.
 .PP
-X/Open defines no error conditions.
-.PP
-This implementation returns an error
-if the window pointer is null, or
-if scrolling is not enabled in the window, e.g., with \fBscrollok\fP(3X).
+.I \%ncurses
+returns \fBERR\fP if scrolling is not enabled in the window,
+for example with \fB\%scrollok\fP(3X),
+or if the
+.I \%WINDOW
+pointer is null.
 .SH NOTES
-Note that \fBscrl\fP and \fBscroll\fP may be macros.
+Unusually,
+there is no \fB\%wscroll\fP function;
+\fBscroll\fP behaves as one would expect \fB\%wscroll\fP to,
+accepting a \fI\%WINDOW\fP pointer argument.
+.PP
+\fB\%scrl\fP and \fB\%scroll\fP may be implemented as macros.
+.SH PORTABILITY
+X/Open Curses, Issue 4, describes these functions.
+It defines no error conditions.
 .PP
-The SVr4 documentation says that the optimization of physically scrolling
-immediately if the scroll region is the entire screen \*(``is\*('' performed,
+SVr4 specifies only
+\*(``an integer value other than \fBERR\fP\*('' as a successful return
+value.
+.PP
+SVr4 indicates that the optimization of physically scrolling immediately
+if the scroll region is the entire screen \*(``is\*('' performed,
 not \*(``may be\*('' performed.
-This implementation deliberately does not guarantee
-that this will occur, to leave open the possibility of smarter
-optimization of multiple scroll actions on the next update.
+.I \%ncurses
+deliberately does not guarantee that this will occur,
+to leave open the possibility of smarter optimization of multiple scroll
+actions on the next update.
 .PP
-Neither the SVr4 nor the XSI documentation specify whether the current
-attribute or
-current color-pair of blanks generated by the scroll function is zeroed.
-Under this implementation it is.
-.SH PORTABILITY
-The XSI Curses standard, Issue 4 describes these functions.
+Neither SVr4
+.I curses
+nor X/Open Curses specify whether the current attribute or current color
+pair of blanks generated by the scroll function are zeroed.
+.I \%ncurses
+does so.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
 \fB\%curs_outopts\fP(3X)
index 550005c885290805c8a2a8dfeae6e2e106f95f5f..e1d39b2d34bd8564d076e5ccb13fdaf45a6538b7 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_slk.3x,v 1.66 2023/11/25 14:31:07 tom Exp $
-.TH curs_slk 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_slk.3x,v 1.67 2023/12/16 21:18:45 tom Exp $
+.TH curs_slk 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -70,8 +70,8 @@
 .PP
 \fBint slk_init(int \fIfmt\fP);
 .PP
-\fBint slk_set(int \fIlabnum\fP, const char *\fIlabel\fP, int \fIfmt\fP);
-\fBint slk_wset(int \fIlabnum\fP, const wchar_t *\fIlabel\fP, int \fIfmt\fP);
+\fBint slk_set(int \fIlabnum\fP, const char *\fIlabel\fP, int \fIalign\fP);
+\fBint slk_wset(int \fIlabnum\fP, const wchar_t *\fIlabel\fP, int \fIalign\fP);
 .PP
 \fBchar *slk_label(int \fIlabnum\fP);
 .PP
@@ -84,9 +84,9 @@
 \fBint slk_attron(const chtype \fIattrs\fP);
 \fBint slk_attroff(const chtype \fIattrs\fP);
 \fBint slk_attrset(const chtype \fIattrs\fP);
-\fBint slk_attr_on(attr_t \fIattrs\fP, void\fIopts\fP);
-\fBint slk_attr_off(const attr_t \fIattrs\fP, void * \fIopts\fP);
-\fBint slk_attr_set(const attr_t \fIattrs\fP, short \fIpair\fP, void* \fIopts\fP);
+\fBint slk_attr_on(attr_t \fIattrs\fP, void *\fIopts\fP);
+\fBint slk_attr_off(const attr_t \fIattrs\fP, void *\fIopts\fP);
+\fBint slk_attr_set(const attr_t \fIattrs\fP, short \fIpair\fP, void*\fIopts\fP);
 \fI/* extension */
 \fBattr_t slk_attr(void);
 .PP
 \fBint extended_slk_color(int \fIpair\fP);
 .fi
 .SH DESCRIPTION
-The \fBslk\fP* functions manipulate the set
-of soft function-key labels that exist on many terminals.
+These functions manipulate the soft function key labels that some
+hardware terminals support.
 For those terminals that do not have soft labels,
-\fIcurses\fP takes over the bottom line of \fB\%stdscr\fP, reducing the size of
-\fB\%stdscr\fP and the variable \fBLINES\fP.
-\fIcurses\fP standardizes on eight
-labels of up to eight characters each.
-In addition to this, the \fIncurses\fP
-implementation supports a mode where it simulates 12 labels of up to five
-characters each.
-This is useful for PC-like enduser devices.
-\fIncurses\fP simulates this mode by taking over up to two lines at
+\fIcurses\fP takes over the bottom line of \fB\%stdscr\fP,
+reducing its vertical size and the value of \fBLINES\fP by one.
+By default,
+\fIcurses\fP uses eight labels of up to eight characters each.
+.PP
+\fI\%ncurses\fP
+furthermore supports a mode comprising twelve labels of up to five
+characters each,
+following a convention associated with the IBM PC/AT keyboard.
+\fI\%ncurses\fP simulates this mode by taking over up to two lines at
 the bottom of the screen;
 it does not try to use any hardware support for this
 mode.
 .SS Initialization
-The \fB\%slk_init\fP routine must be called
-before \fB\%initscr\fP or \fB\%newterm\fP
-is called.
+\fB\%slk_init\fP must be called before \fB\%initscr\fP or
+\fB\%newterm\fP.
 If \fB\%initscr\fP eventually uses a line from \fB\%stdscr\fP to
 emulate the soft labels,
-then \fIfmt\fP determines how the labels are arranged on the screen:
-.RS 3
+then \fIfmt\fP determines how the labels are arranged on the screen.
 .TP 3
 .B 0
 indicates a 3\-2\-3 arrangement of
@@ -131,15 +130,16 @@ indicates the PC-like 4\-4\-4 mode.
 .TP 3
 .B 3
 is again the PC-like 4\-4\-4 mode,
-but in addition an index line is generated, helping the user to
-identify the key numbers easily.
-.RE
+but in addition an index line is generated,
+helping the user to associate each label with its numbered function key.
+\fBLINES\fP and the vertical size of \fB\%stdscr\fP are further reduced.
 .SS Labels
-The \fB\%slk_set\fP routine
-(and the \fB\%slk_wset\fP routine for the wide-character library)
-has three parameters:
-.RS 3
-.TP 5
+Populate the labels with normal strings
+(\fB\%slk_set\fP)
+or wide-character strings
+(\fB\%slk_wset\fP).
+Each function takes three parameters.
+.TP 8 \" "labnum" + 2n
 .I labnum
 is the label number, from \fB1\fP to \fB8\fP
 (12 if \fIfmt\fP in \fB\%slk_init\fP is \fB2\fP or \fB3\fP);
@@ -149,20 +149,30 @@ is be the string to put on the label,
 up to eight
 (five if \fIfmt\fP in \fB\%slk_init\fP is \fB2\fP or \fB3\fP)
 characters in length.
-A null string or a null pointer sets up a blank label.
+A empty string or a null pointer sets up a blank label.
 .TP
-.I fmt
-is either
-\fB0\fP, \fB1\fP, or \fB2\fP, indicating whether the label is to be
-left-justified, centered, or right-justified, respectively, within the
-label.
-.RE
+.I align
+is
+.BR 0 ,
+.BR 1 ,
+or
+.BR 2 ,
+aligning
+.I label
+to the left,
+center,
+or right,
+respectively,
+within the 8 (5) character cells housing it.
 .PP
-The \fB\%slk_label\fP routine returns the current label for label number
-\fIlabnum\fP, with leading and trailing blanks stripped.
-.SS Screen updates
-The \fB\%slk_refresh\fP and \fB\%slk_noutrefresh\fP routines correspond to
-the \fB\%wrefresh\fP and \fB\%wnoutrefresh\fP routines.
+\fB\%slk_label\fP obtains the string assigned to label number
+\fIlabnum\fP,
+with any leading and trailing blanks stripped.
+.SS "Screen Updates"
+\fB\%slk_refresh\fP and \fB\%slk_noutrefresh\fP affect the soft key
+label lines as \fB\%wrefresh\fP and \fB\%wnoutrefresh\fP do the
+.I curses
+window.
 .PP
 The \fB\%slk_clear\fP routine clears the soft labels from the screen.
 .PP
@@ -171,31 +181,46 @@ after a \fB\%slk_clear\fP has been performed.
 .PP
 The \fB\%slk_touch\fP routine forces all the soft labels to be output
 the next time a \fB\%slk_noutrefresh\fP is performed.
-.SS Video attributes
+.SS "Video Attributes"
 The
-\fB\%slk_attron\fP, \fB\%slk_attrset\fP, \fB\%slk_attroff\fP and \fB\%slk_attr\fP
+\fB\%slk_attron\fP,
+\fB\%slk_attrset\fP,
+\fB\%slk_attroff\fP,
+and
+\fB\%slk_attr\fP
 routines correspond to
-\fB\%attron\fP, \fB\%attrset\fP, \fB\%attroff\fP and \fB\%attr_get\fP, respectively.
-They have an effect only if soft labels are simulated on the bottom line of
-the screen.
-The default highlight for soft keys is A_STANDOUT (as in
-System V \fIcurses\fP, which does not document this fact).
+\fB\%attron\fP,
+\fB\%attrset\fP,
+\fB\%attroff\fP,
+and
+\fB\%attr_get\fP,
+respectively.
+They have an effect only if soft labels are simulated on the bottom line
+of the screen.
+The default highlight for soft key labels is \fB\%A_STANDOUT\fP
+(as in System\ V \fIcurses\fP,
+which does not document this fact).
 .SS Colors
 The \fB\%slk_color\fP routine corresponds to \fB\%color_set\fP.
 It has an effect only
 if soft labels are simulated on the bottom line of the screen.
 .PP
 Because \fB\%slk_color\fP accepts
-only \fBshort\fP (signed 16-bit integer) values,
+only \fIshort\fP
+(signed 16-bit integer)
+values,
 this implementation provides
-\fB\%extended_slk_color\fP which accepts an integer value, e.g., 32-bits.
-.
+\fB\%extended_slk_color\fP,
+which accepts an \fIint\fP value of at least 32 bits.
 .SH RETURN VALUE
-These routines return \fBERR\fP upon failure
-and \fBOK\fP (SVr4 specifies only "an integer value other than \fBERR\fP")
+Routines that return an integer return \fBERR\fP upon failure and
+\fBOK\fP
+(SVr4 specifies only
+\*(``an integer value other than \fBERR\fP\*('')
 upon successful completion.
 .PP
-X/Open defines no error conditions.
+X/Open Curses defines no error conditions.
+.PP
 In this implementation
 .RS 3
 .TP 5
@@ -238,32 +263,41 @@ memory for the labels cannot be allocated.
 Most applications would use \fB\%slk_noutrefresh\fP because a
 \fB\%wrefresh\fP is likely to follow soon.
 .SH EXTENSIONS
-X/Open \fIcurses\fP documents the \fIopts\fP argument
+X/Open Curses documents the \fIopts\fP argument
 as reserved for future use,
 saying that it must be null.
 This implementation
-uses that parameter in ABI 6 for the functions which have a color-pair
+uses that parameter in ABI 6 for the functions which have a color pair
 parameter to support extended color pairs.
 .PP
-For  functions  which modify the color, e.g., \fB\%slk_attr_set\fP,
-if \fIopts\fP is set it is treated as a pointer to \fBint\fP,
-and used to  set  the  color pair instead of the \fBshort\fP pair parameter.
+For functions which modify the color,
+e.g.,
+\fB\%slk_attr_set\fP,
+if \fIopts\fP is set it is treated as a pointer to \fIint\fP,
+and used to set the color pair instead of the \fIshort\fP pair
+parameter.
 .SH PORTABILITY
-The XSI \fIcurses\fP standard, Issue 4, described the soft-key functions,
+X/Open Curses, Issue 4, describes these functions,
 with some differences from SVr4 \fIcurses\fP:
 .bP
-It added functions like the SVr4
-attribute-manipulation functions \fB\%slk_attron\fP,
-\fB\%slk_attroff\fP, \fB\%slk_attrset\fP,
-but which use \fBattr_t\fP parameters (rather than \fB\%chtype\fP),
+X/Open added functions like the SVr4 attribute-manipulation functions
+\fB\%slk_attron\fP,
+\fB\%slk_attroff\fP,
+and
+\fB\%slk_attrset\fP,
+but which use \fI\%attr_t\fP parameters
+(rather than \fI\%chtype\fP),
 along with a reserved \fIopts\fP parameter.
 .IP
-Two of these new functions (unlike the SVr4 functions) have no provision
-for color: \fB\%slk_attr_on\fP and \fB\%slk_attr_off\fP.
+Two of these new functions
+(unlike the SVr4 functions)
+have no provision for color:
+\fB\%slk_attr_on\fP and \fB\%slk_attr_off\fP.
 .IP
-The third function \%(\fBslk_attr_set\fP) has a color-pair parameter.
+The third function \%(\fBslk_attr_set\fP) has a color pair parameter.
 .bP
-It added \fBconst\fP qualifiers to parameters (unnecessarily), and
+It added \fIconst\fP qualifiers to parameters (unnecessarily),
+and
 .bP
 It added \fB\%slk_color\fP.
 .PP
@@ -300,18 +334,18 @@ it copies the \fIng\fP elements of the group of soft-keys, up to 16.
 If there are more than 16 elements, \fB\%slk_start\fP returns an error.
 .bP
 The format codes \fB2\fP and \fB3\fP for \fB\%slk_init\fP
-were added by \fIncurses\fP in 1996.
+were added by \fI\%ncurses\fP in 1996.
 PDCurses 2.4 added this feature in 2001.
 .PP
-The function \fB\%slk_attr\fP was added by \fIncurses\fP in 1996.
+The function \fB\%slk_attr\fP was added by \fI\%ncurses\fP in 1996.
 .PP
-X/Open \fIcurses\fP does not specify a limit for the number of colors and
+X/Open Curses does not specify a limit for the number of colors and
 color pairs which a terminal can support.
-However, in its use of \fBshort\fP for the parameters,
+However, in its use of \fIshort\fP for the parameters,
 it carries over SVr4's implementation detail for the compiled
 terminfo database, which uses signed 16-bit numbers.
 This implementation provides extended versions of those functions
-which use \fBint\fP parameters,
+which use \fIint\fP parameters,
 allowing applications to use larger color- and pair-numbers.
 .SH HISTORY
 SVr3 introduced these functions:
@@ -330,7 +364,7 @@ SVr4 added these functions:
   \fBslk_attrset\fP
   \fBslk_start\fP
 .PP
-X/Open \fIcurses\fP added these:
+X/Open Curses added these:
   \fBslk_attr_off\fP
   \fBslk_attr_on\fP
   \fBslk_attr_set\fP
index 1c075cd082279b8356eff8b0ee063f397f265e91..730ce37c6df981e1b5d2e1aff9d25197933fc74d 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_sp_funcs.3x,v 1.44 2023/11/25 15:48:03 tom Exp $
-.TH curs_sp_funcs 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_sp_funcs.3x,v 1.45 2023/12/16 20:32:22 tom Exp $
+.TH curs_sp_funcs 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
 .SH DESCRIPTION
 This implementation can be configured to provide a set of functions which
 improve the ability to manage multiple screens.
-This feature can be added to any of the configurations supported by ncurses;
+This feature can be added to any of the configurations supported by
+\fI\%ncurses\fP;
 it adds new entrypoints
 without changing the meaning of any of the existing ones.
 .\" ***************************************************************************
@@ -273,9 +274,9 @@ NCURSES_OUTC
 This is a function-pointer type used for the cases where a function passes
 characters to the output stream, e.g., \fBvidputs\fP(3X).
 .SH PORTABILITY
-These routines are specific to ncurses.
+These routines are specific to \fI\%ncurses\fP.
 They were not supported on Version 7, BSD or System V implementations.
-It is recommended that any code depending on ncurses extensions
+It is recommended that any code depending on \fI\%ncurses\fP extensions
 be conditioned using \fINCURSES_SP_FUNCS\fP.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
index 09e3384ae879a62e0c8f8269c035e1b2b08a8887..657c833557f9f2e696d0bce876811734ec004828 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_termcap.3x,v 1.74 2023/12/02 20:49:04 tom Exp $
-.TH curs_termcap 3X 2023-12-02 "ncurses 6.4" "Library calls"
+.\" $Id: curs_termcap.3x,v 1.76 2023/12/18 00:22:30 tom Exp $
+.TH curs_termcap 3X 2023-12-17 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
 \fB#include <curses.h>
 \fB#include <term.h>
 .PP
-\fBextern char PC;
-\fBextern char * UP;
-\fBextern char * BC;
-\fBextern @NCURSES_OSPEED@ ospeed;
+\fBchar PC;
+\fBchar * UP;
+\fBchar * BC;
+\fB@NCURSES_OSPEED@ ospeed;
 .PP
 \fBint tgetent(char *\fIbp\fP, const char *\fIname\fP);
 \fBint tgetflag(const char *\fIid\fP);
 \fBint tputs(const char *\fIstr\fP, int \fIaffcnt\fP, int (*\fIputc\fP)(int));
 .fi
 .SH DESCRIPTION
-These routines are included as a conversion aid for programs that use
-the \fItermcap\fP library.
-Their parameters are the same, but the
-routines are emulated using the \fIterminfo\fP database.
-Thus, they
-can only be used to query the capabilities of entries for which a
-terminfo entry has been compiled.
+.I \%ncurses
+provides the foregoing variables and functions as a compatibility layer
+for programs that use the \fItermcap\fP library.
+The API is the same,
+but behavior is emulated using the \fI\%term\%info\fP database.
+Thus,
+it can be used only to query the capabilities of terminal database
+entries for which a \fI\%term\%info\fP entry has been compiled.
 .SS Initialization
-The \fBtgetent\fP routine loads the entry for \fIname\fP.
+\fB\%tgetent\fP loads the terminal database entry for \fIname\fP;
+see \fBterm\fP(7).
+This must be done before calling any of the other functions.
 It returns:
 .RS 3
-.TP 3
+.TP 4
 1
 on success,
-.TP 3
+.TP 4
 0
 if there is no such entry
-(or that it is a generic type, having too little information for curses
-applications to run), and
-.TP 3
+(or if the matching entry describes a generic terminal,
+having too little information for
+.I curses
+applications to run),
+and
+.TP 4
 \-1
-if the terminfo database could not be found.
+if the \fI\%term\%info\fP database could not be found.
 .RE
 .PP
-This differs from the \fItermcap\fP library in two ways:
+This implementation differs from those of historical \fItermcap\fP
+libraries.
 .RS 3
 .bP
-The emulation ignores the buffer pointer \fIbp\fP.
-The \fItermcap\fP library would store a copy of the terminal
+.I \%ncurses
+ignores the buffer pointer \fIbp\fP,
+as do other \fItermcap\fP implementations conforming to portions of
+X/Open Curses now withdrawn.
+The BSD \fItermcap\fP library would store a copy of the terminal type
 description in the area referenced by this pointer.
-However, ncurses stores its terminal descriptions in compiled
-binary form, which is not the same thing.
+\fI\%ncurses\fP stores terminal type descriptions in compiled form,
+which is not the same thing.
 .bP
-There is a difference in return codes.
-The \fItermcap\fP library does not check if the terminal
-description is marked with the \fIgeneric\fP capability,
-or if the terminal description has cursor-addressing.
+The meanings of the return values differ.
+The BSD \fItermcap\fP library does not check whether the terminal type
+description is marked with the
+.B gn
+.RB ( \%generic )
+capability,
+nor whether the terminal type description supports an addressable
+cursor,
+a property essential for any \fIcurses\fP implementation to operate.
 .RE
-.SS Capability Values
-The \fBtgetflag\fP routine gets the boolean entry for \fIid\fP,
+.SS "Retrieving Capability Values"
+\fB\%tgetflag\fP reports the Boolean entry for \fIid\fP,
 or zero if it is not available.
 .PP
-The \fBtgetnum\fP routine gets the numeric entry for \fIid\fP,
+\fB\%tgetnum\fP obtains the numeric entry for \fIid\fP,
 or \-1 if it is not available.
 .PP
-The \fBtgetstr\fP routine returns the string entry for \fIid\fP,
-or zero if it is not available.
-Use \fBtputs\fP to output the returned string.
-The \fIarea\fP parameter is used as follows:
+\fB\%tgetstr\fP returns the string entry for \fIid\fP,
+or
+.B NULL
+if it is not available.
+Use \fB\%tputs\fP to output the string returned.
+The
+.I area
+parameter is used as follows.
 .RS 3
 .bP
 It is assumed to be the address of a pointer to a buffer managed by the
 calling application.
 .bP
-However, ncurses checks to ensure that \fBarea\fP is not NULL,
-and also that the resulting buffer pointer is not NULL.
-If either check fails, the \fIarea\fP parameter is ignored.
+However,
+\fI\%ncurses\fP checks to ensure that
+.I area
+is not
+.BR NULL ,
+and also that the resulting buffer pointer is not
+.BR NULL .
+If either check fails,
+.I area
+is ignored.
 .bP
-If the checks succeed, ncurses also copies the return value to
-the buffer pointed to by \fIarea\fP,
-and the \fIarea\fP value will be updated to point past the null ending
-this value.
+If the checks succeed,
+\fI\%ncurses\fP also copies the return value to the buffer pointed to by
+\fIarea\fP,
+and the library updates
+.I area
+to point past the null character terminating this value.
 .bP
-The return value itself is an address in the terminal description which
-is loaded into memory.
+The return value itself is an address in the terminal type description
+loaded into memory.
 .RE
-.PP
-Only the first two characters of the \fBid\fP parameter of
-\fBtgetflag\fP,
-\fBtgetnum\fP and
-\fBtgetstr\fP are compared in lookups.
-.SS Formatting Capabilities
-The \fBtgoto\fP routine expands the given capability using the parameters.
+.SS "Applying String Capabilities"
+String capabilities can be parameterized;
+see subsection \*(``Parameterized Strings\*('' in  \fB\%terminfo\fP(5).
+\fB\%tgoto\fP applies its second and third arguments to the parametric
+placeholders in the capability stored in the first argument.
 .bP
-Because the capability may have padding characters,
-the output of \fBtgoto\fP should be passed to \fBtputs\fP
-rather than some other output function such as \fBprintf\fP(3).
+The capability may contain padding specifications;
+see subsection \*(``Delays and Padding\*('' of \fB\%terminfo\fP(5).
+The output of \fB\%tgoto\fP should thus be passed to \fB\%tputs\fP
+rather than some other output function such as \fI\%printf\fP(3).
 .bP
-While \fBtgoto\fP is assumed to be used for the two-parameter
+While \fB\%tgoto\fP is assumed to be used for the two-parameter
 cursor positioning capability,
-termcap applications also use it for single-parameter capabilities.
+\fItermcap\fP applications also use it for single-parameter
+capabilities.
 .IP
-Doing this shows a quirk in \fBtgoto\fP: most hardware
-terminals use cursor addressing with \fIrow\fP first,
-but the original developers of the termcap interface chose to
-put the \fIcolumn\fP parameter first.
-The \fBtgoto\fP function swaps the order of parameters.
-It does this also for calls requiring only a single parameter.
-In that case, the first parameter is merely a placeholder.
+Doing so reveals a quirk in \fB\%tgoto\fP:
+most hardware terminals use cursor addressing with \fIrow\fP first,
+but the original developers of the \fItermcap\fP interface chose to
+put the \fIcol\fP (column) parameter first.
+The \fB\%tgoto\fP function swaps the order of parameters.
+It does this even for calls requiring only a single parameter.
+In that case,
+the first parameter is merely a placeholder.
 .bP
-Normally the ncurses library is compiled with terminfo support.
-In that case, \fBtgoto\fP uses an internal version of
-\fBtparm\fP(3X) (a more capable formatter).
+Normally the \fI\%ncurses\fP library is compiled without
+full \fI\%term\%cap\fP support.
+In that case,
+\fB\%tgoto\fP uses an internal version of \fB\%tparm\fP(3X)
+(a more capable function).
 .IP
-With terminfo support, \fBtgoto\fP is able to use some of the terminfo
-features, but not all.
-In particular, it allows only numeric parameters;
-\fBtparm\fP supports string parameters.
+Because it uses \fB\%tparm\fP internally,
+\fB\%tgoto\fP is able to use some \fI\%term\%info\fP features,
+but not all.
+In particular,
+it allows only numeric parameters;
+\fB\%tparm\fP supports string parameters.
 .IP
-However, \fBtparm\fP is not a \fItermcap\fP feature,
-and portable \fItermcap\fP applications should not rely upon its availability.
+However,
+\fB\%tparm\fP is not a \fItermcap\fP feature,
+and portable \fItermcap\fP applications should not rely upon its
+availability.
 .PP
-The \fBtputs\fP routine is described on the \fBcurs_terminfo\fP(3X) manual
-page.
-It can retrieve capabilities by either termcap or terminfo name.
-.SS Global Variables
+\fB\%tputs\fP is described in \fB\%curs_terminfo\fP(3X).
+It can retrieve capabilities by either \fItermcap\fP or
+\fI\%term\%info\fP name.
+.SS "Global Variables"
 The variables
 \fBPC\fP,
 \fBUP\fP and
 \fBBC\fP
-are set by \fBtgetent\fP to the terminfo entry's data for
-\fBpad_char\fP,
-\fBcursor_up\fP and
-\fBbackspace_if_not_bs\fP,
+are set by \fB\%tgetent\fP to the \fI\%term\%info\fP entry's data for
+\fB\%pad_char\fP,
+\fB\%cursor_up\fP and
+\fB\%backspace_if_not_bs\fP,
 respectively.
-\fBUP\fP is not used by ncurses.
-\fBPC\fP is used in the \fBtdelay_output\fP function.
-\fBBC\fP is used in the \fBtgoto\fP emulation.
-The variable \fBospeed\fP is set by ncurses in a system-specific coding
-to reflect the terminal speed.
-.SS Releasing Memory
-The termcap functions provide no means for freeing memory,
-because legacy termcap implementations used only the buffer
-areas provided by the caller via \fBtgetent\fP and \fBtgetstr\fP.
-Those buffers are unused in terminfo.
+\fBUP\fP is not used by \fI\%ncurses\fP.
+\fBPC\fP is used by \fB\%delay_output\fP(3X).
+\fBBC\fP is used by \fB\%tgoto\fP emulation.
+The variable \fB\%ospeed\fP is set by \fI\%ncurses\fP using a
+system-specific encoding to indicate the terminal's data rate.
+.SS "Releasing Memory"
+The \fItermcap\fP functions provide no means of freeing memory,
+because legacy \fItermcap\fP implementations used only the buffer
+areas provided by the caller via \fB\%tgetent\fP and \fB\%tgetstr\fP.
+Those buffers are unused in \fI\%term\%info\fP.
 .PP
-On the other hand, terminfo allocates memory.
-It uses \fBsetupterm\fP to retrieve the data used by \fBtgetent\fP
-and the functions which return capability values such as \fBtgetstr\fP.
+By contrast,
+\fI\%term\%info\fP allocates memory.
+It uses \fB\%setupterm\fP(3X) to obtain the data used by \fB\%tgetent\fP
+and the functions that retrieve capability values.
 One could use
-.sp
-        \fBdel_curterm(cur_term);\fP
-.sp
-.PP
-to free this memory, but there is an additional complication with ncurses.
-It uses a fixed-size \fIpool\fP of storage locations,
-one per setting of the \fITERM\fP variable when \fBtgetent\fP is called.
-The \fBscreen\fP(1) program relies upon this arrangement,
-to improve its performance.
-.PP
-An application which uses only the low-level termcap functions could
-free the memory using \fBdel_curterm\fP,
-because the pool is freed using other functions
-(see \fBcurs_memleaks\fP(3X)).
-.
-.SH RETURN VALUE
-Except where explicitly noted,
-routines that return an integer return \fBERR\fP upon failure and \fBOK\fP
-(SVr4 only specifies "an integer value other than \fBERR\fP") upon successful
-completion.
+.RS
+.EX
+del_curterm(cur_term);
+.EE
+.RE
+to free this memory,
+but there is an additional complication with \fI\%ncurses\fP.
+It uses a fixed-size pool of storage locations,
+one per value of the \fITERM\fP environment variable when
+\fB\%tgetent\fP is called.
+The \fBscreen\fP(1) program relies upon this arrangement to improve its
+performance.
 .PP
-Routines that return pointers return \fBNULL\fP on error.
+An application that uses only the \fItermcap\fP functions,
+not the higher level
+.I \%curses
+API,
+could release the memory using \fB\%del_curterm\fP(3X),
+because the pool is freed using other functions;
+see \fB\%curs_memleaks\fP(3X).
+.SH "RETURN VALUE"
+The return values of
+\fB\%tgetent\fP,
+\fB\%tgetflag\fP,
+\fB\%tgetname\fP,
+and
+\fB\%tgetstr\fP
+are documented above.
 .PP
-A few special cases apply:
+\fB\%tgoto\fP returns
+.B NULL
+on error.
+Error conditions include:
+.bP
+uninitialized state
+(\fB\%tgetent\fP was not called successfully),
 .bP
-If the terminal database has not been initialized,
-these return an error.
+.I cap
+being a null pointer,
 .bP
-The calls with a string parameter (\fBtgoto\fP, \fBtputs\fP)
-check if the string is null, or cancelled.
-Those return an error.
+.I cap
+referring to a canceled capability,
 .bP
-A call to \fBtgoto\fP using a capability with string parameters is an error.
+.I cap
+being a capability with string-valued parameters
+(a \fI\%term\%info\fP-only feature),
+and
 .bP
-A call to \fBtgoto\fP using a capability with more than two parameters
-is an error.
+.I cap
+being a capability with more than two parameters.
+.PP
+See \fB\%curs_terminfo\fP(3X) regarding \fB\%tputs\fP.
+.SH NOTES
+\fI\%ncurses\fP compares only the first two characters of the \fIid\fP
+parameter of
+\fB\%tgetflag\fP,
+\fB\%tgetnum\fP,
+and
+\fB\%tgetstr\fP to the capability names in the database.
 .SH PORTABILITY
+These functions are no longer standardized
+(and the variables never were);
+\fI\%ncurses\fP provides them to support legacy applications.
+They should not be used in new programs.
 .SS Standards
-These functions are provided for supporting legacy applications,
-and should not be used in new programs:
 .bP
-The XSI Curses standard, Issue 4 describes these functions.
-However, they
-are marked TO BE WITHDRAWN and may be removed in future versions.
+X/Open Curses, Issue 4, Version 2 (1996),
+describes these functions.
+However,
+they are marked
+\*(``TO BE WITHDRAWN\*(''.
 .bP
-X/Open Curses, Issue 5 (December 2007) marked the termcap interface
-(along with \fBvwprintw\fP and \fBvwscanw\fP) as withdrawn.
+X/Open Curses, Issue 7 (2009) marked the \fItermcap\fP interface
+(along with \fB\%vwprintw\fP and \fB\%vwscanw\fP) as withdrawn.
 .PP
-Neither the XSI Curses standard nor the SVr4 man pages documented the return
-values of \fBtgetent\fP correctly, though all three were in fact returned ever
-since SVr1.
-In particular, an omission in the XSI Curses documentation has been
-misinterpreted to mean that \fBtgetent\fP returns \fBOK\fP or \fBERR\fP.
+Neither X/Open Curses nor the SVr4 man pages documented the return
+values of \fB\%tgetent\fP correctly,
+though all three were in fact returned ever since SVr1.
+In particular,
+an omission in the X/Open Curses specification has been misinterpreted
+to mean that \fB\%tgetent\fP returns \fBOK\fP or \fBERR\fP.
 Because the purpose of these functions is to provide compatibility with
-the \fItermcap\fP library, that is a defect in XCurses, Issue 4, Version 2
-rather than in ncurses.
-.SS Compatibility with BSD Termcap
-External variables are provided for support of certain termcap applications.
-However, termcap applications' use of those variables is poorly documented,
-e.g., not distinguishing between input and output.
-In particular, some applications are reported to declare and/or
-modify \fBospeed\fP.
+the \fItermcap\fP library,
+that is a defect in X/Open Curses, Issue 4, Version 2
+rather than in \fI\%ncurses\fP.
+.SS "Compatibility with BSD \fItermcap\fP"
+Externally visible variables are provided for support of certain
+\fItermcap\fP applications.
+However,
+their correct usage is poorly documented;
+for example,
+it is unclear when reading and writing them is meaningful.
+In particular,
+some applications are reported to declare and/or modify \fB\%ospeed\fP.
 .PP
-The comment that only the first two characters of the \fBid\fP parameter
-are used escapes many application developers.
-The original BSD 4.2 termcap library (and historical relics thereof)
-did not require a trailing null NUL on the parameter name passed
-to \fBtgetstr\fP, \fBtgetnum\fP and \fBtgetflag\fP.
-Some applications assume that the termcap interface does not require
-the trailing NUL for the parameter name.
-Taking into account these issues:
-.bP
-As a special case,
-\fBtgetflag\fP matched against a single-character identifier
-provided that was at the end of the terminal description.
-You should not rely upon this behavior in portable programs.
-This implementation disallows matches against single-character capability names.
+The constraint that only the first two characters of the \fIid\fP
+parameter are used escapes many application developers.
+The BSD \fItermcap\fP library did not require a trailing null character
+on the capability identifier passed to \fB\%tgetstr\fP,
+\fB\%tgetnum\fP,
+and
+\fB\%tgetflag\fP.
+.\" See <https://minnie.tuhs.org/cgi-bin/utree.pl?file=2BSD/src/\
+.\"   termlib/termcap.c>.
+Some applications thus assume that the \fItermcap\fP interface does not
+require the trailing null character for the capability identifier.
 .bP
-This implementation disallows matches by the termcap interface against
-extended capability names which are longer than two characters.
+.I \%ncurses
+disallows matches by the \fItermcap\fP interface against extended
+capability names that are longer than two characters;
+see \fB\%user_caps\fP(5).
 .PP
-The BSD termcap function \fBtgetent\fP returns the text of a termcap
-entry in the buffer passed as an argument.
-This library (like other terminfo implementations) does not store
-terminal descriptions as text.
+The BSD \fItermcap\fP function \fB\%tgetent\fP returns the text of a
+\fItermcap\fP entry in the buffer passed as an argument.
+This library,
+like other \fI\%term\%info\fP implementations,
+does not store terminal type descriptions as text.
 It sets the buffer contents to a null-terminated string.
-.SS Other Compatibility
-This library includes a termcap.h header,
-for compatibility with other implementations.
-But the header is rarely used because the other implementations
-are not strictly compatible.
+.SS "Header File"
+This library includes a \fI\%termcap.h\fP header for compatibility with
+other implementations,
+but the header is rarely used because the other implementations are not
+strictly compatible.
+.SH HISTORY
+.\" See https://www.oreilly.com/openbook/opensources/book/kirkmck.html
+.\" for much BSD release history.
+Bill Joy originated a forerunner of \fItermcap\fP called
+\*(``ttycap\*('',
+dated September 1977,
+and released in 1BSD
+(March 1978).
+.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=1BSD/s7/ttycap.c
+.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=1BSD/man7/ttycap.7
+It used many of the same function names as the later \fItermcap\fP,
+such as
+\fB\%tgetent\fP,
+\fB\%tgetflag\fP,
+\fB\%tgetnum\fP,
+and
+\fB\%tgetstr\fP.
+.PP
+A clear descendant,
+the \fItermlib\fP library,
+.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=2BSD/src/termlib/
+followed in 2BSD
+(May 1979),
+adding \fB\%tgoto\fP and \fB\%tputs\fP.
+The former applied at that time only to cursor positioning capabilities,
+.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=2BSD/bin/etc/termcap
+thus the overly specific name.
+Little changed in 3BSD
+(late 1979)
+except the addition of test programs and a \fI\%termlib\fP man page,
+which documented the API shown in section \*(``SYNOPSIS\*('' above.
+.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=3BSD/usr/src/lib/\
+.\"   libtermlib/
+.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=3BSD/usr/man/man3/\
+.\"   termlib.3
+.PP
+4BSD
+(November 1980)
+renamed \fItermlib\fP to \fItermcap\fP
+.\" ...except in the source tree...
+.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=4BSD/usr/src/lib/\
+.\"   libtermlib/makefile
+and added another test program.
+The library remained much the same though 4.3BSD
+(June 1986).
+4.4BSD-Lite
+(June 1994)
+refactored it
+.\" Observe the `tncktc()`, `tnamatch()`, `tskip()`, and `tdecode()`
+.\" entry points disappearing from termcap.c.
+but left the API unchanged.
 .PP
-The original BSD termcap (through 4.3BSD) had no header file which
-gave function prototypes, because that was a feature of ANSI C.
-BSD termcap was written several years before C was standardized.
-However, there were two different termcap.h header files in the BSD
-sources:
+Function prototypes were a feature of the forthcoming ANSI C (1989).
+Thus the library provided no header file declaring them.
+Nevertheless,
+the BSD sources included two different \fI\%termcap.h\fP header files
+over time.
 .bP
-One was used internally by the \fBjove\fP editor in 2BSD through 4.4BSD.
-It defined global symbols for the termcap variables which it used.
+One was used internally by \fBjove\fP(1) from 4.3BSD onward.
+.\" 2BSD became a branch retaining support for non-virtual memory
+.\" systems (like the PDP-11) whereas most BSD development focused on
+.\" the VAX and other VM-enabled systems starting with 3BSD.
+.\"
+.\" This man page previously located a termcap.h in 2BSD, but that may
+.\" be confusion arising from its backport to 2.9BSD (and still present
+.\" in surviving sources for 2.11BSD, the "end of the line" for that
+.\" branch's development).
+.\"
+.\" Observe the copyright notice in
+.\"   https://minnie.tuhs.org/cgi-bin/utree.pl?file=4.3BSD/usr/contrib/\
+.\"     jove/Makefile
+.\" --much too late for 2BSD (1979).
+It delcared global symbols for the \fItermcap\fP variables that it used.
 .bP
-The other appeared in 4.4BSD Lite Release 2 (mid-1993)
-as part of \fIlibedit\fP (also known as the \fIeditline\fP library).
-The CSRG source history shows that this was added in mid-1992.
-The \fIlibedit\fP header file was used internally,
-as a convenience for compiling the \fIeditline\fP library.
-It declared function prototypes, but no global variables.
-.PP
-The header file from \fIlibedit\fP was added to NetBSD's termcap
-library in mid-1994.
+The other appeared in 4.4BSD-Lite Release 2
+(June 1995)
+as part of \fIlibedit\fP
+(also known as the \fI\%edit\%line\fP library).
+CSRG source history shows that this was added in mid-1992.
+The \fIlibedit\fP header file was used internally as a convenience for
+compiling the \fI\%edit\%line\fP library.
+It declared function prototypes,
+but no global variables.
+This header file was added to NetBSD's \fItermcap\fP library in
+mid-1994.
 .PP
-Meanwhile, GNU termcap was under development, starting in 1990.
-The first release (termcap 1.0) in 1991 included a termcap.h header.
-The second release (termcap 1.1) in September 1992 modified the
-header to use \fBconst\fP for the function prototypes in the header
-where one would expect the parameters to be read-only.
-This was a difference versus the original BSD termcap.
-The prototype for \fBtputs\fP also differed,
-but in that instance, it was \fIlibedit\fP which differed from BSD termcap.
+Meanwhile,
+GNU \fItermcap\fP began development in 1990.
+Its first release (1.0) in 1991 included a \fI\%termcap.h\fP header.
+Its second (1.1) in September 1992 modified the header to use
+\fIconst\fP for the function prototypes in the header where one would
+expect the parameters to be read-only.
+BSD \fItermcap\fP did not.
+The prototype for \fB\%tputs\fP also differed,
+but in that instance,
+it was \fIlibedit\fP that differed from BSD \fItermcap\fP.
 .PP
-A copy of GNU termcap 1.3 was bundled with \fIbash\fP in mid-1993,
-to support the \fBreadline\fP(3) library.
+GNU \fItermcap\fP 1.3 was bundled with \fIbash\fP in mid-1993 to support
+the \fBreadline\fP(3) library.
 .PP
-A termcap.h file was provided in ncurses 1.8.1 (November 1993).
-That reflected influence by \fBemacs\fP(1) (rather than \fBjove\fP(1))
-and GNU termcap:
+\fI\%ncurses\fP 1.8.1
+(November 1993)
+provided a \fI\%termcap.h\fP file.
+It reflected influence from GNU \fItermcap\fP and \fBemacs\fP(1)
+(rather than \fBjove\fP(1)),
+providing the following interface:
 .bP
-it provided declarations for a few global symbols used by \fBemacs\fP
+global symbols used by \fIemacs\fP,
 .bP
-it provided function prototypes (using \fBconst\fP).
+\fIconst\fP-qualified function prototypes,
+and
 .bP
-a prototype for \fBtparam\fP (a GNU termcap feature) was provided.
+a prototype for \fBtparam\fP,
+a GNU \fItermcap\fP feature.
 .PP
-Later (in mid-1996) the \fBtparam\fP function was removed from ncurses.
-As a result, there are differences between any of the four implementations,
-which must be taken into account by programs which can work with all
-termcap library interfaces.
+Later
+(in mid-1996)
+the \fB\%tparam\fP function was removed from \fI\%ncurses\fP.
+Any two of the four implementations thus differ,
+and programs that intend to work with all \fItermcap\fP library
+interfaces must account for that fact.
 .SH BUGS
 If you call \fB\%tgetstr\fP to fetch \fB\%ca\fP or any other
 parameterized string capability,
-be aware that it is returned in \fI\%terminfo\fP notation,
-not the older and not-quite-compatible \fI\%termcap\fP notation.
+be aware that it is returned in \fI\%term\%info\fP notation,
+not the older and not-quite-compatible \fItermcap\fP notation.
 This does not cause problems if all you do with it is call \fB\%tgoto\fP
-or \fB\%tparm\fP, which both expand
-\fI\%terminfo\fP-style strings as \fI\%terminfo\fP does.
-(The \fB\%tgoto\fP function,
-if configured to support \fI\%termcap,\fP
-checks if the string is indeed \fI\%terminfo\fP-style by looking for
-\*(``\fB%p\fP\*('' parameters or \*(``\fB<\fP.\|.\|.\fB>\fP\*('' delays,
-and invokes a \fI\%termcap\fP-style parser if the string appears not to
-use \fI\%terminfo\fP syntax.)
+or \fB\%tparm\fP,
+which both expand \fI\%term\%info\fP-style strings as \fI\%term\%info\fP
+does.
+(If
+.I \%ncurses
+is configured to support \fItermcap,\fP
+\fB\%tgoto\fP checks whether the string is \fI\%term\%info\fP-style by
+looking for \*(``\fB%p\fP\*('' parameters or
+\*(``\fB<\fP.\|.\|.\fB>\fP\*('' delays,
+and invokes a \fItermcap\fP-style parser if the string appears not to
+use \fI\%term\%info\fP syntax.)
 .PP
-Because \fI\%terminfo\fP's syntax for padding in string capabilities
-differs from \fI\%termcap\fP's,
+Because \fI\%term\%info\fP's syntax for padding in string capabilities
+differs from \fItermcap\fP's,
 users can be surprised.
 .IP \(bu 4
-\fB\%tputs("50")\fP in a \fI\%terminfo\fP system transmits \*(``50\*(''
-rather than busy-waiting for 50 milliseconds.
+\fB\%tputs("50")\fP in a \fI\%term\%info\fP system transmits
+\*(``50\*('' rather than busy-waiting for 50 milliseconds.
 .IP \(bu 4
 However,
-if \fI\%ncurses\fP is configured to support \fI\%termcap\fP,
+if \fI\%ncurses\fP is configured to support \fItermcap\fP,
 it may also have been configured to support BSD-style padding.
 .IP
 In that case,
 \fB\%tputs\fP inspects strings passed to it,
 looking for digits at the beginning of the string.
 .IP
-\fB\%tputs("50")\fP in a \fI\%termcap\fP system may busy-wait for 50
+\fB\%tputs("50")\fP in a \fItermcap\fP system may busy-wait for 50
 milliseconds rather than transmitting \*(``50\*(''.
 .PP
-\fI\%termcap\fP has nothing analogous to \fI\%terminfo\fP's \fBsgr\fP
+\fItermcap\fP has nothing analogous to \fI\%term\%info\fP's \fBsgr\fP
 string.
-One consequence is that \fI\%termcap\fP applications assume that
-\fBme\fP
-(equivalent to \fI\%terminfo\fP's \fBsgr0\fP capability)
+One consequence is that \fItermcap\fP applications assume that
+.RB \*(`` me \*(''
+(equivalent to \fI\%term\%info\fP's \fBsgr0\fP capability)
 does not reset the alternate character set.
 \fI\%ncurses\fP checks for,
 and modifies the data shared with,
-the \fI\%termcap\fP interface to accommodate the latter's limitation in
+the \fItermcap\fP interface to accommodate the latter's limitation in
 this respect.
-.SH SEE ALSO
+.SH "SEE ALSO"
 \fB\%curses\fP(3X),
+\fB\%curs_terminfo\fP(3X),
 \fB\%putc\fP(3),
 \fB\%term_variables\fP(3X),
 \fB\%terminfo\fP(5)
index 62d51a65f5514b4305fa57d9c76e305754c129c7..aeee9db8195a6bd9db38380f3b391670cfe0a5a6 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_terminfo.3x,v 1.122 2023/12/03 00:10:20 tom Exp $
-.TH curs_terminfo 3X 2023-12-02 "ncurses 6.4" "Library calls"
+.\" $Id: curs_terminfo.3x,v 1.123 2023/12/16 21:11:53 tom Exp $
+.TH curs_terminfo 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -88,9 +88,9 @@
 \fBint del_curterm(TERMINAL *\fIoterm\fP);
 \fBint restartterm(const char *\fIterm\fP, int \fIfiledes\fP, int *\fIerrret\fP);
 .PP
-\fBchar *tparm(const char *\fIstr\fP, ...);
-       \fIor
-\fBchar *tparm(const char *\fIstr\fP, long \fIp1 ... \fPlong \fIp9\fP);
+\fBchar *tparm(const char *\fIstr\fP, \fR.\|.\|.\fP);
+       \fI/* or */
+\fBchar *tparm(const char *\fIstr\fP, long \fIp1\fP \fR.\|.\|.\fP \fBlong\fP \fIp9\fP);
 .PP
 \fBint tputs(const char *\fIstr\fP, int \fIaffcnt\fP, int (*\fIputc\fP)(int));
 \fBint putp(const char *\fIstr\fP);
 \fBint tigetnum(const char *\fIcapname\fP);
 \fBchar *tigetstr(const char *\fIcapname\fP);
 .PP
-\fBchar *tiparm(const char *\fIstr\fP, ...);
+\fBchar *tiparm(const char *\fIstr\fP, \fR.\|.\|.\fP);
 .PP
 \fI/* extensions */
 \fBchar *tiparm_s(int \fIexpected\fP, int \fImask\fP, const char *\fIstr\fP, ...);
@@ -242,7 +242,7 @@ Thus, the simplest call is:
 which uses all the defaults and sends the output to \fBstdout\fP.
 .RE
 .\" ***************************************************************************
-.SS The Terminal State
+.SS "The Terminal State"
 The \fBsetupterm\fP routine stores its information about the terminal
 in a \fBTERMINAL\fP structure pointed to by the global variable \fBcur_term\fP.
 If it detects an error,
@@ -277,7 +277,7 @@ but the terminal type and baud rate may be different.
 Accordingly, \fBrestartterm\fP saves various tty state bits,
 calls \fBsetupterm\fP, and then restores the bits.
 .\" ***************************************************************************
-.SS Formatting Output
+.SS "Formatting Output"
 The \fBtparm\fP routine instantiates the string \fIstr\fP with
 parameters \fIpi\fP.  A pointer is returned to the result of \fIstr\fP
 with the parameters applied.
@@ -315,7 +315,7 @@ The \fImask\fP parameter has one bit set for each of the parameters
 The extension \fBtiscan_s\fP allows the application
 to inspect a formatting capability to see what the curses library would assume.
 .\" ***************************************************************************
-.SS Output Functions
+.SS "Output Functions"
 String capabilities can contain padding information,
 a time delay
 (accommodating performance limitations of hardware terminals)
@@ -366,7 +366,7 @@ i.e.,
 .bP
 \fIattrs\fP of type \fBattr_t\fP for the attributes and
 .bP
-\fIpair\fP of type \fBshort\fP for the color-pair number.
+\fIpair\fP of type \fBshort\fP for the color pair number.
 .PP
 The \fBvid_attr\fP and \fBvid_puts\fP routines
 are designed to use the attribute constants with the \fBWA_\fP prefix.
@@ -389,7 +389,7 @@ do not use the high-level curses state,
 they are declared in \fB\%<curses.h>\fP because System\ V did this
 (see \fIHISTORY\fP).
 .\" ***************************************************************************
-.SS Terminal Capability Functions
+.SS "Terminal Capability Functions"
 The \fBtigetflag\fP, \fBtigetnum\fP and \fBtigetstr\fP routines return
 the value of the capability corresponding to the \fBterminfo\fP
 \fIcapname\fP passed to them, such as \fBxenl\fP.
@@ -424,7 +424,7 @@ or
 \fB0\fP
 if it is canceled or absent from the terminal description.
 .\" ***************************************************************************
-.SS Terminal Capability Names
+.SS "Terminal Capability Names"
 These null-terminated arrays contain
 .bP
 the short \fIterminfo\fP names (\*(``codes\*(''),
@@ -443,7 +443,7 @@ for each of the predefined \fIterminfo\fP variables:
 .fi
 .RE
 .\" ***************************************************************************
-.SS Releasing Memory
+.SS "Releasing Memory"
 Each successful call to \fBsetupterm\fP allocates memory to hold the terminal
 description.
 As a side-effect, it sets \fBcur_term\fP to point to this memory.
@@ -457,11 +457,12 @@ The formatting functions \fBtparm\fP and \fBtiparm\fP extend the storage
 allocated by \fBsetupterm\fP:
 .bP
 the \*(``static\*('' terminfo variables [a-z].
-Before ncurses 6.3, those were shared by all screens.
-With ncurses 6.3, those are allocated per screen.
+Before \fI\%ncurses\fP 6.3, those were shared by all screens.
+With \fI\%ncurses\fP 6.3, those are allocated per screen.
 See \fBterminfo\fP(5) for details.
 .bP
-to improve performance, ncurses 6.3 caches the result of analyzing terminfo
+to improve performance,
+\fI\%ncurses\fP 6.3 caches the result of analyzing terminfo
 strings for their parameter types.
 That is stored as a binary tree referenced from the \fBTERMINAL\fP structure.
 .PP
@@ -514,7 +515,8 @@ of the output function \fIputc\fP.
 X/Open notes that \fBvidattr\fP and \fBvidputs\fP may be macros.
 .\" ***************************************************************************
 .SH EXTENSIONS
-The functions marked as extensions were designed for \fBncurses\fP(3X),
+The functions marked as extensions were designed for
+\fB\%ncurses\fP(3X),
 and are not found in SVr4 curses, 4.4BSD curses,
 or any other previous version of curses.
 .\" ***************************************************************************
@@ -522,7 +524,7 @@ or any other previous version of curses.
 The function \fBsetterm\fP is not described by X/Open and must
 be considered non-portable.
 All other functions are as described by X/Open.
-.SS Compatibility macros
+.SS "Compatibility Macros"
 This implementation provides a few macros for compatibility with systems
 before SVr4 (see \fIHISTORY\fP).
 Those include
@@ -546,7 +548,7 @@ provides the same functionality as \fBsetterm(\fIterm\fB)\fR,
 and is not recommended for new programs.
 This implementation provides each of those symbols
 as macros for BSD compatibility.
-.SS Legacy data
+.SS "Legacy Data"
 \fBsetupterm\fP copies the terminal name to the array \fBttytype\fP.
 This is not part of X/Open Curses, but is assumed by some applications.
 .PP
@@ -556,24 +558,25 @@ X/Open does not specify them.
 .PP
 Extended terminal capability names, e.g., as defined by \fB@TIC@\ \-x\fP,
 are not stored in the arrays described here.
-.SS Output buffering
-Older versions of \fBncurses\fP assumed that the file descriptor passed to
-\fBsetupterm\fP from \fBinitscr\fP or \fBnewterm\fP uses buffered I/O,
+.SS "Output Buffering"
+Older versions of \fI\%ncurses\fP assumed that the file descriptor
+passed to \fBsetupterm\fP from \fBinitscr\fP or \fBnewterm\fP uses
+buffered I/O,
 and would write to the corresponding stream.
 In addition to the limitation that the terminal was left in block-buffered
 mode on exit (like System V curses),
-it was problematic because \fBncurses\fP
+it was problematic because \fI\%ncurses\fP
 did not allow a reliable way to cleanup on receiving SIGTSTP.
 .PP
 The current version (ncurses6)
-uses output buffers managed directly by \fBncurses\fP.
+uses output buffers managed directly by \fI\%ncurses\fP.
 Some of the low-level functions described in this manual page write
 to the standard output.
 They are not signal-safe.
-The high-level functions in \fBncurses\fP use
+The high-level functions in \fI\%ncurses\fP use
 alternate versions of these functions
 using the more reliable buffering scheme.
-.SS Function prototypes
+.SS "Function Prototypes"
 The X/Open Curses prototypes are based on the SVr4 curses header declarations,
 which were defined at the same time the C language was first standardized in
 the late 1980s.
@@ -587,7 +590,7 @@ On the other hand, \fIwritable strings\fP are an obsolescent feature.
 .IP
 As an extension, this implementation can be configured to change the
 function prototypes to use the \fBconst\fP keyword.
-The \fIncurses\fP ABI 6 enables this feature by default.
+The \fI\%ncurses\fP ABI 6 enables this feature by default.
 .bP
 X/Open Curses prototypes \fBtparm\fP with a fixed number of parameters,
 rather than a variable argument list.
@@ -600,7 +603,7 @@ zeroes are fine for this purpose.
 In response to review comments by Thomas E. Dickey,
 X/Open Curses Issue 7 proposed the \fBtiparm\fP function in mid-2009.
 .IP
-While \fBtiparm\fP is always provided in ncurses,
+While \fBtiparm\fP is always provided in \fI\%ncurses\fP,
 the older form is only available as a build-time configuration option.
 If not specially configured, \fBtparm\fP is the same as \fBtiparm\fP.
 .PP
@@ -620,14 +623,14 @@ such as \fBtiparm\fP can be a problem, in particular for string parameters.
 However, only a few terminfo capabilities use string parameters
 (e.g., the ones used for programmable function keys).
 .IP
-The ncurses library checks usage of these capabilities,
+The \fI\%ncurses\fP library checks usage of these capabilities,
 and returns an error if the capability mishandles string parameters.
 But it cannot check if a calling program provides strings in the right
 places for the \fBtparm\fP calls.
 .IP
 The \fB@TPUT@\fR(1) program checks its use of these capabilities with a table,
 so that it calls \fBtparm\fP correctly.
-.SS Special TERM treatment
+.SS "Special \fITERM\fP treatment"
 If configured to use the terminal-driver,
 e.g., for the MinGW port,
 .bP
@@ -645,7 +648,7 @@ A generic terminal is unsuitable for full-screen applications.
 \fBsetupterm\fP allows explicit use of the
 the windows console driver by checking if \fB$TERM\fP is set to
 \*(``#win32con\*('' or an abbreviation of that string.
-.SS Other portability issues
+.SS "Other Portability Issues"
 In System V Release 4, \fBset_curterm\fP has an \fBint\fP return type and
 returns \fBOK\fP or \fBERR\fP.  We have chosen to implement the X/Open Curses
 semantics.
@@ -660,8 +663,9 @@ That returns the length of the string, and does no error-checking.
 X/Open notes that after calling \fBmvcur\fP, the curses state may not match the
 actual terminal state, and that an application should touch and refresh
 the window before resuming normal curses calls.
-Both \fBncurses\fP and System V Release 4 curses implement \fBmvcur\fP using
-the SCREEN data allocated in either \fBinitscr\fP or \fBnewterm\fP.
+Both \fI\%ncurses\fP and System V Release 4 curses implement \fBmvcur\fP
+using the SCREEN data allocated in either \fBinitscr\fP or
+\fBnewterm\fP.
 So though it is documented as a terminfo function,
 \fBmvcur\fP is really a curses function which is not well specified.
 .PP
index 1648dee20b4756f5edf27c577ab71a0c29b63208..c0675b16ce1b4c4bdf135f965b9a0523b202c759 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_threads.3x,v 1.49 2023/11/25 14:09:12 tom Exp $
-.TH curs_threads 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_threads.3x,v 1.50 2023/12/16 20:32:22 tom Exp $
+.TH curs_threads 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
 \fBint use_window(WINDOW *\fIwin\fP, NCURSES_WINDOW_CB \fIfunc\fP, void *\fIdata\fP);
 .fi
 .SH DESCRIPTION
-The \fIncurses\fP library can be configured to support multi-threaded
+The \fI\%ncurses\fP library can be configured to support multi-threaded
 applications in a rudimentary way.
 Such configuration produces a different set of libraries,
 named \fIlibncursest\fP,
 for example,
-since doing so alters \fIncurses\fP's application binary interface
+since doing so alters \fI\%ncurses\fP's application binary interface
 (ABI).
 .PP
 Instead of modifying the programming interface (API) to make
-\fIncurses\fP functions expect an additional argument specifying a
+\fI\%ncurses\fP functions expect an additional argument specifying a
 thread,
 the library adds functions,
 usable in any configuration,
@@ -88,8 +88,9 @@ that hide the \fImutexes\fP
 needed to prevent concurrent access to variables shared by multiple
 threads of execution.
 .PP
-\fIncurses\fP threading support requires the use of functions to access
-members of the \fI\%WINDOW\fP structure (see \fBcurs_opaque\fP(3X)).
+\fI\%ncurses\fP threading support requires the use of functions to
+access members of the \fI\%WINDOW\fP structure (see
+\fBcurs_opaque\fP(3X)).
 It further makes functions of the common global variables
 \fB\%COLORS\fP,
 \fB\%COLOR_PAIRS\fP,
@@ -127,7 +128,7 @@ pass it a \fIdata\fP parameter,
 and return the value from the user-supplied function to the application.
 .\" ***************************************************************************
 .SS Usage
-All \fIncurses\fP library functions assume that the locale is not
+All \fI\%ncurses\fP library functions assume that the locale is not
 altered during operation.
 In addition,
 they use data that is maintained within a hierarchy of scopes.
@@ -154,8 +155,9 @@ single screen.
 reentrant data associated with \*(``pure\*('' functions that alter no
 shared variables
 .PP
-The following table lists the scope of each symbol in the \fIncurses\fP
-library when configured to support multi-threaded applications.
+The following table lists the scope of each symbol in the
+\fI\%ncurses\fP library when configured to support multi-threaded
+applications.
 .PP
 .TS
 center tab(/);
@@ -623,12 +625,12 @@ failure and \fBOK\fP upon successful completion.
 \fB\%use_screen\fP and \fB\%use_window\fP return the \fIint\fP returned
 by the user-supplied function they are called with.
 .SH NOTES
-\fIncurses\fP provides both a C function and a preprocessor macro for
+\fI\%ncurses\fP provides both a C function and a preprocessor macro for
 each function documented in this page.
 .SH PORTABILITY
-These routines are specific to \fIncurses\fP.
+These routines are specific to \fI\%ncurses\fP.
 They were not supported on Version 7, BSD or System V implementations.
-It is recommended that any code depending on \fIncurses\fP extensions
+It is recommended that any code depending on \fI\%ncurses\fP extensions
 be conditioned using \fB\%NCURSES_VERSION\fP.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
index 6233edb6c64c4f466998fb9b703b1c4d678f2cf8..09e787780fb4849da67e4e1cb3c97fd880841bc4 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_trace.3x,v 1.40 2023/10/07 21:19:07 tom Exp $
-.TH curs_trace 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_trace.3x,v 1.41 2023/12/16 20:50:14 tom Exp $
+.TH curs_trace 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -83,8 +83,9 @@
 \fBvoid trace(const unsigned int \fIparam\fP);
 .fi
 .SH DESCRIPTION
-The \fIcurses trace\fP routines are used for debugging the ncurses libraries,
-as well as applications which use the ncurses libraries.
+The \fIcurses trace\fP routines are used for debugging the
+\fI\%ncurses\fP libraries,
+as well as applications which use the \fI\%ncurses\fP libraries.
 Some limitations apply:
 .bP
 Aside from \fBcurses_trace\fP,
@@ -122,7 +123,7 @@ updates the trace mask,
 and returns the previous trace mask.
 .IP
 When the trace mask is nonzero,
-ncurses creates the file \*(``trace\*('' in the current directory for output.
+\fI\%ncurses\fP creates the file \*(``trace\*('' in the current directory for output.
 If the file already exists, no tracing is done.
 .bP
 If tracing is not available, \fBcurses_trace\fP returns zero (0).
@@ -192,7 +193,7 @@ is nonzero.
 Some features overlap.
 The specific names are used as a guideline.
 .SS Initialization
-These functions check the \fBNCURSES_TRACE\fP environment variable,
+These functions check the \fI\%NCURSES_TRACE\fP environment variable,
 to set the tracing feature as if \fBcurses_trace\fP was called:
 .RS 4
 .PP
@@ -220,13 +221,14 @@ which determines the messages which are written.
 Because the command-line utilities may call initialization functions
 such as \fBsetupterm\fP, \fBtgetent\fP or \fBuse_extended_names\fP,
 some of their debugging output may be directed to the \fItrace\fP file
-if the \fBNCURSES_TRACE\fP environment variable is set:
+if the \fI\%NCURSES_TRACE\fP environment variable is set:
 .bP
 messages produced in the utility are written to the standard error.
 .bP
 messages produced by the underlying library are written to \fItrace\fP.
 .PP
-If ncurses is built without tracing, none of the latter are produced,
+If \fI\%ncurses\fP is built without tracing,
+none of the latter are produced,
 and fewer diagnostics are provided by the command-line utilities.
 .SH RETURN VALUE
 Routines which return a value are designed to be used as parameters
@@ -235,7 +237,7 @@ to the \fB_tracef\fP routine.
 These functions are not part of the XSI interface.
 Some other curses implementations are known to
 have similar features,
-but they are not compatible with ncurses:
+but they are not compatible with \fI\%ncurses\fP:
 .bP
 SVr4 provided \fBtraceon\fP and \fBtraceoff\fP,
 to control whether debugging information was written
@@ -254,21 +256,22 @@ only when a debug-library is built.
 .IP
 PDCurses has a short description of these functions,
 with a note that they are not present in X/Open Curses,
-ncurses or NetBSD.
+\fI\%ncurses\fP or NetBSD.
 It does not mention SVr4,
 but the functions' inclusion in a header file section
 labeled \*(``Quasi-standard\*('' hints at the origin.
 .bP
 NetBSD does not provide functions for enabling/disabling traces.
 It uses environment variables
-\fBCURSES_TRACE_MASK\fP and
-\fBCURSES_TRACE_FILE\fP to determine what is traced,
+\fI\%CURSES_TRACE_MASK\fP and
+\fI\%CURSES_TRACE_FILE\fP to determine what is traced,
 and where the results are written.
 This is available only when a debug-library is built.
 .IP
 The NetBSD tracing feature is undocumented.
 .PP
-A few ncurses functions are not provided when symbol versioning is used:
+A few \fI\%ncurses\fP functions are not provided when symbol versioning
+is used:
 .RS 4
 .PP
 _nc_tracebits,
index 6878b43e7f7bdcee05ea679f2f968b76a660e2ba..d38078dc0e991f4327efe6e009fa7258ee592619 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_util.3x,v 1.90 2023/12/02 21:10:36 tom Exp $
-.TH curs_util 3X 2023-12-02 "ncurses 6.4" "Library calls"
+.\" $Id: curs_util.3x,v 1.91 2023/12/16 20:32:22 tom Exp $
+.TH curs_util 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -167,10 +167,11 @@ The \fBuse_env\fP routine, if used,
 should be called before \fBinitscr\fP or
 \fBnewterm\fP are called
 (because those compute the screen size).
-It modifies the way \fIncurses\fP treats environment variables
+It modifies the way \fI\%ncurses\fP treats environment variables
 when determining the screen size.
 .bP
-Normally \fIncurses\fP looks first at the terminal database for the screen size.
+Normally \fI\%ncurses\fP looks first at the terminal database for the
+screen size.
 .IP
 If \fBuse_env\fP was called with \fBFALSE\fP for parameter,
 it stops here unless
@@ -181,12 +182,13 @@ If successful,
 it overrides the values from the terminal database.
 .bP
 Finally (unless \fBuse_env\fP was called with \fBFALSE\fP parameter),
-\fBncurses\fP examines the \fILINES\fP or \fI\%COLUMNS\fP environment
+\fI\%ncurses\fP examines the \fILINES\fP or \fI\%COLUMNS\fP environment
 variables,
 using a value in those to override the results
 from the operating system or terminal database.
 .IP
-\fBNcurses\fP also updates the screen size in response to \fBSIGWINCH\fP,
+\fI\%curses\fP also updates the screen size in response to
+\fBSIGWINCH\fP,
 unless overridden by the \fILINES\fP or \fI\%COLUMNS\fP environment
 variables,
 .SS use_tioctl
@@ -194,18 +196,18 @@ The \fBuse_tioctl\fP routine, if used,
 should be called before \fBinitscr\fP or \fBnewterm\fP are called
 (because those compute the screen size).
 After \fBuse_tioctl\fP is called with \fBTRUE\fP as an argument,
-\fBncurses\fP modifies the last step in its computation
+\fI\%ncurses\fP modifies the last step in its computation
 of screen size as follows:
 .bP
 checks if the \fILINES\fP and \fI\%COLUMNS\fP environment variables
 are set to a number greater than zero.
 .bP
-for each, \fBncurses\fP updates the corresponding environment variable
+for each, \fI\%ncurses\fP updates the corresponding environment variable
 with the value that it has obtained via operating system call
 or from the terminal database.
 .bP
-\fBncurses\fP re-fetches the value of the environment variables so that
-it is still the environment variables which set the screen size.
+\fI\%ncurses\fP re-fetches the value of the environment variables so
+that it is still the environment variables which set the screen size.
 .PP
 The \fB\%use_env\fP and \fB\%use_tioctl\fP routines combine as follows.
 .IP
@@ -216,17 +218,17 @@ use_env   use_tioctl      Summary
 _
 TRUE   FALSE   T{
 This is the default behavior.
-\fIncurses\fP uses operating system calls
+\fI\%ncurses\fP uses operating system calls
 unless overridden by \fILINES\fP or \fI\%COLUMNS\fP environment
 variables;
 default.
 T}
 TRUE   TRUE    T{
-\fIncurses\fP updates \fILINES\fP and \fI\%COLUMNS\fP based on operating
-system calls.
+\fI\%ncurses\fP updates \fILINES\fP and \fI\%COLUMNS\fP based on
+operating system calls.
 T}
 FALSE  TRUE    T{
-\fIncurses\fP ignores \fILINES\fP and \fI\%COLUMNS\fP,
+\fI\%ncurses\fP ignores \fILINES\fP and \fI\%COLUMNS\fP,
 using operating system calls to obtain size.
 T}
 .TE
@@ -246,8 +248,8 @@ There are a few caveats:
 .bP
 the data written is a copy of the \fBWINDOW\fP structure,
 and its associated character cells.
-The format differs between the wide-character (\fBncursesw\fP) and
-non-wide (\fBncurses\fP) libraries.
+The format differs between the wide-character (\fI\%ncursesw\fP) and
+non-wide (\fI\%ncurses\fP) libraries.
 You can transfer data between the two, however.
 .bP
 the retrieved window is always created as a top-level window (or pad),
@@ -262,7 +264,7 @@ they will not be colored when the window is refreshed.
 The \fBdelay_output\fP routine inserts an \fIms\fP millisecond pause
 in output.
 Employ this function judiciously when terminal output uses padding,
-because \fIncurses\fP transmits null characters
+because \fI\%ncurses\fP transmits null characters
 (consuming CPU and I/O resources)
 instead of sleeping and requesting resumption from the operating system.
 Padding is used unless:
@@ -272,7 +274,7 @@ the terminal description has \fBnpc\fP (\fBno_pad_char\fP) capability, or
 the environment variable \fB\%NCURSES_NO_PADDING\fP is set.
 .PP
 If padding is not in use,
-\fIncurses\fP uses \fBnapms\fP to perform the delay.
+\fI\%ncurses\fP uses \fBnapms\fP to perform the delay.
 If the value of \fIms\fP exceeds 30,000
 (thirty seconds),
 it is capped at that value.
@@ -325,9 +327,10 @@ merged from all terminal descriptions which have been loaded.
 The \fBuse_extended_names\fP(3X) function controls whether this data is
 loaded when the terminal description is read by the library.
 .SS nofilter/use_tioctl
-The \fBnofilter\fP and \fBuse_tioctl\fP routines are specific to \fBncurses\fP.
+The \fBnofilter\fP and \fBuse_tioctl\fP routines are specific to
+\fI\%ncurses\fP.
 They were not supported on Version 7, BSD or System V implementations.
-It is recommended that any code depending on \fBncurses\fP extensions
+It is recommended that any code depending on \fI\%ncurses\fP extensions
 be conditioned using \fBNCURSES_VERSION\fP.
 .SS putwin/getwin file-format
 The \fBputwin\fP and \fBgetwin\fP functions have several issues with
@@ -346,7 +349,7 @@ Oddly, there are no such functions in the 4.3BSD curses sources.
 .bP
 Most implementations simply dump the binary \fBWINDOW\fP structure to the file.
 These include SVr4 curses, NetBSD and PDCurses,
-as well as older \fBncurses\fP versions.
+as well as older \fI\%ncurses\fP versions.
 This implementation
 (as well as the X/Open variant of Solaris curses, dated 1995)
 uses textual dumps.
@@ -409,12 +412,12 @@ When treating them as \*(``meta\*('' keys
 this implementation returns strings \*(``M\-^@\*('', \*(``M\-^A\*('', etc.
 .PP
 X/Open Curses documents \fBunctrl\fP as declared in \fB<unctrl.h>\fP,
-which \fBncurses\fP does.
-However, \fBncurses\fP' \fB<curses.h>\fP includes \fB<unctrl.h>\fP,
+which \fI\%ncurses\fP does.
+However, \fI\%ncurses\fP' \fB<curses.h>\fP includes \fB<unctrl.h>\fP,
 matching the behavior of SVr4 curses.
 Other implementations may not do that.
 .SS use_env/use_tioctl
-If \fBncurses\fP is configured to provide the sp-functions extension,
+If \fI\%ncurses\fP is configured to provide the sp-functions extension,
 the state of \fBuse_env\fP and \fBuse_tioctl\fP may be updated before
 creating each \fIscreen\fP rather than once only
 (\fBcurs_sp_funcs\fP(3X)).
index 913ad6b8c427be534e80c62b1d55128c82dd3055..e5265ab1e77b5bd1cce0b4c166be95f22f9bb884 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_variables.3x,v 1.34 2023/11/25 14:32:36 tom Exp $
-.TH curs_variables 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_variables.3x,v 1.35 2023/12/16 21:05:52 tom Exp $
+.TH curs_variables 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
 \fBint COLOR_PAIRS;
 \fBint COLORS;
 \fBint COLS;
-\fBint ESCDELAY;
 \fBint LINES;
-\fBint TABSIZE;
 \fBWINDOW * curscr;
-\fBWINDOW * newscr;
 \fBWINDOW * stdscr;
+\fI/* extensions */
+\fBint ESCDELAY;
+\fBint TABSIZE;
+\fBWINDOW * newscr;
 .fi
 .SH DESCRIPTION
 This page summarizes data types,
@@ -103,14 +104,14 @@ constants,
 and variables provided by the \fIcurses\fP library.
 Locate further discussion in \fB\%curses\fP(3X).
 .PP
-Depending on \fIncurses\fP's build-time configuration,
+Depending on \fI\%ncurses\fP's build-time configuration,
 the variables may instead be
 macros (see \fB\%curs_threads\fP(3X) and \fB\%curs_opaque\fP(3X))
 that provide read-only access to the library's state.
 In either case,
 applications should treat them as read-only to avoid
 confusing the library.
-.SS bool, TRUE, FALSE
+.SS \fIbool\fP, TRUE, FALSE
 X/Open Issue 4 \fIcurses\fP (1996) preceded the ISO C99 and ISO C++98
 standards,
 each of which also defined a Boolean data type.
@@ -120,7 +121,7 @@ constants \fBTRUE\fP and \fBFALSE\fP to store its two possible values.
 \fIcurses\fP and \fIterminfo\fP routines frequently return these
 constant integral values indicating failure and success,
 respectively.
-.SS chtype
+.SS \fIchtype\fP
 The \fI\%chtype\fP integral type combines a
 (\*(``narrow\*('',
 8-bit)
@@ -133,7 +134,7 @@ for example,
 \fB\%attron\fP(3X),
 and
 \fB\%inch\fP(3X).
-.SS cchar_t, attr_t
+.SS \fIcchar_t\fP, \fIattr_t\fP
 \fI\%chtype\fP is too small for the standard C library's wide-character
 type,
 \fIwchar_t\fP.
@@ -201,7 +202,7 @@ This object is referred to as the \*(``physical screen\*('' in
 \fB\%curs_refresh\fP(3X) and
 \fB\%curs_outopts\fP(3X).
 .SS newscr
-\fIncurses\fP collects pending updates to the terminal screen in a
+\fI\%ncurses\fP collects pending updates to the terminal screen in a
 \fI\%WINDOW\fP structure named \fB\%newscr\fP.
 .PP
 This object is referred to as the \*(``virtual screen\*('' in the
@@ -222,7 +223,7 @@ Many \fIcurses\fP functions use this window.
 Either \fB\%initscr\fP(3X) or \fB\%newterm\fP(3X) initializes
 \fIcurses\fP.
 .PP
-If \fIncurses\fP is configured to provide separate \fIcurses\fP and
+If \fI\%ncurses\fP is configured to provide separate \fIcurses\fP and
 \fIterminfo\fP libraries,
 most of these variables reside in the \fIcurses\fP library.
 .SH PORTABILITY
@@ -258,7 +259,7 @@ position of tab stops when updating both
 the virtual screen with \fB\%addch\fP(3X) and
 the physical screen with \fB\%mvcur\fP(3X).
 .bP
-\fIncurses\fP uses the value of \fB\%TABSIZE\fP only to update the
+\fI\%ncurses\fP uses the value of \fB\%TABSIZE\fP only to update the
 virtual screen.
 It uses the terminal description's \*(``\fBit\fP\*(''
 (\fB\%init_tabs\fP) capability for computing hardware tabs
@@ -269,7 +270,7 @@ Other implementations differ.
 For instance,
 NetBSD \fIcurses\fP allows \fB\%TABSIZE\fP to be set through an
 environment variable.
-\fIncurses\fP does not.
+\fI\%ncurses\fP does not.
 .IP
 NetBSD \fIcurses\fP does not support hardware tabs;
 it uses the \fB\%init_tabs\fP capability and the \fB\%TABSIZE\fP
@@ -283,9 +284,10 @@ the units for \fB\%ESCDELAY\fP are \fIfifths\fP of milliseconds.
 The default value for AIX's \fB\%ESCDELAY\fP equals 0.1 seconds.
 .bP
 AIX also enforces a limit of 10,000 seconds for \fB\%ESCDELAY\fP;
-\fIncurses\fP does not enforce any upper limit.
+\fI\%ncurses\fP does not enforce any upper limit.
 .PP
-\fIncurses\fP has long used \fB\%ESCDELAY\fP with units of milliseconds,
+\fI\%ncurses\fP has long used \fB\%ESCDELAY\fP with units of
+milliseconds,
 making it impossible to be completely compatible with AIX.
 Consequently,
 most users have decided either to override the value,
index a4cc25242216c53ab5fc7b201e41c5d1cb70f01c..e1f8420787a2bebb4320475844224022e8a23a27 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_window.3x,v 1.43 2023/11/25 14:17:29 tom Exp $
-.TH curs_window 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_window.3x,v 1.44 2023/12/16 20:32:22 tom Exp $
+.TH curs_window 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .de bP
 .ie n  .IP \(bu 4
 .el    .IP \(bu 2
@@ -235,10 +235,11 @@ It simply returned \fBERR\fP when asked to delete a subwindow.
 Solaris X/Open curses does not even make that check,
 and will delete a parent window which still has subwindows.
 .bP
-Since release 4.0 (1996), ncurses maintains a list of windows for each screen,
+Since release 4.0 (1996),
+\fI\%ncurses\fP maintains a list of windows for each screen,
 to ensure that a window has no subwindows before allowing deletion.
 .bP
-NetBSD copied this feature of ncurses in 2003.
+NetBSD copied this feature of \fI\%ncurses\fP in 2003.
 .br
 PDCurses follows the scheme used in Solaris X/Open curses.
 .SH BUGS
index b33f8f09e19eb85ef8fadc51662a868e495827de..8e35221fa667984fc68c0c7a076a32edefed1337 100644 (file)
@@ -29,8 +29,8 @@
 .\"
 .\" Author: Thomas E. Dickey 1997,1999,2000,2005
 .\"
-.\" $Id: default_colors.3x,v 1.47 2023/11/25 14:26:30 tom Exp $
-.TH default_colors 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: default_colors.3x,v 1.48 2023/12/16 20:32:22 tom Exp $
+.TH default_colors 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -93,9 +93,9 @@ The following are equivalent:
 .I assume_default_colors(\-1,\-1);
 .RE
 .PP
-These are ncurses extensions.
+These are \fI\%ncurses\fP extensions.
 For other curses implementations, color
-number \-1 does not mean anything, just as for ncurses before a
+number \-1 does not mean anything, just as for \fI\%ncurses\fP before a
 successful call of \fBuse_default_colors\fP or \fBassume_default_colors\fP.
 .PP
 Other curses implementations do not allow an application to modify color pair 0.
@@ -106,7 +106,7 @@ If your application does not use either
 .B use_default_colors
 or
 .B assume_default_colors
-ncurses will paint a white foreground (text) with black background
+\fI\%ncurses\fP will paint a white foreground (text) with black background
 for color pair 0.
 .SH RETURN VALUE
 These functions return the integer \fBERR\fP upon failure
@@ -140,7 +140,7 @@ a different problem: support for applications which would use
 environment variables and other configuration to bypass curses'
 notion of the terminal's default colors, setting specific values.
 .SH PORTABILITY
-These routines are specific to ncurses.
+These routines are specific to \fI\%ncurses\fP.
 They were not supported on
 Version 7, BSD or System V implementations.
 It is recommended that
index 48e7b61a414980c0e995b8b29243ab4a2308dfff..2bbecbdc9dd5a858cdfc37552d225491f20aebab 100644 (file)
@@ -29,8 +29,8 @@
 .\"
 .\" Author: Thomas E. Dickey 1997
 .\"
-.\" $Id: define_key.3x,v 1.39 2023/11/25 14:26:30 tom Exp $
-.TH define_key 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: define_key.3x,v 1.40 2023/12/16 20:32:22 tom Exp $
+.TH define_key 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .SH NAME
 \fB\%define_key\fP \-
 define a \fIcurses\fR keycode
@@ -43,7 +43,8 @@ define a \fIcurses\fR keycode
 .SH DESCRIPTION
 This is an extension to the \fIcurses\fP library.
 It permits an application to define keycodes with their corresponding control
-strings, so that the \fIncurses\fP library will interpret them just as it would
+strings,
+so that the \fI\%ncurses\fP library will interpret them just as it would
 the predefined codes in the terminfo database.
 .PP
 If \fIdefinition\fP is \fBNULL\fP,
@@ -58,7 +59,7 @@ otherwise \fBERR\fP is returned.
 data to store the definition.
 If no error is detected, \fBOK\fP is returned.
 .SH PORTABILITY
-These routines are specific to \fIncurses\fP.
+These routines are specific to \fI\%ncurses\fP.
 They were not supported on
 Version 7, BSD or System V implementations.
 It is recommended that
index 0ce6bbb4e6e485faa1e38e9c580f26be0a874bac..511952933546fdc4804c08fb43983336b48e3420 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: form.3x,v 1.50 2023/11/25 13:59:44 tom Exp $
-.TH form 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: form.3x,v 1.51 2023/12/16 20:32:22 tom Exp $
+.TH form 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -89,7 +89,7 @@ rendering of fields already created.
 The following table lists each \fBform\fP routine and the name of
 the manual page on which it is described.
 Routines flagged with \*(``*\*(''
-are ncurses-specific, not present in SVr4.
+are \fI\%ncurses\fP-specific, not present in SVr4.
 .PP
 .TS
 l l
@@ -226,19 +226,20 @@ A form facility was documented in SVr4.2's
 .PP
 It is not part of X/Open Curses.
 .PP
-Aside from ncurses, there are few implementations:
+Aside from \fI\%ncurses\fP, there are few implementations:
 .bP
 systems based on SVr4 source code, e.g., Solaris.
 .bP
 NetBSD curses.
 .PP
-A few functions in this implementation are extensions added for ncurses,
+A few functions in this implementation are extensions added for
+\fI\%ncurses\fP,
 but not provided by other implementations, e.g.,
 \fBform_driver_w\fP,
 \fBunfocus_current_field\fP.
 .SH AUTHORS
 Juergen Pfeifer.
-Manual pages and adaptation for ncurses by Eric
+Manual pages and adaptation for \fI\%ncurses\fP by Eric
 S. Raymond.
 .SH SEE ALSO
 \fBcurses\fP(3X) and related pages whose names begin \*(``form_\*('' for
index fde890e3ef6d6597e3f1057e9f70d2383c0e5716..ec883b6d343173fcc8a68915c15737cec6be56a1 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: form_field_buffer.3x,v 1.42 2023/11/25 13:58:47 tom Exp $
-.TH form_field_buffer 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: form_field_buffer.3x,v 1.43 2023/12/16 20:32:22 tom Exp $
+.TH form_field_buffer 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -136,7 +136,7 @@ These routines emulate the System V forms library.
 They were not supported on
 Version 7 or BSD versions.
 .PP
-The \fBset_max_field\fP function checks for an ncurses extension
+The \fBset_max_field\fP function checks for an \fI\%ncurses\fP extension
 \fBO_INPUT_FIELD\fP which allows a dynamic field to shrink if the new
 limit is smaller than the current field size.
 .SH AUTHORS
index c037d59ef305a42076badced67f7f33a29818349..0a4f2e99e3278b0821c0745ab2f4416410e8e6c1 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: form_field_validation.3x,v 1.50 2023/11/25 13:58:47 tom Exp $
-.TH form_field_validation 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: form_field_validation.3x,v 1.51 2023/12/16 20:32:22 tom Exp $
+.TH form_field_validation 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -184,7 +184,7 @@ where \fIa\fP, \fIb\fP, \fIc\fP, and \fId\fP are numbers in the range 0 to 255.
 Trailing blanks in the buffer are ignored.
 The address itself is not validated.
 .PP
-This is an ncurses extension;
+This is an \fI\%ncurses\fP extension;
 this field type may not be available in other curses implementations.
 .SH RETURN VALUE
 The functions \fBfield_type\fP and \fBfield_arg\fP return \fBNULL\fP on error.
index a4e94f37d77e750f0fb411ab673469e834a8f964..9d1f2d86a117d5bbbc2fba952ac2871325e7792f 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: form_page.3x,v 1.34 2023/11/25 13:58:47 tom Exp $
-.TH form_page 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: form_page.3x,v 1.35 2023/12/16 20:32:22 tom Exp $
+.TH form_page 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .SH NAME
 \fBform_page\fP \-
 set and get form page number
@@ -88,7 +88,8 @@ These routines emulate the System V forms library.
 They were not supported on
 Version 7 or BSD versions.
 .PP
-The \fBunfocus_current_field\fP function is an ncurses extension.
+The \fBunfocus_current_field\fP function is an \fI\%ncurses\fP
+extension.
 .SH AUTHORS
 Juergen Pfeifer.
 Manual pages and adaptation for new curses by Eric S. Raymond.
index 68cfb8abd376fd9e01f3623e2a743a0c2585edcd..e1d6e4803d9702b9da1813439bb41a1532ade451 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: form_requestname.3x,v 1.32 2023/11/25 13:58:47 tom Exp $
-.TH form_requestname 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: form_requestname.3x,v 1.33 2023/12/16 20:32:22 tom Exp $
+.TH form_requestname 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .SH NAME
 \fBform_request_by_name\fP,
 \fBform_request_name\fP \-
@@ -53,7 +53,7 @@ to \fBE_BAD_ARGUMENT\fP.
 \fBform_request_by_name\fP returns \fBE_NO_MATCH\fP on error.
 It does not set \fBerrno\fP.
 .SH PORTABILITY
-These routines are specific to ncurses.
+These routines are specific to \fI\%ncurses\fP.
 They were not supported on
 Version 7, BSD or System V implementations.
 It is recommended that
index 291fe216318a7867b1dc9921264ba41a583714a5..ffe2df3bc73b010b03c129bdb25ea2e53a637448 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: infocmp.1m,v 1.101 2023/12/02 20:49:04 tom Exp $
-.TH @INFOCMP@ 1M 2023-12-02 "ncurses 6.4" "User commands"
+.\" $Id: infocmp.1m,v 1.102 2023/12/16 20:32:22 tom Exp $
+.TH @INFOCMP@ 1M 2023-12-16 "ncurses 6.4" "User commands"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -270,7 +270,7 @@ superfluous.
 \fB@INFOCMP@\fP will flag any other \fIterminal-type use=\fP fields that
 were not needed.
 .SS Changing Databases [\-A \fIdirectory\fR] [\-B \fIdirectory\fR]
-Like other \fBncurses\fP utilities,
+Like other \fI\%ncurses\fP utilities,
 \fB@INFOCMP@\fP looks for the terminal descriptions in several places.
 You can use the \fI\%TERMINFO\fP and \fI\%TERMINFO_DIRS\fP environment
 variables to override the compiled-in default list of places to search.
@@ -321,9 +321,10 @@ for a given terminal type.
 The tables are all declared static, and are named according to the type
 and the name of the corresponding terminal entry.
 .sp
-Before ncurses 5.0, the split between the \fB\-e\fP and \fB\-E\fP
-options was not needed; but support for extended names required making
-the arrays of terminal capabilities separate from the TERMTYPE structure.
+Before \fI\%ncurses\fP 5.0,
+the split between the \fB\-e\fP and \fB\-E\fP options was not needed;
+but support for extended names required making the arrays of terminal
+capabilities separate from the TERMTYPE structure.
 .TP 5
 \fB\-e\fP
 Dump the capabilities of the given terminal as a C initializer for a
@@ -551,14 +552,16 @@ since it excludes the inferences that \fB@INFOCMP@\fP makes to fill in missing
 data.
 .TP 5
 \fB\-V\fP
-reports the version of ncurses which was used in this program, and exits.
+reports the version of \fI\%ncurses\fP which was used in this program,
+and exits.
 .TP 5
 \fB\-v\fP \fIn\fP
 prints out tracing information on standard error as the program runs.
 .IP
 The optional parameter \fIn\fP is a number from 1 to 10, inclusive,
 indicating the desired level of detail of information.
-If ncurses is built without tracing support, the optional parameter is ignored.
+If \fI\%ncurses\fP is built without tracing support,
+the optional parameter is ignored.
 .TP
 \fB\-W\fP
 By itself, the \fB\-w\fP option will not force long strings to be wrapped.
@@ -618,7 +621,7 @@ Tony Hansen (AT&T) wrote the first \fBinfocmp\fP in early 1984,
 for System V Release 3.
 .PP
 Eric Raymond used the AT&T documentation in 1995 to provide an equivalent
-\fB@INFOCMP@\fP for ncurses.
+\fB@INFOCMP@\fP for \fI\%ncurses\fP.
 In addition, he added a few new features such as:
 .bP
 the \fB\-e\fP option, to support \fIfallback\fP
@@ -633,9 +636,9 @@ user-defined capabilities.
 For a complete list, see the \fIEXTENSIONS\fP section.
 .PP
 In 2010, Roy Marples provided an \fBinfocmp\fP program for NetBSD.
-It is less capable than the SVr4 or ncurses versions
+It is less capable than the SVr4 or \fI\%ncurses\fP versions
 (e.g., it lacks the sorting options documented in X/Open),
-but does include the \fB\-x\fP option adapted from ncurses.
+but does include the \fB\-x\fP option adapted from \fI\%ncurses\fP.
 .SH BUGS
 The \fB\-F\fP option of \fB\%@INFOCMP@\fP(1M) should be a
 \fB\%@TOE@\fP(1M) mode.
index 597fbb1be350a53038b411e79b341d33cec47ff6..c3c98b3968449ede4c34a7319dd4fc6b26da288e 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: infotocap.1m,v 1.37 2023/11/25 14:32:36 tom Exp $
-.TH @INFOTOCAP@ 1M 2023-11-25 "ncurses 6.4" "User commands"
+.\" $Id: infotocap.1m,v 1.39 2023/12/10 14:12:43 tom Exp $
+.TH @INFOTOCAP@ 1M 2023-12-10 "ncurses 6.4" "User commands"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -43,8 +43,7 @@
 .ds d @TERMINFO@
 .SH NAME
 \fB\%@INFOTOCAP@\fP \-
-convert a \fI\%terminfo\fR description into a \fI\%termcap\fR
-description
+convert a \fI\%terminfo\fR description into a \fI\%termcap\fR description
 .SH SYNOPSIS
 .B @INFOTOCAP@
 .RI [ tic-option ]
index 31131541883edbfc6f5269714c3068fb08a26d19..26bf537505c42e85041d4018407d8447bfe543b2 100644 (file)
@@ -29,8 +29,8 @@
 .\"
 .\" Author: Thomas E. Dickey 2003
 .\"
-.\" $Id: key_defined.3x,v 1.31 2023/11/25 14:26:30 tom Exp $
-.TH key_defined 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: key_defined.3x,v 1.32 2023/12/16 20:32:22 tom Exp $
+.TH key_defined 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .SH NAME
 \fB\%key_defined\fP \-
 test whether a \fIcurses\fR keycode is defined
@@ -50,7 +50,7 @@ If no keycode is bound, zero is returned.
 If the string conflicts with longer strings
 which are bound to keys, \-1 is returned.
 .SH PORTABILITY
-This routine is specific to \fIncurses\fP.
+This routine is specific to \fI\%ncurses\fP.
 It was not supported on
 Version 7, BSD or System V implementations.
 It is recommended that
index f72cd664db0bd87aa9d835565e8f406739456a20..ca646d1abc17bdf992b4b1f47c5defb5d2c1bebc 100644 (file)
@@ -29,8 +29,8 @@
 .\"
 .\" Author: Thomas E. Dickey 1999
 .\"
-.\" $Id: keybound.3x,v 1.33 2023/11/25 14:26:30 tom Exp $
-.TH keybound 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: keybound.3x,v 1.34 2023/12/16 20:32:22 tom Exp $
+.TH keybound 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .SH NAME
 \fB\%keybound\fP \-
 get definition of \fIcurses\fR keycode
@@ -53,7 +53,7 @@ through multiple definitions, counting from zero.
 When successful,
 the function returns a string which must be freed by the caller.
 .SH PORTABILITY
-This routine is specific to \fIncurses\fP.
+This routine is specific to \fI\%ncurses\fP.
 It was not supported on
 Version 7, BSD or System V implementations.
 It is recommended that
index b2e402d1f9422f38e82b75d7be42aa8cfde02c3c..0fe907475edaf91d14d9a3e5cc774b7c5b6c596a 100644 (file)
@@ -29,8 +29,8 @@
 .\"
 .\" Author: Thomas E. Dickey 1997
 .\"
-.\" $Id: keyok.3x,v 1.37 2023/11/25 14:26:30 tom Exp $
-.TH keyok 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: keyok.3x,v 1.38 2023/12/16 20:32:22 tom Exp $
+.TH keyok 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .SH NAME
 \fB\%keyok\fP \-
 enable or disable a \fIcurses\fR keycode
@@ -52,7 +52,7 @@ If the \fIenable\fP parameter is true, then the key must have been disabled,
 and vice versa.
 Otherwise, the function returns \fBOK\fP.
 .SH PORTABILITY
-This routine is specific to \fIncurses\fP.
+This routine is specific to \fI\%ncurses\fP.
 It was not supported on
 Version 7, BSD or System V implementations.
 It is recommended that
index fad145c0490b2ae52f2de39137ca8114b56400f6..e057fa5ff9bb35520411362e9565206ecb1ed99f 100644 (file)
@@ -29,8 +29,8 @@
 .\"
 .\" Author: Thomas E. Dickey
 .\"
-.\" $Id: legacy_coding.3x,v 1.23 2023/11/25 14:26:30 tom Exp $
-.TH legacy_coding 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: legacy_coding.3x,v 1.24 2023/12/16 20:32:22 tom Exp $
+.TH legacy_coding 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .SH NAME
 \fB\%use_legacy_coding\fP \-
 override \fIcurses\fR locale encoding checks
@@ -68,9 +68,9 @@ or the \fIlevel\fP parameter is out of range,
 the function returns \fBERR\fP.
 Otherwise, it returns the previous level: \fB0\fP, \fB1\fP or \fB2\fP.
 .SH PORTABILITY
-This routine is specific to ncurses.
+This routine is specific to \fI\%ncurses\fP.
 It was not supported on Version 7, BSD or System V implementations.
-It is recommended that any code depending on ncurses extensions
+It is recommended that any code depending on \fI\%ncurses\fP extensions
 be conditioned using NCURSES_VERSION.
 .SH AUTHORS
 Thomas Dickey (to support lynx's font-switching feature).
index 1616ae18a38b0703561b04cae677c96643fa3113..433ed5e40358c75ab07c65c9a846ddec8bb0fc34 100644 (file)
@@ -26,7 +26,7 @@
 # use or other dealings in this Software without prior written               #
 # authorization.                                                             #
 ##############################################################################
-# $Id: man_db.renames.in,v 1.61 2023/11/25 14:32:36 tom Exp $
+# $Id: man_db.renames.in,v 1.63 2023/12/17 23:52:59 tom Exp $
 # Manual-page renamings for the man_db program
 #
 # Files:
@@ -170,6 +170,88 @@ tset.1                             tset.1
 user_caps.5                    user_caps.5
 wresize.3x                     wresize.3ncurses
 #
+# Supplementary topics in the foregoing pages:
+add_wch.3x                     add_wch.3ncurses
+addch.3x                       addch.3ncurses
+assume_default_colors.3x       assume_default_colors.3ncurses
+attr_on.3x                     attr_on.3ncurses
+attron.3x                      attron.3ncurses
+baudrate.3x                    baudrate.3ncurses
+bkgd.3x                                bkgd.3ncurses
+bkgrnd.3x                      bkgrnd.3ncurses
+clearok.3x                     clearok.3ncurses
+curs_set.3x                    curs_set.3ncurses
+curscr.3x                      curscr.3ncurses
+def_prog_mode.3x               def_prog_mode.3ncurses
+def_shell_mode.3x              def_shell_mode.3ncurses
+del_curterm.3x                 del_curterm.3ncurses
+delay_output.3x                        delay_output.3ncurses
+delscreen.3x                   delscreen.3ncurses
+derwin.3x                      derwin.3ncurses
+doupdate.3x                    doupdate.3ncurses
+endwin.3x                      endwin.3ncurses
+filter.3x                      filter.3ncurses
+flushinp.3x                    flushinp.3ncurses
+get_wch.3x                     get_wch.3ncurses
+getcchar.3x                    getcchar.3ncurses
+getch.3x                       getch.3ncurses
+idcok.3x                       idcok.3ncurses
+idlok.3x                       idlok.3ncurses
+immedok.3x                     immedok.3ncurses
+in_wch.3x                      in_wch.3ncurses
+inch.3x                                inch.3ncurses
+initscr.3x                     initscr.3ncurses
+keypad.3x                      keypad.3ncurses
+leaveok.3x                     leaveok.3ncurses
+longname.3x                    longname.3ncurses
+meta.3x                                meta.3ncurses
+move.3x                                move.3ncurses
+mvcur.3x                       mvcur.3ncurses
+mvwin.3x                       mvwin.3nwinses
+newpad.3x                      newpad.3ncurses
+newterm.3x                     newterm.3ncurses
+newwin.3x                      newwin.3ncurses
+nodelay.3x                     nodelay.3ncurses
+notimeout.3x                   notimeout.3ncurses
+refresh.3x                     refresh.3ncurses
+reset_shell_mode.3x            reset_shell_mode.3ncurses
+restartterm.3x                 restartterm.3ncurses
+scrollok.3x                    scrollok.3ncurses
+set_curterm.3x                 set_curterm.3ncurses
+set_term.3x                    set_term.3nses
+setcchar.3x                    setcchar.3ncurses
+setupterm.3x                   setupterm.3ncurses
+slk_init.3x                    slk_init.3ncurses
+slk_touch.3x                   slk_touch.3ncurses
+start_color.3x                 start_color.3ncurses
+subwin.3x                      subwin.3ncurses
+syncok.3x                      syncok.3ncurses
+terminfo.3x                    terminfo.3ncurses
+tigetstr.3x                    tigetstr.3ncurses
+tparm.3x                       tparm.3ncurses
+tputs.3x                       tputs.3ncurses
+unctrl.3x                      unctrl.3ncurses
+use_default_colors.3x          use_default_colors.3ncurses
+use_env.3x                     use_env.3ncurses
+use_extended_names.3x          use_extended_names.3ncurses
+use_legacy_coding.3x           use_legacy_coding.3ncurses
+vidputs.3x                     vidputs.3ncurses
+wadd_wch.3x                    wadd_wch.3ncurses
+waddch.3x                      waddch.3ncurses
+waddstr.3x                     waddstr.3ncurses
+waddwstr.3x                    waddwstr.3ncurses
+wbkgdset.3x                    wbkgdset.3ncurses
+wget_wch.3x                    wget_wch.3ncurses
+wgetch.3x                      wgetch.3ncurses
+wgetstr.3x                     wgetstr.3ncurses
+wins_wch.3x                    wins_wch.3ncurses
+winsch.3x                      winsch.3ncurses
+wmove.3x                       wmove.3ncurses
+wnoutrefresh.3x                        wnoutrefresh.3ncurses
+wrefresh.3x                    wrefresh.3ncurses
+wsetscrreg.3x                  wsetscrreg.3ncurses
+wtimeout.3x                    wtimeout.3ncurses
+#
 # Other:
 getty.1                                getty.8
 scanf.3                                scanf.3
index 5bb9963df20ec333596f997f72082af3f93eb37e..94732df5f7bbc6e6558a0082268ad6ebe5357dce 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: manhtml.aliases,v 1.28 2023/11/19 00:14:00 tom Exp $
+# $Id: manhtml.aliases,v 1.29 2023/12/18 00:27:56 tom Exp $
 #***************************************************************************
 # Copyright 2019-2022,2023 Thomas E. Dickey                                *
 # Copyright 2013,2017 Free Software Foundation, Inc.                       *
@@ -34,15 +34,20 @@ assume_default_colors(3X)   default_colors(3X)
 attr_on(3X)            curs_attr(3X)
 attron(3X)             curs_attr(3X)
 baudrate(3X)           curs_termattrs(3X)
+bkgd(3X)               curs_bkgd(3X)
+bkgrnd(3X)             curs_bkgrnd(3X)
 clearok(3X)            curs_outopts(3X)
 curs_set(3X)           curs_kernel(3X)
+curscr(3X)             curs_variables(3X)
 def_prog_mode(3X)      curs_kernel(3X)
 def_shell_mode(3X)     curs_kernel(3X)
+del_curterm(3X)                curs_terminfo(3X)
 delay_output(3X)       curs_util(3X)
 delscreen(3X)          curs_initscr(3X)
 doupdate(3X)           curs_refresh(3X)
 endwin(3X)             curs_initscr(3X)
 filter(3X)             curs_util(3X)
+flushinp(3X)           curs_util(3X)
 get_wch(3X)            curs_get_wch(3X)
 getcchar(3X)           curs_getcchar(3X)
 getch(3X)              curs_getch(3X)
@@ -55,6 +60,7 @@ is_scrollok(3X)               curs_opaque(3X)
 keypad(3X)             curs_inopts(3X)
 longname(3X)           curs_termattrs(3X)
 meta(3X)               curs_inopts(3X)
+move(3X)               curs_move(3X)
 mvcur(3X)              curs_terminfo(3X)
 mvwin(3X)              curs_window(3X)
 newterm(3X)            curs_initscr(3X)
@@ -68,6 +74,8 @@ setcchar(3X)          curs_getcchar(3X)
 setupterm(3X)          curs_terminfo(3X)
 slk_init(3X)           curs_slk(3X)
 slk_touch(3X)          curs_slk(3X)
+start_color(3X)                curs_color(3X)
+terminfo(3X)           curs_terminfo(3X)
 tic(1)                 tic(1M)
 tigetstr(3X)           curs_terminfo(3X)
 tparm(3X)              curs_terminfo(3X)
@@ -79,9 +87,12 @@ use_legacy_coding(3X)        legacy_coding(3X)
 vidputs(3X)            curs_terminfo(3X)
 wadd_wch(3X)           curs_add_wch(3X)
 waddch(3X)             curs_addch(3X)
+waddstr(3X)            curs_addstr(3X)
+waddwstr(3X)           curs_addwstr(3X)
 wbkgdset(3X)           curs_bkgd(3X)
 wget_wch(3X)           curs_get_wch(3X)
 wgetch(3X)             curs_getch(3X)
+wgetstr(3X)            curs_getstr(3X)
 wins_wch(3X)           curs_ins_wch(3X)
 winsch(3X)             curs_insch(3X)
 wmove(3X)              curs_move(3X)
index 5874b27a560d28ee156104923305fb021d545ad5..d800272aea3a0e79625bbc26f421848a5db609f6 100644 (file)
@@ -1,7 +1,7 @@
-# $Id: manhtml.externs,v 1.15 2021/12/26 00:02:52 tom Exp $
+# $Id: manhtml.externs,v 1.18 2023/12/18 00:35:38 tom Exp $
 # Items in this list will not be linked by man2html
 #***************************************************************************
-# Copyright 2019-2020,2021 Thomas E. Dickey                                *
+# Copyright 2019-2021,2023 Thomas E. Dickey                                *
 # Copyright 2013,2017 Free Software Foundation, Inc.                       *
 #                                                                          *
 # Permission is hereby granted, free of charge, to any person obtaining a  *
 # sale, use or other dealings in this Software without prior written       *
 # authorization.                                                           *
 #***************************************************************************
-ADACURSES(1)
 COLOR_PAIR(1)
 COLOR_PAIR(2)
-COLOR_PAIR(3)
 atoi(3)
 conflict(1)
 cron(1)
@@ -59,10 +57,13 @@ scanf(3)
 screen(1)
 setlocale(3)
 sh(1)
+scanf(3)
+scanf(3S)
 sscanf(3)
 stdio(3)
 stty(1)
 system(3)
+swprintf(3)
 termios(3)
 tmux(1)
 tty(4)
@@ -70,6 +71,7 @@ ttys(5)
 vi(1)
 vprintf(3)
 vscanf(3)
+vsscanf(3)
 wcwidth(3)
 write(2)
 xterm(1)
index 601ec050c68b168f827558132e8b42d883254b01..247ebcfbec390de4be4d212326adafbf6c5a29e8 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: menu.3x,v 1.41 2023/11/25 13:59:44 tom Exp $
-.TH menu 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: menu.3x,v 1.42 2023/12/16 20:32:22 tom Exp $
+.TH menu 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -202,14 +202,14 @@ A menu facility was documented in SVr4.2's
 .PP
 It is not part of X/Open Curses.
 .PP
-Aside from ncurses, there are few implementations:
+Aside from \fI\%ncurses\fP, there are few implementations:
 .bP
 systems based on SVr4 source code, e.g., Solaris.
 .bP
 NetBSD curses.
 .SH AUTHORS
 Juergen Pfeifer.
-Manual pages and adaptation for ncurses by Eric S. Raymond.
+Manual pages and adaptation for \fI\%ncurses\fP by Eric S. Raymond.
 .SH SEE ALSO
 \fB\%curses\fP(3X) and related pages whose names begin \*(``menu_\*(''
 for detailed descriptions of the entry points.
index 19ab95e53b623273217851bf7d826907252bee50..f3a8f02fb5202cfa7cadf87b082c9b30b0ab0392 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: menu_driver.3x,v 1.43 2023/11/25 13:58:47 tom Exp $
-.TH menu_driver 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: menu_driver.3x,v 1.44 2023/12/16 20:32:22 tom Exp $
+.TH menu_driver 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .de bP
 .ie n  .IP \(bu 4
 .el    .IP \(bu 2
@@ -195,7 +195,7 @@ The menu driver could not process the request.
 These routines emulate the System V menu library.
 They were not supported on
 Version 7 or BSD versions.
-The support for mouse events is ncurses specific.
+The support for mouse events is \fI\%ncurses\fP specific.
 .SH AUTHORS
 Juergen Pfeifer.
 Manual pages and adaptation for new curses by Eric S. Raymond.
index 897fd73540e17e87f9236739123aa554b4b1d9f8..56105ea1704ee4f579213e0c7b719c76df2f2333 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: menu_requestname.3x,v 1.30 2023/11/25 13:58:47 tom Exp $
-.TH menu_requestname 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: menu_requestname.3x,v 1.31 2023/12/16 20:32:22 tom Exp $
+.TH menu_requestname 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .SH NAME
 \fBmenu_request_by_name\fP,
 \fBmenu_request_name\fP \-
@@ -54,7 +54,7 @@ and sets \fBerrno\fP to \fBE_BAD_ARGUMENT\fP.
 \fBmenu_request_by_name\fP returns \fBE_NO_MATCH\fP on error.
 It does not set \fBerrno\fP.
 .SH PORTABILITY
-These routines are specific to ncurses.
+These routines are specific to \fI\%ncurses\fP.
 They were not supported on
 Version 7, BSD or System V implementations.
 It is recommended that
index 06a9b03ba0ee750475d96fde43e63f367a60c74d..94eab424563b14a4e8162a536b3271da0dbae841 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: menu_spacing.3x,v 1.34 2023/11/25 13:58:47 tom Exp $
-.TH menu_spacing 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: menu_spacing.3x,v 1.35 2023/12/16 20:32:22 tom Exp $
+.TH menu_spacing 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .SH NAME
 \fBset_menu_spacing\fP,
 \fBmenu_spacing\fP \-
@@ -80,7 +80,7 @@ Both routines return \fBE_OK\fP on success.
 \fBE_POSTED\fP if the menu is posted, or \fBE_BAD_ARGUMENT\fP if one of the
 spacing values is out of range.
 .SH PORTABILITY
-These routines are specific to ncurses.
+These routines are specific to \fI\%ncurses\fP.
 They were not supported on
 Version 7, BSD or System V implementations.
 It is recommended that
index c8a58fac8cbebcea4ab8988b98b5a13094d59ec9..53b83ab26875b15f1476e76f0dd9c408e8bca624 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: ncurses.3x,v 1.185 2023/12/03 00:14:35 tom Exp $
-.TH ncurses 3X 2023-12-02 "ncurses 6.4" "Library calls"
+.\" $Id: ncurses.3x,v 1.187 2023/12/17 23:44:14 tom Exp $
+.TH ncurses 3X 2023-12-17 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -40,6 +40,7 @@
 .ie t .ds '' ''
 .el   .ds '' ""
 .\}
+.
 .de bP
 .ie n  .IP \(bu 4
 .el    .IP \(bu 2
@@ -54,19 +55,20 @@ character-cell terminal interface with optimized output
 \fB#include <curses.h>
 .fi
 .SH DESCRIPTION
-The \fBncurses\fP library routines give the user a terminal-independent method
-of updating character screens with reasonable optimization.
-This implementation is \*(``new curses\*('' (ncurses) and
+The \fI\%ncurses\fP library routines give the user a
+terminal-independent method of updating character screens with
+reasonable optimization.
+This implementation is \*(``new curses\*('' (\fI\%ncurses\fP) and
 is the approved replacement for
 4.4BSD classic curses, which has been discontinued.
-This describes \fBncurses\fP
+This describes \fI\%ncurses\fP
 version @NCURSES_MAJOR@.@NCURSES_MINOR@ (patch @NCURSES_PATCH@).
 .PP
-The \fBncurses\fP library emulates the curses library of
+The \fI\%ncurses\fP library emulates the curses library of
 System V Release 4 Unix (\*(``SVr4\*(''),
 and XPG4 (X/Open Portability Guide) curses (also known as XSI curses).
 XSI stands for X/Open System Interfaces Extension.
-The \fBncurses\fP library is freely redistributable in source form.
+The \fI\%ncurses\fP library is freely redistributable in source form.
 .PP
 \fI\%ncurses\fP man pages employ several sections to clarify matters of
 usage and interoperability with other \fIcurses\fP implementations.
@@ -106,7 +108,7 @@ The ncurses_g library generates trace logs
 that describe curses actions.
 See also the section on \fBALTERNATE CONFIGURATIONS\fP.
 .PP
-The \fBncurses\fP package supports: overall screen, window and pad
+The \fI\%ncurses\fP package supports: overall screen, window and pad
 manipulation; output to windows and pads; reading terminal input; control over
 terminal and \fBcurses\fP input and output options; environment query
 routines; color manipulation; use of soft label keys; terminfo capabilities;
@@ -158,209 +160,325 @@ This can be done by executing the \fB@TPUT@ init\fP command
 after the shell environment variable \fITERM\fP has been exported.
 (The BSD-style \fB\%@TSET@\fP(1) utility also performs this function.)
 See subsection \*(``Tabs and Initialization\*('' of \fBterminfo\fP(5).
-.SS Datatypes
-The \fBncurses\fP library permits manipulation of data structures,
-called \fIwindows\fP, which can be thought of as two-dimensional
-arrays of characters representing all or part of a CRT screen.
-A default window called \fBstdscr\fP, which is the size of the terminal
-screen, is supplied.
-Others may be created with \fBnewwin\fP.
-.PP
-Note that \fBcurses\fP does not handle overlapping windows, that's done by
-the \fBpanel\fP(3X) library.
-This means that you can either use
-\fBstdscr\fP or divide the screen into tiled windows and not using
-\fBstdscr\fP at all.
-Mixing the two will result in unpredictable, and undesired, effects.
-.PP
-Windows are referred to by variables declared as \fBWINDOW *\fP.
-These data structures are manipulated with routines described here and
-elsewhere in the \fBncurses\fP manual pages.
-Among those, the most basic
-routines are \fBmove\fP and \fBaddch\fP.
-More general versions of
-these routines are included with names beginning with \fBw\fP,
-allowing the user to specify a window.
-The routines not beginning
-with \fBw\fP affect \fBstdscr\fP.
-.PP
-After using routines to manipulate a window, \fBrefresh\fP(3X) is called,
-telling \fBcurses\fP to make the user's CRT screen look like
-\fBstdscr\fP.
-The characters in a window are actually of type
-\fBchtype\fP, (character and attribute data) so that other information
-about the character may also be stored with each character.
+.SS Overview
+A
+.I curses
+library abstracts the terminal screen by representing all or part of it
+as a
+.I \%WINDOW
+data structure.
+A
+.I window
+is a rectangular grid of character cells,
+addressed by row and column coordinates
+.RI ( y ,
+.IR x ),
+with the upper left corner as (0, 0).
+A window called \fB\%stdscr\fP,
+the same size as the terminal screen,
+is always available.
+Create others with \fB\%newwin\fP(3X).
+.PP
+A
+.I curses
+library does not manage overlapping windows.
+(See \fBpanel\fP(3X) if you desire this.)
+You can either use \fB\%stdscr\fP to manage one screen-filling window,
+or tile the screen into non-overlapping windows and not use
+\fB\%stdscr\fP at all.
+Mixing the two approaches will result in unpredictable,
+and undesired,
+effects.
+.PP
+Functions permit manipulation of a window and the
+.I cursor
+identifying the cell within it at which the next output operation will
+occur.
+Among those,
+the most basic are \fBmove\fP(3X) and \fB\%addch\fP(3X):
+these place the cursor and write a character to
+.BR \%stdscr ,
+respectively.
+As a rule,
+window-addressing functions feature names prefixed
+(or infixed,
+see below)
+with \*(``w\*('';
+these allow the user to specify a pointer to a
+.I \%WINDOW.
+Counterparts not thus prefixed
+(or infixed)
+affect \fB\%stdscr\fP.
+Because moving the cursor prior to another operation is so common,
+.I curses
+generally also provides functions with a \*(``mv\*('' prefix as a
+convenience.
+Thus,
+the library defines all of
+\fB\%addch\fP,
+\fB\%waddch\fP,
+\fB\%mvaddch\fP,
+and
+\fB\%mvwaddch\fP.
+When both prefixes are present,
+the order of arguments is a
+.I \%WINDOW
+pointer first,
+then a
+.I y
+and
+.I x
+coordinate pair.
+.PP
+Updating the terminal screen with every
+.I curses
+call can cause unpleasant flicker or inefficient use of the
+communications channel to the device.
+Therefore,
+after using
+.I curses
+functions to accumulate a set of desired updates that make sense to
+present together,
+call \fB\%refresh\fP(3X) to tell the library to make the user's screen
+look like \fBstdscr\fP.
+.I \%ncurses
+.\" X/Open Curses Issue 7 assumes some optimization will be done, but
+.\" does not mandate it in any way.
+.I optimizes
+its output by computing a minimal number of operations to mutate the
+screen from its state at the previous refresh to the new one.
+Effective optimization demands accurate information about the terminal
+device:
+the management of such information is the province of the
+\fB\%terminfo\fP(3X) API,
+a feature of every standard
+.I curses
+implementation.
 .PP
 Special windows called \fIpads\fP may also be manipulated.
-These are windows
-which are not constrained to the size of the screen and whose contents need not
-be completely displayed.
-See \fBcurs_pad\fP(3X) for more information.
-.PP
-In addition to drawing characters on the screen, video attributes and colors
-may be supported, causing the characters to show up in such modes as
-underlined, in reverse video, or in color on terminals that support such
-display enhancements.
-Line drawing characters may be specified to be output.
-On input, \fBcurses\fP is also able to translate arrow and function keys that
-transmit escape sequences into single values.
-The video attributes, line
-drawing characters, and input values use names, defined in \fB<curses.h>\fP,
-such as \fBA_REVERSE\fP, \fBACS_HLINE\fP, and \fBKEY_LEFT\fP.
-.SS Environment variables
+These are windows that are not constrained to the size of the terminal
+screen and whose contents need not be completely displayed.
+See \fB\%curs_pad\fP(3X).
+.PP
+In addition to drawing characters on the screen,
+rendering attributes and colors may be supported,
+causing the characters to show up in such modes as underlined,
+in reverse video,
+or in color on terminals that support such display enhancements.
+See \fB\%curs_attr\fP(3X).
+.PP
+.I curses
+predefines symbols for a small set of line graphics characters,
+corresponding to the VT100 line drawing set.
+See
+\fB\%waddch\fP(3X) and
+\fB\%wadd_wch\fP(3X).
+.PP
+.I curses
+is implemented using the operating system's terminal driver;
+keystroke events are not received as scan codes but as byte sequences.
+Graphical keycaps
+(alphanumeric and punctuation keys,
+and the space)
+appear as-is.
+Everything else,
+including the tab,
+enter/return,
+keypad,
+arrow,
+and function keys,
+appears as a control character or a multibyte
+.I "escape sequence."
+.I curses
+translates these into unique
+.I "key codes."
+See \fB\%getch\fP(3X).
+.SS "Effects of GUIs and Environment Variables"
+The selection of an approprate value of
+.I TERM
+in the process environment is essential to correct
+.I curses
+and
+.I \%term\%info
+library operation.
+A well-configured system selects a correct
+.I TERM
+value automatically;
+\fB\%tset\fP(1) may assist with troubleshooting exotic situations.
+.PP
 If the environment variables \fILINES\fP and \fI\%COLUMNS\fP are set,
 or if the
-program is executing in a window environment, line and column information in
-the environment will override information read by \fIterminfo\fP.
-This would affect a program running in an AT&T 630 layer,
-for example, where the size of a
-screen is changeable (see \fBENVIRONMENT\fP).
+.I curses
+program is executing in a graphical windowing environment,
+the information obtained thence overrides that obtained by
+.IR \%term\%info .
+An
+.I \%ncurses
+extension supports resizable terminals;
+see \fB\%wresize\fP(3X).
 .PP
 If the environment variable \fI\%TERMINFO\fP is defined,
-any program using
-\fBcurses\fP checks for a local terminal definition before checking in the
-standard place.
-For example, if \fITERM\fP is set to \fBatt4424\fP, then the
-compiled terminal definition is found in
-.PP
-.RS 4
-.EX
-\fB\*d/a/att4424\fP.
-.EE
-.RE
+a
+.I curses
+program checks first for a terminal type description in the location it
+identifies.
+.I \%TERMINFO
+is useful for developing experimental type descriptions or when write
+permission to \fI\*d\fP is not available.
+.PP
+See section \*(``ENVIRONMENT\*('' below.
+.SS "Naming Conventions"
+Many
+.I curses
+functions have two or more versions.
+Those prefixed with \*(``w\*('' require a window argument.
+Four functions prefixed with \*(``p\*('' require a pad argument.
+Those without a prefix generally operate on \fB\%stdscr\fP.
+.PP
+In function synopses,
+.I \%ncurses
+man pages apply the following names to parameters.
 .PP
-(The \fBa\fP is copied from the first letter of \fBatt4424\fP to avoid
-creation of huge directories.)
-However,
-if \fI\%TERMINFO\fP is set to
-\fB$HOME/myterms\fP, \fBcurses\fP first checks
-.PP
-.RS 4
-.EX
-\fB$HOME/myterms/a/att4424\fP,
-.EE
-.RE
-.PP
-and if that fails, it then checks
-.PP
-.RS 4
-.EX
-\fB\*d/a/att4424\fP.
-.EE
-.RE
-.PP
-This is useful for developing experimental definitions or when write
-permission in \fB\*d\fP is not available.
-.PP
-The integer variables \fBLINES\fP and \fBCOLS\fP are defined in
-\fB<curses.h>\fP and will be filled in by \fBinitscr\fP with the size of the
-screen.
-The constants \fBTRUE\fP and \fBFALSE\fP have the values \fB1\fP and
-\fB0\fP, respectively.
-.PP
-The \fBcurses\fP routines also define the \fBWINDOW *\fP variable \fBcurscr\fP
-which is used for certain low-level operations like clearing and redrawing a
-screen containing garbage.
-The \fBcurscr\fP can be used in only a few routines.
-.\"
-.SS Routine and Argument Names
-Many \fBcurses\fP routines have two or more versions.
-The routines prefixed with \fIw\fP require a window argument.
-The routines prefixed with \fIp\fP require a pad argument.
-Those without a prefix generally use \fBstdscr\fP.
-.PP
-The routines prefixed with \fBmv\fP require a \fIy\fP and \fIx\fP
-coordinate to move to before performing the appropriate action.
-The \fBmv\fP routines imply a call to \fBmove\fP before the call to the
-other routine.
-The coordinate \fIy\fP always refers to the row (of
-the window), and \fIx\fP always refers to the column.
-The upper left-hand corner is always (0,0), not (1,1).
-.PP
-The routines prefixed with \fBmvw\fP take both a window argument and
-\fIx\fP and \fIy\fP coordinates.
-The window argument is always specified before the coordinates.
-.PP
-In each case, \fIwin\fP is the window affected, and \fIpad\fP is the
-pad affected; \fIwin\fP and \fIpad\fP are always pointers to type
-\fBWINDOW\fP.
-.PP
-Option setting routines require a Boolean flag \fIbf\fP with the value
-\fBTRUE\fP or \fBFALSE\fP; \fIbf\fP is always of type \fBbool\fP.
-Most of the data types used in the library routines,
-such as \fBWINDOW\fP, \fBSCREEN\fP, \fBbool\fP, and \fBchtype\fP
-are defined in \fB<curses.h>\fP.
-Types used for the terminfo routines such as
-\fBTERMINAL\fP are defined in \fB<term.h>\fP.
-.PP
-This manual page describes functions which may appear in any configuration
+.TS
+center;
+Li L.
+bf     \fIbool\fP (\fBTRUE\fP or \fBFALSE\fP)
+win    pointer to \fIWINDOW\fP
+pad    pointer to \fIWINDOW\fP that is a pad
+.TE
+.SS "Wide and Non-wide Character Configurations"
+This manual page describes functions that appear in any configuration
 of the library.
-There are two common configurations of the library:
-.RS 3
-.TP 5
-.I ncurses
-the \*(``normal\*('' library, which handles 8-bit characters.
-The normal (8-bit) library stores characters combined with attributes
-in \fBchtype\fP data.
+There are two common configurations;
+see section \*(``ALTERNATE CONFIGURATIONS\*('' below.
+.TP 10 \" "ncursesw" + 2n
+.I \%ncurses
+is the library in its \*(``non-wide\*('' configuration,
+handling only eight-bit characters.
+It stores a character combined with attributes in a
+.I \%chtype
+datum.
 .IP
-Attributes alone (no corresponding character) may be stored in \fBchtype\fP
-or the equivalent \fBattr_t\fP data.
-In either case, the data is stored in something like an integer.
+Attributes alone
+(with no corresponding character)
+can be stored in variables of
+.I \%chtype
+or
+.I \%attr_t
+type.
+In either case,
+they are represented as an integral bit mask.
 .IP
-Each cell (row and column) in a \fBWINDOW\fP is stored as a \fBchtype\fP.
-.TP 5
-.I ncursesw
-the so-called \*(``wide\*('' library, which handles multibyte characters
-(see the section on \fBALTERNATE CONFIGURATIONS\fP).
-The \*(``wide\*('' library includes all of the calls
-from the \*(``normal\*('' library.
-It adds about one third more calls using data types which store
-multibyte characters:
-.RS 5
-.TP 5
-.B cchar_t
-corresponds to \fBchtype\fP.
-However it is a structure, because more data is stored than can fit into
-an integer.
-The characters are large enough to require a full integer value \- and there
-may be more than one character per cell.
-The video attributes and color are stored in separate fields of the structure.
+Each cell of a
+.I \%WINDOW
+is stored as a
+.I \%chtype.
+.TP 10
+.I \%ncursesw
+is the library in its \*(``wide\*('' configuration,
+which handles character encodings requiring a larger data type than
+.I \%char
+(a byte-sized type)
+can represent.
+It adds about one third more calls using additional data types that
+can store such
+.I multibyte
+characters.
+.RS 10 \" same as foregoing tag width
+.TP 9 \" "cchar_t" + 2n
+.I \%cchar_t
+corresponds to the non-wide configuration's
+.I \%chtype.
+It always a structure type,
+because it stores more data than can fit into an integer.
+A character code may be larger than can fit in a C
+.I \%char,
+and moreover more than one character may occupy a cell
+(as with accent marks and other diacritics).
+Each character is of type
+.I \%wchar_t;
+a complex character contains one spacing character and zero or more
+non-spacing characters
+(see below).
+Attributes and color data are stored in separate fields of the
+structure,
+not combined as in
+.I \%chtype.
 .IP
-Each cell (row and column) in a \fBWINDOW\fP is stored as a \fBcchar_t\fP.
-.IP
-The \fBsetcchar\fP(3X) and \fBgetcchar\fP(3X)
-functions store and retrieve the data from
-a \fBcchar_t\fP structure.
-.TP 5
-.B wchar_t
-stores a \*(``wide\*('' character.
-Like \fBchtype\fP, this may be an integer.
-.TP 5
-.B wint_t
-stores a \fBwchar_t\fP or \fBWEOF\fP \- not the same, though both may have
-the same size.
+Each cell
+(row and column)
+.I \%WINDOW
+is stored as a
+.I \%cchar_t.
+.PP
+The \fB\%setcchar\fP(3X) and \fB\%getcchar\fP(3X)
+functions store and retrieve the data from a
+.I \%cchar_t
+structure.
+The wide library API of
+.I \%ncurses
+depends on two data types standardized by ISO C95.
+.TP 9
+.I \%wchar_t
+stores a wide character.
+Like
+.I \%chtype,
+this may be an integer.
+Depending on the character encoding,
+a wide character may be
+.I spacing,
+meaning that it occupies a character cell by itself and typically
+accompanies cursor advancement on input,
+or
+.I combining,
+meaning that it occupies the same cell as a spacing character,
+is often regarded as a \*(``modifier\*('' of the base glyph with which
+it combines,
+and typically does not advance the cursor on input.
+.TP 9
+.I \%wint_t
+can store a
+.I \%wchar_t
+or the constant
+.BR \%WEOF ,
+analogously to the
+.IR int -sized
+character manipulation functions of ISO C and their constant
+.BR \%EOF .
 .RE
 .IP
-The \*(``wide\*('' library provides new functions which are analogous to
-functions in the \*(``normal\*('' library.
-There is a naming convention which relates many of the normal/wide variants:
-a \*(``_w\*('' is inserted into the name.
-For example, \fBwaddch\fP becomes \fBwadd_wch\fP.
-.RE
+The wide library provides additional functions that complement those in
+the non-wide library where the size of the underlying character type is
+significant.
+A somewhat regular naming convention relates many of the wide variants
+to their non-wide counterparts;
+where a non-wide function name contains \*(``ch\*('' or \*(``str\*('',
+prefix it with \*(``_w\*('' to obtain the wide counterpart.
+For example,
+\fB\%waddch\fP becomes \fB\%wadd_wch\fP.
+.IP
+This convention is inapplicable to some non-wide function names,
+so other transformations are used for the wide configuration:
+in the window background management functions,
+\*(``bkgd\*('' becomes \*(``bkgrnd\*('';
+the window border-drawing and -clearing functions are suffixed with
+\*(``_set\*(''.
 .\"
-.SS Routine Name Index
-The following table lists the \fBcurses\fP routines provided in
-the \*(``normal\*('' and \*(``wide\*('' libraries and the names of
-the manual pages on which they are described.
-Routines flagged with \*(``*\*(''
-are ncurses-specific, not described by XPG4 or present in SVr4.
+.SS "Function Name Index"
+The following table lists the
+.I curses
+functions provided in the non-wide and wide APIs and the corresponding
+man pages that describe them.
+Those flagged with \*(``*\*(''
+are
+.IR \%ncurses -specific,
+neither described by X/Open Curses nor present in SVr4.
 .PP
 .TS
 center tab(/);
-l l
 l l .
-\fBcurses\fP Routine Name/Manual Page Name
-=
+\f(BIcurses\fP Function Name/Man Page
+_
 COLOR_PAIR/\fBcurs_color\fP(3X)
 PAIR_NUMBER/\fBcurs_attr\fP(3X)
 add_wch/\fBcurs_add_wch\fP(3X)
@@ -844,17 +962,21 @@ The return values of
 \fBgetmaxyx\fP are undefined (i.e., these should not be used as the
 right-hand side of assignment statements).
 .PP
-Functions with a \*(``mv\*('' prefix first perform a cursor movement using
-\fBwmove\fP, and return an error if the position is outside the window,
-or if the window pointer is null.
+Functions with a \*(``mv\*('' prefix first perform cursor movement using
+\fB\%wmove\fP and return an error if the position is outside the window,
+or
+(for \*(``mvw\*('' functions)
+if the
+.I \%WINDOW
+pointer is null.
 Most \*(``mv\*(''-prefixed functions
-(except variadic functions such as \fBmvprintw\fP)
+(except variadic functions such as \fB\%mvprintw\fP)
 are provided both as macros and functions.
 .PP
 Routines that return pointers return \fBNULL\fP on error.
 .SH ENVIRONMENT
 The following environment symbols are useful for customizing the
-runtime behavior of the \fBncurses\fP library.
+runtime behavior of the \fI\%ncurses\fP library.
 The most important ones have been already discussed in detail.
 .SS \fICC\fP command-character
 When set, change occurrences of the command_character
@@ -863,13 +985,14 @@ of the loaded terminfo entries to the value of this variable.
 Very few terminfo entries provide this feature.
 .PP
 Because this name is also used in development environments to represent
-the C compiler's name, \fBncurses\fP ignores it if it does not happen to
-be a single character.
+the C compiler's name,
+\fI\%ncurses\fP ignores it if it does not happen to be a single
+character.
 .SS \fIBAUDRATE\fP
 The debugging library checks this environment variable when the application
 has redirected output to a file.
 The variable's numeric value is used for the baudrate.
-If no value is found, \fBncurses\fP uses 9600.
+If no value is found, \fI\%ncurses\fP uses 9600.
 This allows testers to construct repeatable test-cases
 that take into account costs that depend on baudrate.
 .SS \fICOLUMNS\fP
@@ -877,7 +1000,8 @@ Specify the width of the screen in characters.
 Applications running in a windowing environment usually are able to
 obtain the width of the window in which they are executing.
 If neither the \fI\%COLUMNS\fP value nor the terminal's screen size is available,
-\fBncurses\fP uses the size which may be specified in the terminfo database
+\fI\%ncurses\fP uses the size which may be specified in the terminfo
+database
 (i.e., the \fBcols\fP capability).
 .PP
 It is important that your application use a correct size for the screen.
@@ -901,8 +1025,11 @@ Use the \fBuse_tioctl\fP function to update \fI\%COLUMNS\fP or
 \fILINES\fP to match the screen size obtained from system calls or the
 terminal database.
 .SS \fIESCDELAY\fP
-Specifies the total time, in milliseconds, for which ncurses will
-await a character sequence, e.g., a function key.
+Specifies the total time,
+in milliseconds,
+for which \fI\%ncurses\fP will await a character sequence,
+e.g.,
+a function key.
 The default value, 1000 milliseconds, is enough for most uses.
 However, it is made a variable to accommodate unusual applications.
 .PP
@@ -925,7 +1052,7 @@ in either form,
 but setting the environment variable rather than the global variable
 does not create problems when compiling an application.
 .SS \fIHOME\fP
-Tells \fBncurses\fP where your home directory is.
+Tells \fI\%ncurses\fP where your home directory is.
 That is where it may read and write auxiliary terminal descriptions:
 .PP
 .RS 4
@@ -953,19 +1080,19 @@ platforms:
 .PP
 This variable lets you customize the mouse.
 The variable must be three numeric digits 1\-3 in any order, e.g., 123 or 321.
-If it is not specified, \fBncurses\fP uses 132.
+If it is not specified, \fI\%ncurses\fP uses 132.
 .SS \fINCURSES_ASSUMED_COLORS\fP
 Override the compiled-in assumption that the
 terminal's default colors are white-on-black
 (see \fBdefault_colors\fP(3X)).
 You may set the foreground and background color values with this environment
 variable by proving a 2-element list: foreground,background.
-For example, to tell ncurses to not assume anything
+For example, to tell \fI\%ncurses\fP to not assume anything
 about the colors, set this to "\-1,\-1".
 To make it green-on-black, set it to "2,0".
 Any positive value from zero to the terminfo \fBmax_colors\fP value is allowed.
 .SS \fINCURSES_CONSOLE2\fP
-This applies only to the MinGW port of ncurses.
+This applies only to the MinGW port of \fI\%ncurses\fP.
 .PP
 The \fBConsole2\fP program's handling of the Microsoft Console API call
 \fBCreateConsoleScreenBuffer\fP is defective.
@@ -975,7 +1102,8 @@ mapping coordinates,
 explicitly saving and restoring the original screen contents.
 Setting the environment variable \fBNCGDB\fP has the same effect.
 .SS \fINCURSES_GPM_TERMS\fP
-This applies only to ncurses configured to use the GPM interface.
+This applies only to \fI\%ncurses\fP configured to use the GPM
+interface.
 .PP
 If present,
 the environment variable is a list of one or more terminal names
@@ -984,18 +1112,19 @@ Setting it to an empty value disables the GPM interface;
 using the built-in support for xterm, etc.
 .PP
 If the environment variable is absent,
-ncurses will attempt to open GPM if \fITERM\fP contains \*(``linux\*(''.
+\fI\%ncurses\fP will attempt to open GPM if \fITERM\fP contains
+\*(``linux\*(''.
 .SS \fINCURSES_NO_HARD_TABS\fP
-\fBNcurses\fP may use tabs as part of the cursor movement optimization.
+\fI\%ncurses\fP may use tabs as part of cursor movement optimization.
 In some cases,
 your terminal driver may not handle these properly.
-Set this environment variable to disable the feature.
+Set this environment variable to any value to disable the feature.
 You can also adjust your \fBstty\fP(1) settings to avoid the problem.
 .SS \fINCURSES_NO_MAGIC_COOKIE\fP
 Some terminals use a magic-cookie feature which requires special handling
 to make highlighting and other video attributes display properly.
 You can suppress the highlighting entirely for these terminals by
-setting this environment variable.
+setting this environment variable to any value.
 .SS \fINCURSES_NO_PADDING\fP
 Most of the terminal descriptions in the terminfo database are written
 for real \*(``hardware\*('' terminals.
@@ -1034,38 +1163,39 @@ continued
 though 5.9 patch 20130126
 .RE
 .PP
-\fBncurses\fP enabled buffered output during terminal initialization.
+\fI\%ncurses\fP enabled buffered output during terminal initialization.
 This was done (as in SVr4 curses) for performance reasons.
-For testing purposes, both of \fBncurses\fP and certain applications,
+For testing purposes, both of \fI\%ncurses\fP and certain applications,
 this feature was made optional.
 Setting the \fI\%NCURSES_NO_SETBUF\fP variable
 disabled output buffering, leaving the output in the original (usually
 line buffered) mode.
 .PP
 In the current implementation,
-ncurses performs its own buffering and does not require this workaround.
+\fI\%ncurses\fP performs its own buffering and does not require this
+workaround.
 It does not modify the buffering of the standard output.
 .PP
 The reason for the change was to make the behavior for interrupts and
 other signals more robust.
 One drawback is that certain nonconventional programs would mix
-ordinary stdio calls with ncurses calls and (usually) work.
-This is no longer possible since ncurses is not using
+ordinary stdio calls with \fI\%ncurses\fP calls and (usually) work.
+This is no longer possible since \fI\%ncurses\fP is not using
 the buffered standard output but its own output (to the same file descriptor).
 As a special case, the low-level calls such as \fBputp\fP still use the
 standard output.
 But high-level curses calls do not.
 .SS \fINCURSES_NO_UTF8_ACS\fP
-During initialization, the \fBncurses\fP library
+During initialization, the \fI\%ncurses\fP library
 checks for special cases where VT100 line-drawing (and the corresponding
 alternate character set capabilities) described in the terminfo are known
 to be missing.
 Specifically, when running in a UTF\-8 locale,
 the Linux console emulator and the GNU screen program ignore these.
-Ncurses checks the \fITERM\fP environment variable for these.
+\fI\%ncurses checks the \fITERM\fP environment variable for these.
 For other special cases, you should set this environment variable.
-Doing this tells ncurses to use Unicode values which correspond to
-the VT100 line-drawing glyphs.
+Doing this tells \fI\%ncurses\fP to use Unicode values which correspond
+to the VT100 line-drawing glyphs.
 That works for the special cases cited,
 and is likely to work for terminal emulators.
 .PP
@@ -1074,7 +1204,7 @@ Setting it to zero (or to a nonnumber)
 disables the special check for \*(``linux\*('' and \*(``screen\*(''.
 .PP
 As an alternative to the environment variable,
-ncurses checks for an extended terminfo capability \fBU8\fP.
+\fI\%ncurses\fP checks for an extended terminfo capability \fBU8\fP.
 This is a numeric capability which can be compiled using \fB@TIC@\ \-x\fP.
 For example
 .PP
@@ -1092,13 +1222,15 @@ xterm\-utf8|xterm relying on UTF\-8 line\-graphics,
 .RE
 .PP
 The name \*(``U8\*('' is chosen to be two characters,
-to permit it to be used by applications that use ncurses'
+to permit it to be used by applications that use \fI\%ncurses\fP'
 termcap interface.
 .SS \fINCURSES_TRACE\fP
-During initialization, the \fBncurses\fP debugging library
+During initialization, the \fI\%ncurses\fP debugging library
 checks the \fI\%NCURSES_TRACE\fP environment variable.
-If it is defined, to a numeric value, \fBncurses\fP calls the \fBtrace\fP
-function, using that value as the argument.
+If it is defined,
+to a numeric value,
+\fI\%ncurses\fP calls the \fBtrace\fP function,
+using that value as the argument.
 .PP
 The argument values, which are defined in \fBcurses.h\fP, provide several
 types of information.
@@ -1125,18 +1257,19 @@ terminal emulators which allow you to
 specify \fITERM\fP as a parameter or configuration value do
 not change their behavior to match that setting.
 .SS \fITERMCAP\fP
-If the \fBncurses\fP library has been configured with \fItermcap\fP
-support, \fBncurses\fP will check for a terminal's description in
+If the \fI\%ncurses\fP library has been configured with \fItermcap\fP
+support, \fI\%ncurses\fP will check for a terminal's description in
 termcap form if it is not available in the terminfo database.
 .PP
 The \fI\%TERMCAP\fP environment variable contains
 either a terminal description (with newlines stripped out),
 or a file name telling where the information denoted by
 the \fITERM\fP environment variable exists.
-In either case, setting it directs \fBncurses\fP to ignore
+In either case, setting it directs \fI\%ncurses\fP to ignore
 the usual place for this information, e.g., /etc/termcap.
 .SS \fITERMINFO\fP
-\fBncurses\fP can be configured to read from multiple terminal databases.
+\fI\%ncurses\fP can be configured to read from multiple terminal
+databases.
 The \fI\%TERMINFO\fP variable overrides the location for
 the default terminal database.
 Terminal descriptions (in terminal format) are stored in terminal databases:
@@ -1149,7 +1282,7 @@ and the \fI\%TERMINFO\fP variable is used by \fIcurses\fP applications
 on those
 systems to override the default location of the terminal database.
 .IP \(bu 4
-If \fBncurses\fP is built to use hashed databases,
+If \fI\%ncurses\fP is built to use hashed databases,
 then each entry in this list may be the path of a hashed database file, e.g.,
 .RS 4
 .PP
@@ -1175,13 +1308,13 @@ reading it directly
 rather than using the terminfo library calls.
 .RE
 .bP
-If \fBncurses\fP is built with a support for reading termcap files
+If \fI\%ncurses\fP is built with a support for reading termcap files
 directly, then an entry in this list may be the path of a termcap file.
 .IP \(bu 4
 If the \fI\%TERMINFO\fP variable begins with
 \*(``hex:\*('' or \*(``b64:\*('',
-\fBncurses\fP uses the remainder of that variable as a compiled terminal
-description.
+\fI\%ncurses\fP uses the remainder of that variable as a compiled
+terminal description.
 You might produce the base64 format using \fBinfocmp\fP(1M):
 .RS 4
 .PP
@@ -1201,7 +1334,7 @@ but not the only way to set location of the default terminal database.
 The complete list of database locations in order follows:
 .RS 3
 .bP
-the last terminal database to which \fBncurses\fP wrote,
+the last terminal database to which \fI\%ncurses\fP wrote,
 if any, is searched first
 .bP
 the location specified by the \fI\%TERMINFO\fP environment variable
@@ -1211,7 +1344,7 @@ $HOME/.terminfo
 locations listed in the \fI\%TERMINFO_DIRS\fP environment variable
 .bP
 one or more locations whose names are configured and compiled into the
-ncurses library, i.e.,
+\fI\%ncurses\fP library, i.e.,
 .RS 3
 .bP
 @TERMINFO_DIRS@ (corresponding to the \fI\%TERMINFO_DIRS\fP variable)
@@ -1226,15 +1359,15 @@ the section on the \fI\%TERMINFO\fP variable.
 The list is separated by colons (i.e., ":") on Unix, semicolons on OS/2 EMX.
 .PP
 There is no corresponding feature in System V terminfo;
-it is an extension developed for \fBncurses\fP.
+it is an extension developed for \fI\%ncurses\fP.
 .SS \fITERMPATH\fP
-If \fI\%TERMCAP\fP does not hold a file name then \fBncurses\fP checks
+If \fI\%TERMCAP\fP does not hold a file name then \fI\%ncurses\fP checks
 the \fI\%TERMPATH\fP environment variable.
 This is a list of filenames separated by spaces or colons (i.e., ":") on Unix,
 semicolons on OS/2 EMX.
 .PP
 If the \fI\%TERMPATH\fP environment variable is not set,
-\fBncurses\fP looks in the files
+\fI\%ncurses\fP looks in the files
 .PP
 .RS 4
 .EX
@@ -1255,12 +1388,13 @@ $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME.
 .RE
 .SH ALTERNATE CONFIGURATIONS
 Several different configurations are possible,
-depending on the configure script options used when building \fBncurses\fP.
+depending on the configure script options used when building
+\fI\%ncurses\fP.
 There are a few main options whose effects are visible to the applications
-developer using \fBncurses\fP:
+developer using \fI\%ncurses\fP:
 .TP 5
 \-\-disable\-overwrite
-The standard include for \fBncurses\fP is as noted in \fBSYNOPSIS\fP:
+The standard include for \fI\%ncurses\fP is as noted in \fBSYNOPSIS\fP:
 .RS 5
 .PP
 .RS 4
@@ -1269,10 +1403,11 @@ The standard include for \fBncurses\fP is as noted in \fBSYNOPSIS\fP:
 .EE
 .RE
 .PP
-This option is used to avoid filename conflicts when \fBncurses\fP
+This option is used to avoid filename conflicts when \fI\%ncurses\fP
 is not the main implementation of curses of the computer.
-If \fBncurses\fP is installed disabling overwrite, it puts its headers in
-a subdirectory, e.g.,
+If \fI\%ncurses\fP is installed disabling overwrite,
+it puts its headers in a subdirectory,
+e.g.,
 .PP
 .RS 4
 .EX
@@ -1327,10 +1462,10 @@ with the caveat that some other header file than \fBcurses.h\fP
 may require a specific value for \fB_XOPEN_SOURCE\fP
 (or a system-specific symbol).
 .PP
-The \fBcurses.h\fP file which is installed for the wide-character
-library is designed to be compatible with the normal library's header.
-Only the size of the \fBWINDOW\fP structure differs, and very few
-applications require more than a pointer to \fBWINDOW\fPs.
+The \fI\%curses.h\fP header file installed for the wide-character
+library is designed to be compatible with the non-wide library's header.
+Only the size of the \fI\%WINDOW\fP structure differs;
+few applications require more than pointers to \fI\%WINDOW\fPs.
 .PP
 If the headers are installed allowing overwrite,
 the wide-character library's headers should be installed last,
@@ -1400,58 +1535,64 @@ tab stop initialization database
 .I \*d
 compiled terminal capability database
 .SH NOTES
-If standard output from a \fBncurses\fP program is re-directed to something
-which is not a tty, screen updates will be directed to standard error.
+If standard output from a \fI\%ncurses\fP program is re-directed to
+something which is not a tty,
+screen updates will be directed to standard error.
 This was an undocumented feature of AT&T System V Release 3 curses.
 .PP
 See subsection \*(``Header files\*('' below regarding symbols exposed by
 inclusion of \fI\%curses.h\fP.
 .SH EXTENSIONS
-The \fBncurses\fP library can be compiled with an option (\fB\-DUSE_GETCAP\fP)
+The \fI\%ncurses\fP library can be compiled with an option
+(\fB\-DUSE_GETCAP\fP)
 that falls back to the old-style /etc/termcap file if the terminal setup code
 cannot find a terminfo entry corresponding to \fITERM\fP.
-Use of this feature
-is not recommended, as it essentially includes an entire termcap compiler in
-the \fBncurses\fP startup code, at significant cost in core and startup cycles.
-.PP
-The \fBncurses\fP library includes facilities for capturing mouse events on
-certain terminals (including xterm).
+Use of this feature is not recommended,
+as it essentially includes an entire termcap compiler in the
+\fI\%ncurses\fP startup code,
+at significant cost in core and startup cycles.
+.PP
+The \fI\%ncurses\fP library includes facilities for capturing mouse
+events on certain terminals
+(including xterm).
 See the \fBcurs_mouse\fP(3X)
 manual page for details.
 .PP
-The \fBncurses\fP library includes facilities for responding to window
+The \fI\%ncurses\fP library includes facilities for responding to window
 resizing events, e.g., when running in an xterm.
 See the \fBresizeterm\fP(3X)
 and \fBwresize\fP(3X) manual pages for details.
 In addition, the library may be configured with a \fBSIGWINCH\fP handler.
 .PP
-The \fBncurses\fP library extends the fixed set of function key capabilities
-of terminals by allowing the application designer to define additional
-key sequences at runtime.
+The \fI\%ncurses\fP library extends the fixed set of function key
+capabilities of terminals by allowing the application designer to define
+additional key sequences at runtime.
 See the \fBdefine_key\fP(3X)
 \fBkey_defined\fP(3X),
 and \fBkeyok\fP(3X) manual pages for details.
 .PP
-The \fBncurses\fP library can exploit the capabilities of terminals which
-implement the ISO\-6429 SGR 39 and SGR 49 controls, which allow an application
-to reset the terminal to its original foreground and background colors.
+The \fI\%ncurses\fP library can exploit the capabilities of terminals
+which implement the ISO\-6429 SGR 39 and SGR 49 controls,
+which allow an application to reset the terminal to its original
+foreground and background colors.
 From the users' perspective, the application is able to draw colored
 text on a background whose color is set independently, providing better
 control over color contrasts.
 See the \fBdefault_colors\fP(3X) manual page for details.
 .PP
-The \fBncurses\fP library includes a function for directing application output
-to a printer attached to the terminal device.
+The \fI\%ncurses\fP library includes a function for directing
+application output to a printer attached to the terminal device.
 See the \fBcurs_print\fP(3X) manual page for details.
 .SH PORTABILITY
-The \fBncurses\fP library is intended to be BASE-level conformant with XSI
-Curses.
+The \fI\%ncurses\fP library is intended to be BASE-level conformant with
+XSI Curses.
 The EXTENDED XSI Curses functionality
 (including color support) is supported.
 .PP
-A small number of local differences (that is, individual differences between
-the XSI Curses and \fBncurses\fP calls) are described in \fBPORTABILITY\fP
-sections of the library man pages.
+A small number of local differences
+(that is,
+individual differences between the XSI Curses and \fI\%ncurses\fP calls)
+are described in \fBPORTABILITY\fP sections of the library man pages.
 .SS Error checking
 In many cases, X/Open Curses is vague about error conditions,
 omitting some of the SVr4 documentation.
@@ -1465,7 +1606,8 @@ to tell an application which of several possible errors were detected.
 Relying on this (or some other) extension will adversely affect the
 portability of curses applications.
 .SS Extensions versus portability
-Most of the extensions provided by ncurses have not been standardized.
+Most of the extensions provided by \fI\%ncurses\fP have not been
+standardized.
 Some have been incorporated into other implementations, such as
 PDCurses or NetBSD curses.
 Here are a few to consider:
@@ -1523,7 +1665,9 @@ Here is a more complete story:
 Starting with BSD curses, all implementations have included <stdio.h>.
 .IP
 BSD curses included <curses.h> and <unctrl.h> from an internal header
-"curses.ext" ("ext" was a short name for \fIexterns\fP).
+file
+.I \%curses.ext
+(\*(``ext\*('' abbreviated \*(``externs\*('').
 .IP
 BSD curses used <stdio.h> internally (for \fBprintw\fP and \fBscanw\fP),
 but nothing in <curses.h> itself relied upon <stdio.h>.
@@ -1543,17 +1687,18 @@ As a result, standard <curses.h> will always include <stdio.h>.
 .bP
 X/Open Curses is inconsistent with respect to SVr4 regarding <unctrl.h>.
 .IP
-As noted in \fBcurs_util\fP(3X), ncurses includes <unctrl.h> from
-<curses.h> (like SVr4).
+As noted in \fBcurs_util\fP(3X),
+\fI\%ncurses\fP includes <unctrl.h> from <curses.h>
+(like SVr4).
 .bP
 X/Open's comments about <term.h> and <termios.h> may refer to HP-UX and AIX:
 .IP
 HP-UX curses includes <term.h> from <curses.h>
 to declare \fBsetupterm\fP in curses.h,
-but ncurses (and Solaris curses) do not.
+but \fI\%ncurses\fP (and Solaris curses) do not.
 .IP
 AIX curses includes <term.h> and <termios.h>.
-Again, ncurses (and Solaris curses) do not.
+Again, \fI\%ncurses\fP (and Solaris curses) do not.
 .bP
 X/Open says that <curses.h> \fImay\fP include <term.h>,
 but there is no requirement that it do that.
@@ -1563,17 +1708,17 @@ and must include both headers in the same module.
 Very old versions of AIX curses required including <curses.h>
 before including <term.h>.
 .IP
-Because ncurses header files include the headers needed to
+Because \fI\%ncurses\fP header files include the headers needed to
 define datatypes used in the headers,
-ncurses header files can be included in any order.
+\fI\%ncurses\fP header files can be included in any order.
 But for portability, you should include <curses.h> before <term.h>.
 .bP
 X/Open Curses says \fI"may make visible"\fP
 because including a header file does not necessarily make all symbols
 in it visible (there are ifdef's to consider).
 .IP
-For instance, in ncurses <wchar.h> \fImay\fP be included if
-the proper symbol is defined, and if ncurses is configured for
+For instance, in \fI\%ncurses\fP <wchar.h> \fImay\fP be included if
+the proper symbol is defined, and if \fI\%ncurses\fP is configured for
 wide-character support.
 If the header is included, its symbols may be made visible.
 That depends on the value used for \fB_XOPEN_SOURCE\fP
@@ -1599,8 +1744,10 @@ because <stdio.h> is always included by <curses.h>.
 .IP
 None of the X/Open Curses implementations require an application
 to include <stdarg.h> before <curses.h> because they either
-have allowed for a special type, or (like ncurses) include <stdarg.h>
-directly to provide a portable interface.
+have allowed for a special type,
+or
+(like \fI\%ncurses\fP)
+include <stdarg.h> directly to provide a portable interface.
 .SH AUTHORS
 Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey.
 Based on \fIpcurses\fP by Pavel Curtis.
index 8da580b3043c5d26e36dee022d2cbdcac4c48bde..6aa948f77dad2398879d3e0f5b91d52a72f78fc1 100644 (file)
@@ -29,8 +29,8 @@
 .\"
 .\" Author: Thomas E. Dickey
 .\"
-.\" $Id: new_pair.3x,v 1.43 2023/11/25 14:26:30 tom Exp $
-.TH new_pair 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: new_pair.3x,v 1.44 2023/12/16 20:32:22 tom Exp $
+.TH new_pair 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -130,7 +130,7 @@ All of the color pairs are allocated from a table of possible color pairs.
 The size of the table is determined by the terminfo \fBpairs\fP capability.
 The table is shared with \fBinit_pair\fP;
 in fact \fBalloc_pair\fP calls \fBinit_pair\fP after
-updating the \fIncurses\fP library's fast index
+updating the \fI\%ncurses\fP library's fast index
 to the colors versus color pairs.
 .SS find_pair
 The \fBfind_pair\fP function accepts parameters for
@@ -155,7 +155,7 @@ or \-1 if not.
 Likewise, \fBfree_pair\fP returns \fBOK\fP unless it encounters an
 error updating the fast index or if no such color pair is in use.
 .SH PORTABILITY
-These routines are specific to \fIncurses\fP.
+These routines are specific to \fI\%ncurses\fP.
 They were not supported on
 Version 7, BSD or System V implementations.
 It is recommended that
index 497006ff473760b034d2202b5688f7a90c6b23ec..6071b29a390e60ab5c4fc5f6098a5de81e05cfaa 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: panel.3x,v 1.59 2023/11/25 14:08:47 tom Exp $
-.TH panel 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: panel.3x,v 1.60 2023/12/16 21:24:43 tom Exp $
+.TH panel 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -46,7 +46,7 @@
 ..
 .SH NAME
 panel \-
-panel stack extension for \fI\%curses\fP
+panel stack extension for \fIcurses\fP
 .SH SYNOPSIS
 .nf
 \fB#include <panel.h>
@@ -80,7 +80,7 @@ panel stack extension for \fI\%curses\fP
 Panels are \fBcurses\fP(3X) windows with the added property of
 depth.
 Panel functions allow the use of stacked windows and ensure that the
-proper portions of each window and the \fI\%curses\fP \fB\%stdscr\fP
+proper portions of each window and the \fIcurses\fP \fB\%stdscr\fP
 window are hidden or displayed when panels are added,
 moved,
 modified,
@@ -97,9 +97,9 @@ hide,
 and show panels.
 You can relocate a panel to any desired position in the stack.
 .PP
-Panel routines are a functional layer added to \fI\%curses\fP,
-make only high-level \fI\%curses\fP calls,
-and work anywhere \fI\%curses\fP does.
+Panel routines are a functional layer added to \fIcurses\fP,
+make only high-level \fIcurses\fP calls,
+and work anywhere \fIcurses\fP does.
 .SH FUNCTIONS
 .\" ---------
 .SS bottom_panel
@@ -260,7 +260,7 @@ Systems based on SVr4 source code,
 such as Solaris,
 provide this library.
 .bP
-\fIncurses\fP (since version 0.6 in 1993)
+\fI\%ncurses\fP (since version 0.6 in 1993)
 and \fIPDCurses\fP (since version 2.2 in 1995)
 provide a panel library whose common ancestor
 is a public domain implementation by Warren Tucker
index 9b21b819ed76ff2e4cc3bac4d3044abb9cf6b884..9611be60ad53ca21040ee2bcfb5596cb25ffe79b 100644 (file)
@@ -29,8 +29,8 @@
 .\"
 .\" Author: Thomas E. Dickey 1996-on
 .\"
-.\" $Id: resizeterm.3x,v 1.53 2023/12/02 20:49:04 tom Exp $
-.TH resizeterm 3X 2023-12-02 "ncurses 6.4" "Library calls"
+.\" $Id: resizeterm.3x,v 1.54 2023/12/16 20:32:22 tom Exp $
+.TH resizeterm 3X 2023-12-16 "ncurses 6.4" "Library calls"
 .de bP
 .ie n  .IP \(bu 4
 .el    .IP \(bu 2
@@ -50,7 +50,8 @@ manage the terminal dimensions understood by \fIcurses\fR
 .fi
 .SH DESCRIPTION
 This is an extension to the \fIcurses\fP library.
-It provides callers with a hook into the \fIncurses\fP data to resize windows,
+It provides callers with a hook into the \fI\%ncurses\fP data to resize
+windows,
 primarily for use by programs running in an X Window terminal (e.g., xterm)
 when the terminal's screen size is changed by the user:
 .bP
@@ -62,9 +63,9 @@ rows and/or columns can be added to existing windows.
 The added cells should match the current attributes of the windows.
 .PP
 If the calling program has not set up a handler for \fB\%SIGWINCH\fP
-when it initializes \fIncurses\fP
+when it initializes \fI\%ncurses\fP
 (e.g., using \fB\%initscr\fP(3X) or \fB\%newterm\fP(3X)),
-then \fIncurses\fP sets a handler for \fB\%SIGWINCH\fP which notifies
+then \fI\%ncurses\fP sets a handler for \fB\%SIGWINCH\fP which notifies
 the library when a window-size event has occurred.
 The library checks for this notification
 .bP
@@ -87,7 +88,7 @@ see \fB\%SIGWINCH\fP, and proper layout will rely upon the application.
 The function \fB\%resizeterm\fP resizes the standard and current windows
 (i.e., \fB\%stdscr\fP and \fB\%curscr\fP)
 to the specified dimensions, and adjusts other bookkeeping data used by
-the \fIncurses\fP library that record the window dimensions
+the \fI\%ncurses\fP library that record the window dimensions
 such as the \fB\%LINES\fP and \fB\%COLS\fP variables.
 .SS resize_term
 Most of the work for \fB\%resizeterm\fP is
@@ -130,7 +131,8 @@ While these functions are intended to be used to support a signal handler
 context where \fB\%malloc\fP or \fB\%realloc\fP may have been interrupted,
 since it uses those functions.
 .PP
-If \fIncurses\fP is configured to supply its own \fB\%SIGWINCH\fP handler,
+If \fI\%ncurses\fP is configured to supply its own \fB\%SIGWINCH\fP
+handler,
 .bP
 on receipt of a \fB\%SIGWINCH\fP, the handler sets a flag
 .bP
@@ -150,8 +152,8 @@ be done automatically.
 .IP
 Calling \fB\%resizeterm\fP or \fB\%resize_term\fP
 directly from a signal handler is unsafe.
-This indirect method is used to provide a safe way to resize the \fIncurses\fP
-data structures.
+This indirect method is used to provide a safe way to resize the
+\fI\%ncurses\fP data structures.
 .PP
 If the environment variables \fILINES\fP or \fI\%COLUMNS\fP are set,
 this overrides the library's use of the window size obtained from
@@ -168,7 +170,7 @@ resuming using \fB\%refresh\fP(3X).
 .PP
 Doing that clears the screen and is visually distracting.
 .PP
-This extension of \fIncurses\fP was introduced in mid-1995.
+This extension of \fI\%ncurses\fP was introduced in mid-1995.
 It was adopted in NetBSD \fIcurses\fP (2001) and PDCurses (2003).
 .SH AUTHORS
 Thomas Dickey (from an equivalent function written in 1988 for BSD \fIcurses\fP)
index 5d4981807fa2f6854249ed1dbbf9cf3ee88d3491..ff1fa1e0fe54b3951b5c0c188aec63657c2100ea 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: scr_dump.5,v 1.39 2023/11/25 14:21:48 tom Exp $
-.TH scr_dump 5 2023-11-25 "ncurses 6.4" "File formats"
+.\" $Id: scr_dump.5,v 1.40 2023/12/16 21:07:24 tom Exp $
+.TH scr_dump 5 2023-12-16 "ncurses 6.4" "File formats"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -115,7 +115,7 @@ because the library truncates or fills the screen as necessary.
 .bP
 The ncurses6 \fBgetwin\fP reads the legacy screen dumps from ncurses5.
 .SS ncurses5 (legacy)
-The screen-dump feature was added to ncurses in June 1995.
+The screen-dump feature was added to \fI\%ncurses\fP in June 1995.
 While there were fixes and improvements in succeeding years,
 the basic scheme was unchanged:
 .bP
@@ -228,7 +228,7 @@ HP-UX (90093 bytes)
 .bP
 Solaris 10 (13273 bytes)
 .bP
-ncurses5 (12888 bytes)
+\fI\%ncurses\fP5 (12888 bytes)
 .SS Solaris
 As noted above, Solaris curses has no magic number corresponding
 to SVr4 curses.
@@ -351,7 +351,7 @@ All characters are shown in printable form; spaces are \*(``\es\*('' to
 ensure they are not overlooked.
 .bP
 Attributes are written in escaped curly braces, e.g., \*(``\e{BOLD}\*('',
-and may include a color-pair (C1 or C2 in this example).
+and may include a color pair (C1 or C2 in this example).
 .bP
 The parameters in the header are written out only if they are nonzero.
 When reading back, order does not matter.
@@ -436,11 +436,11 @@ Here is the corresponding dump (using \*(``od \-t x1\*(''):
 .SH AUTHORS
 Thomas E. Dickey
 .br
-extended screen-dump format for ncurses 6.0 (2015)
+extended screen-dump format for \fI\%ncurses\fP 6.0 (2015)
 .sp
 Eric S. Raymond
 .br
-screen dump feature in ncurses 1.9.2d (1995)
+screen dump feature in \fI\%ncurses\fP 1.9.2d (1995)
 .SH SEE ALSO
 \fB\%curs_scr_dump\fP(3X),
 \fB\%curs_util\fP(3X)
index a13fd24099c38b9c448ab726ca4ee8c773dbd926..4bcb457ec0db71ad734a490ee87af9982868b170 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: tabs.1,v 1.50 2023/11/25 14:32:36 tom Exp $
-.TH @TABS@ 1 2023-11-25 "ncurses 6.4" "User commands"
+.\" $Id: tabs.1,v 1.51 2023/12/17 00:13:57 tom Exp $
+.TH @TABS@ 1 2023-12-16 "ncurses 6.4" "User commands"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -104,7 +104,8 @@ This option tells \fB@TABS@\fP to check the options and run any debugging
 option, but not to modify the terminal settings.
 .TP
 \fB\-V\fP
-reports the version of ncurses which was used in this program, and exits.
+reports the version of \fI\%ncurses\fP which was used in this program,
+and exits.
 .PP
 The \fB@TABS@\fP program processes a single list of tab stops.
 The last option to be processed which defines a list is the one that
@@ -236,60 +237,76 @@ unlike \fB@TPUT@\fP(1).
 .PP
 The \fB\-d\fP (debug) and \fB\-n\fP (no-op) options are extensions not provided
 by other implementations.
-.PP
+.SH HISTORY
 A \fBtabs\fP utility appeared in PWB/Unix 1.0 (1977).
-There was a reduced version of the \fBtabs\fP utility
-in Unix 7th edition and in 3BSD (1979).
-The latter supported a single \*(``\-n\*('' option
-(to cause the first tab stop to be set on the left margin).
+.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=PWB1/sys/source/s2/\
+.\"   tabs.c
+A reduced version shipped in Seventh Edition Unix
+(early 1979)
+.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=V7/usr/src/cmd/tabs.c
+and in 3BSD
+.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=3BSD/usr/src/cmd/\
+.\"   tabs.c
+(later the same year);
+it supported a \*(``\-n\*('' option to set the first tab stop at the
+left margin.
 That option is not documented by POSIX.
 .PP
-The PWB/Unix \fBtabs\fP utility, which was included in System III (1980),
-used built-in tables rather than the terminal database,
+The PWB/Unix \fBtabs\fP utility returned in System III (1980),
+and used built-in tables rather than the terminal database,
 to support a half-dozen hardcopy terminal (printer) types.
-It also had built-in logic to support the left-margin,
+It also had built-in logic to support setting the left margin,
 as well as a feature for copying the tab settings from a file.
 .PP
-Later versions of Unix, e.g., SVr4,
+Versions of the program in later releases of AT&T Unix,
+such as SVr4,
+.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=SysVR4/cmd/tabs/tabs.c
 added support for the terminal database,
-but kept the tables to support the printers.
+but retained the tables to support the printers.
 In an earlier development effort,
-the tab-stop initialization provided by \fBtset\fP (1982)
-and incorporated into \fBtput\fP uses the terminal database,
+the tab stop initialization provided by \fBtset\fP(1) (1982),
+and incorporated into \fBtput\fP(1) uses the terminal database,
 .PP
-The \fB+m\fP option was documented
-in the Base Specifications Issue 5 (Unix98, 1997),
-and omitted in Issue 6 (Unix03, 2004) without documenting the rationale,
+The \fB+m\fP option was documented in the POSIX
+Base Specifications Issue 5
+(Unix98, 1997),
+then omitted in Issue 6
+(Unix03, 2004)
+without express motivation,
 though an introductory comment
 \fI\*(``and optionally adjusts the margin\*(''\fP remains,
 overlooked in the removal.
-The documented \fBtabs\fP utility in Issues 6 and later has no mechanism
+The \fBtabs\fP utility documented in Issues 6 and later has no mechanism
 for setting margins.
-The \fB+m\fP option in this implementation differs from the feature
-in SVr4 by using terminal capabilities rather than built-in tables.
+The \fB+m\fP option in
+.I \%ncurses
+\fBtabs\fP differs from the SVr4 feature by using terminal capabilities
+rather than built-in tables.
 .PP
-POSIX documents no limits on the number of tab stops.
-Documentation for other implementations states that there is a limit on the
-number of tab stops
-(e.g., 20 in PWB/Unix's \fBtabs\fP utility).
-While some terminals may not accept an arbitrary number
-of tab stops, this implementation will attempt to set tab stops up to the
-right margin of the screen, if the given list happens to be that long.
+POSIX documents no limit on the number of tab stops.
+Other implementations impose one;
+the limit is 20 in PWB/Unix's \fBtabs\fP utility.
+While some terminals may not accept an arbitrary number of tab stops,
+.I \%ncurses
+\fBtabs\fP attempts to set tab stops up to the right margin if the list
+thereof is sufficiently long.
 .PP
-The \fIRationale\fP section of the POSIX documentation goes into some
-detail about the ways the committee considered redesigning the
-\fBtabs\fP and \fBtput\fP utilities,
-without proposing an improved solution.
-It comments that
+The \*(``Rationale\*('' section of the Issue 6 \fBtabs\fP reference page
+.\" https://pubs.opengroup.org/onlinepubs/009604499/utilities/tabs.html
+details how the committee considered redesigning the \fBtabs\fP and
+\fBtput\fP utilities,
+without settling on an improved solution.
+It claims that
 .RS 5
 .PP
 no known historical version of tabs supports the capability of setting
 arbitrary tab stops.
 .RE
 .PP
-However, the \fIExplicit Lists\fP described in this manual page
-were implemented in PWB/Unix.
-Those provide the capability of setting abitrary tab stops.
+Nevertheless,
+the feature described in subsection \*(``Explicit Lists\*('' above was
+implemented in PWB/Unix,
+and permits the setting of abitrary tab stops.
 .SH SEE ALSO
 \fB\%@INFOCMP@\fP(1M),
 \fB\%@TSET@\fP(1),
index 000a9da40f11b6af1045e81956ff16703223ebea..e1eaa995e1d813f3a2d29aceb8a0efcbcdd17f57 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: term.5,v 1.67 2023/12/02 20:49:04 tom Exp $
-.TH term 5 2023-12-02 "ncurses 6.4" "File formats"
+.\" $Id: term.5,v 1.68 2023/12/16 20:32:22 tom Exp $
+.TH term 5 2023-12-16 "ncurses 6.4" "File formats"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -64,7 +64,8 @@ compiled \fIterminfo\fR terminal description
 .SH DESCRIPTION
 .SS STORAGE LOCATION
 Compiled terminfo descriptions are placed under the directory \fB\*d\fP.
-Two configurations are supported (when building the \fBncurses\fP libraries):
+Two configurations are supported
+(when building the \fI\%ncurses\fP libraries):
 .TP 5
 .B directory tree
 A two-level scheme is used to avoid a linear search
@@ -87,11 +88,12 @@ the terminfo's primary name as a key,
 and records containing only aliases pointing to the primary name.
 .IP
 If built to write hashed databases,
-\fBncurses\fP can still read terminfo databases organized as a directory tree,
+\fI\%ncurses\fP can still read terminfo databases organized as a
+directory tree,
 but cannot write entries into the directory tree.
 It can write (or rewrite) entries in the hashed database.
 .IP
-\fBncurses\fP distinguishes the two cases in the \fI\%TERMINFO\fP and
+\fI\%ncurses\fP distinguishes the two cases in the \fI\%TERMINFO\fP and
 \fI\%TERMINFO_DIRS\fP environment variable by assuming a directory tree
 for entries that correspond to an existing directory,
 and hashed database otherwise.
@@ -219,14 +221,14 @@ With some minor variations of the offsets (see PORTABILITY),
 the same binary format is used in all modern Unix systems.
 Each system uses a predefined set of boolean, number or string capabilities.
 .PP
-The \fBncurses\fP libraries and applications support
+The \fI\%ncurses\fP libraries and applications support
 extended terminfo binary format,
 allowing users to define capabilities which are loaded at runtime.
 This
 extension is made possible by using the fact that the other implementations
 stop reading the terminfo data when they have reached the end of the size given
 in the header.
-\fBncurses\fP checks the size,
+\fI\%ncurses\fP checks the size,
 and if it exceeds that due to the predefined data,
 continues to parse according to its own scheme.
 .PP
@@ -253,8 +255,9 @@ The count- and size-values for the extended string table
 include the extended capability \fInames\fP as well as
 extended capability \fIvalues\fP.
 .PP
-Using the counts and sizes, \fBncurses\fP allocates arrays and reads data
-for the extended capabilities in the same order as the header information.
+Using the counts and sizes,
+\fI\%ncurses\fP allocates arrays and reads data for the extended
+capabilities in the same order as the header information.
 .PP
 The extended string table contains values for string capabilities.
 After the end of these values, it contains the names for each of
@@ -262,11 +265,12 @@ the extended capabilities in order, e.g., booleans, then numbers and
 finally strings.
 .PP
 By storing terminal descriptions in this way,
-\fBncurses\fP is able to provide a database useful with legacy applications,
+\fI\%ncurses\fP is able to provide a database useful with legacy
+applications,
 as well as providing data for applications which need more than the
 predefined capabilities.
 See \fBuser_caps\fP(5) for an overview
-of the way \fBncurses\fP uses this extended information.
+of the way \fI\%ncurses\fP uses this extended information.
 .PP
 Applications which manipulate terminal data can use the definitions
 described in \fBterm_variables\fP(3X) which associate the long capability
@@ -274,7 +278,8 @@ names with members of a \fBTERMTYPE\fP structure.
 .
 .SS EXTENDED NUMBER FORMAT
 On occasion, 16-bit signed integers are not large enough.
-With \fBncurses\fP 6.1, a new format was introduced by making a few changes
+With \fI\%ncurses\fP 6.1,
+a new format was introduced by making a few changes
 to the legacy format:
 .bP
 a different magic number (octal 01036)
@@ -331,7 +336,7 @@ terminfo format used by Solaris curses,
 except in a few less-used details
 where it was found that the latter did not match X/Open Curses.
 The format used by the other Unix versions
-can be matched by building ncurses
+can be matched by building \fI\%ncurses\fP
 with different configuration options.
 .SS Magic codes
 The magic number in a binary terminfo file is the first 16-bits (two bytes).
@@ -352,11 +357,11 @@ A small number of terminal descriptions use uppercase characters in
 their names.
 If the underlying filesystem ignores the difference between
 uppercase and lowercase,
-\fBncurses\fP represents the \*(``first character\*(''
+\fI\%ncurses\fP represents the \*(``first character\*(''
 of the terminal name used as
 the intermediate level of a directory tree in (two-character) hexadecimal form.
 .SS Limits
-\fBncurses\fP stores compiled terminal descriptions
+\fI\%ncurses\fP stores compiled terminal descriptions
 in three related formats,
 described in the sections
 .bP
@@ -369,8 +374,8 @@ described in the sections
 The legacy storage format and the extended number format differ by
 the types of numeric capability which they can store
 (i.e., 16-bit versus 32-bit integers).
-The extended storage format introduced by ncurses 5.0 adds data to
-either of these formats.
+The extended storage format introduced by \fI\%ncurses\fP 5.0 adds data
+to either of these formats.
 .PP
 Some limitations apply:
 .bP
@@ -432,11 +437,11 @@ lp-1f(\*(CW).
 .SH AUTHORS
 Thomas E. Dickey
 .br
-extended terminfo format for ncurses 5.0
+extended terminfo format for \fI\%ncurses\fP 5.0
 .br
-hashed database support for ncurses 5.6
+hashed database support for \fI\%ncurses\fP 5.6
 .br
-extended number support for ncurses 6.1
+extended number support for \fI\%ncurses\fP 6.1
 .sp
 Eric S. Raymond
 .br
index 45475851ce2565857b55aa4808538e76eef701aa..d4989909fcc97d2fe919c4b66ec94ccd7072cf17 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: terminfo.head,v 1.55 2023/11/25 19:52:56 tom Exp $
-.TH terminfo 5 2023-11-25 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "File formats"
+.\" $Id: terminfo.head,v 1.57 2023/12/18 01:15:58 tom Exp $
+.TH terminfo 5 2023-12-17 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "File formats"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -75,7 +75,7 @@ describes terminals by giving a set of capabilities which they
 have, by specifying how to perform screen operations, and by
 specifying padding requirements and initialization sequences.
 .PP
-This manual describes \fBncurses\fP
+This manual describes \fI\%ncurses\fP
 version @NCURSES_MAJOR@.@NCURSES_MINOR@ (patch @NCURSES_PATCH@).
 .SS Terminfo Entry Syntax
 Entries in
index 3560a461fffee29fa545b855bc8d6fa3e6adfa5d..eba40996aa03b29676feb1610755fcfc1d5989a4 100644 (file)
@@ -27,9 +27,9 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: terminfo.tail,v 1.137 2023/12/03 00:17:23 tom Exp $
+.\" $Id: terminfo.tail,v 1.139 2023/12/17 22:56:21 tom Exp $
 .ps +1
-.SS User-Defined Capabilities
+.SS "User-Defined Capabilities"
 .
 The preceding section listed the \fIpredefined\fP capabilities.
 They deal with some special features for terminals no longer
@@ -38,7 +38,8 @@ Occasionally there are special features of newer terminals which
 are awkward or impossible to represent by reusing the predefined
 capabilities.
 .PP
-\fBncurses\fP addresses this limitation by allowing user-defined capabilities.
+\fI\%ncurses\fP addresses this limitation by allowing user-defined
+capabilities.
 The \fB@TIC@\fP and \fB@INFOCMP@\fP programs provide
 the \fB\-x\fP option for this purpose.
 When \fB\-x\fP is set,
@@ -49,8 +50,8 @@ it infers its type (boolean, number or string) from the syntax
 and makes an extended table entry for that capability.
 The \fBuse_extended_names\fP(3X) function makes this information
 conditionally available to applications.
-The ncurses library provides the data leaving most of the behavior
-to applications:
+The \fI\%ncurses\fP library provides the data leaving most of the
+behavior to applications:
 .bP
 User-defined capability strings whose name begins
 with \*(``k\*('' are treated as function keys.
@@ -73,13 +74,14 @@ In particular, providing extended sets of function keys (past the 60
 numbered keys and the handful of special named keys) is best done using
 the longer names available using terminfo.
 .PP
-The ncurses library uses a few of these user-defined capabilities,
+The \fI\%ncurses\fP library uses a few of these user-defined
+capabilities,
 as described in \fBuser_caps\fR(5).
 Other user-defined capabilities (including function keys) are
 described in the terminal database, in the section on
 .I "NCURSES USER-DEFINABLE CAPABILITIES"
 .
-.SS A Sample Entry
+.SS "A Sample Entry"
 .
 The following entry, describing an ANSI-standard terminal, is representative
 of what a \fBterminfo\fP entry for a modern terminal typically looks like.
@@ -133,7 +135,7 @@ or the size of particular delays, and
 string
 capabilities, which give a sequence which can be used to perform particular
 terminal operations.
-.SS Types of Capabilities
+.SS "Types of Capabilities"
 All capabilities have names.
 For instance, the fact that
 ANSI-standard terminals have
@@ -243,8 +245,9 @@ For example, see the second
 in the example above.
 .br
 .ne 5
-.SS Fetching Compiled Descriptions
-Terminal descriptions in \fBncurses\fP are stored in terminal databases.
+.SS "Fetching Compiled Descriptions"
+Terminal descriptions in \fI\%ncurses\fP are stored in terminal
+databases.
 These databases, which are found by their pathname,
 may be configured either as directory trees or hashed databases
 (see \fBterm\fR(5)),
@@ -252,16 +255,16 @@ may be configured either as directory trees or hashed databases
 The library uses a compiled-in list of pathnames,
 which can be overridden by environment variables.
 Before starting to search,
-\fBncurses\fP checks the search list,
+\fI\%ncurses\fP checks the search list,
 eliminating duplicates and pathnames where no terminal database is found.
-The \fBncurses\fP library reads the first description
+The \fI\%ncurses\fP library reads the first description
 which passes its consistency checks.
 .bP
 The environment variable \fBTERMINFO\fR is checked first, for
 a terminal database containing the terminal description.
 .bP
 Next,
-\fBncurses\fP looks in \fI$HOME/.terminfo\fP
+\fI\%ncurses\fP looks in \fI$HOME/.terminfo\fP
 for a compiled description.
 .IP
 This is an optional feature which may be omitted entirely from
@@ -269,14 +272,14 @@ the library, or limited to prevent accidental use by privileged applications.
 .bP
 Next,
 if the environment variable \fI\%TERMINFO_DIRS\fP is set,
-\fBncurses\fP interprets the contents of that variable
+\fI\%ncurses\fP interprets the contents of that variable
 as a list of colon-separated pathnames of terminal databases to be searched.
 .IP
 An empty pathname (i.e., if the variable begins or ends
 with a colon, or contains adjacent colons)
 is interpreted as the system location \fI\*d\fP.
 .bP
-Finally, \fBncurses\fP searches these compiled-in locations:
+Finally, \fI\%ncurses\fP searches these compiled-in locations:
 .RS
 .bP
 a list of directories (@TERMINFO_DIRS@), and
@@ -287,22 +290,23 @@ the system terminfo directory, \fI\*d\fP
 The \fBTERMINFO\fP variable can contain a terminal description instead
 of the pathname of a terminal database.
 If this variable begins with \*(``hex:\*('' or \*(``b64:\*(''
-then \fBncurses\fP reads a terminal description from
+then \fI\%ncurses\fP reads a terminal description from
 hexadecimal- or base64-encoded data,
 and if that description matches the name sought, will use that.
 This encoded data can be set using the \*(``\-Q\*('' option of
 \fB@TIC@\fR or \fB@INFOCMP@\fR.
 .PP
-The preceding addresses the usual configuration of \fBncurses\fP,
+The preceding addresses the usual configuration of \fI\%ncurses\fP,
 which uses terminal descriptions prepared in \fIterminfo\fP format.
 While \fItermcap\fP is less expressive,
-\fBncurses\fP can also be configured to read \fItermcap\fP descriptions.
+\fI\%ncurses\fP can also be configured to read \fItermcap\fP
+descriptions.
 In that configuration,
 it checks the \fI\%TERMCAP\fP and \fI\%TERMPATH\fP variables
 (for content and search path,
 respectively)
 after the system terminal database.
-.SS Preparing Descriptions
+.SS "Preparing Descriptions"
 We now outline how to prepare descriptions of terminals.
 The most effective way to prepare a terminal description is by imitating
 the description of a similar terminal in
@@ -323,7 +327,7 @@ delete 16 or so lines from the middle of the screen, then hit the \*(``u\*(''
 key several times quickly.
 If the terminal messes up, more padding is usually needed.
 A similar test can be used for insert character.
-.SS Basic Capabilities
+.SS "Basic Capabilities"
 The number of columns on each line for the terminal is given by the
 \fBcols\fP numeric capability.
 If the terminal is a \s-1CRT\s0, then the
@@ -450,7 +454,7 @@ while the Lear Siegler \s-1ADM-3\s0 is described as
         ind=\*^J, lines#24,\s+1
 .\".in +2
 .EE
-.SS Parameterized Strings
+.SS "Parameterized Strings"
 Cursor addressing and other strings requiring parameters
 in the terminal are described by a
 parameterized string capability,
@@ -532,18 +536,20 @@ Solaris XPG4 curses does not distinguish between \fIdynamic\fP and
 They are the same.
 Like SVr4 curses, XPG4 curses does not initialize these explicitly.
 .bP
-Before version 6.3, ncurses stores both \fIdynamic\fP and \fIstatic\fP
+Before version 6.3,
+\fI\%ncurses\fP stores both \fIdynamic\fP and \fIstatic\fP
 variables in persistent storage, initialized to zeros.
 .bP
-Beginning with version 6.3, ncurses stores \fIstatic\fP and \fIdynamic\fP
+Beginning with version 6.3,
+\fI\%ncurses\fP stores \fIstatic\fP and \fIdynamic\fP
 variables in the same manner as SVr4.
 .RS
 .bP
-Unlike other implementations, ncurses zeros dynamic variables
+Unlike other implementations, \fI\%ncurses\fP zeros dynamic variables
 before the first \fB%g\fP or \fB%P\fP operator.
 .bP
 Like SVr2,
-the scope of dynamic variables in ncurses
+the scope of dynamic variables in \fI\%ncurses\fP
 is within the current call to
 \fBtparm\fP.
 Use static variables if persistent storage is needed.
@@ -637,7 +643,7 @@ 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 character.
 Then the same is done for the second parameter.
 More complex arithmetic is possible using the stack.
-.SS Cursor Motions
+.SS "Cursor Motions"
 If the terminal has a fast way to home the cursor
 (to very upper left corner of screen) then this can be given as
 \fBhome\fP; similarly a fast way of getting to the lower left-hand corner
@@ -814,7 +820,7 @@ When setting margins, the line- and column-values are zero-based.
 The \fBmgc\fP string capability should be defined.
 Applications such as \fBtabs\fP(1) rely upon this to reset all margins.
 .\"
-.SS Area Clears
+.SS "Area Clears"
 If the terminal can clear from the current position to the end of the
 line, leaving the cursor where it is, this should be given as \fBel\fP.
 If the terminal can clear from the beginning of the line to the current
@@ -828,7 +834,7 @@ if a true
 .B ed
 is not available.)
 .\"
-.SS Insert/delete line and vertical motions
+.SS "Insert/Delete Line and Vertical Motions"
 If the terminal can open a new blank line before the line where the cursor
 is, this should be given as \fBil1\fP; this is done only from the first
 position of a line.
@@ -861,7 +867,7 @@ and
 .B rc
 (save and restore cursor) commands may be useful for ensuring that
 your synthesized insert/delete string does not move the cursor.
-(Note that the \fBncurses\fP(3X) library does this synthesis
+(Note that the \fB\%ncurses\fP(3X) library does this synthesis
 automatically, so you need not compose insert/delete strings for
 an entry with \fBcsr\fP).
 .PP
@@ -905,7 +911,7 @@ below, then \fBdb\fP should be given.
 These indicate
 that deleting a line or scrolling may bring non-blank lines up from below
 or that scrolling back with \fBri\fP may bring down non-blank lines.
-.SS Insert/Delete Character
+.SS "Insert/Delete Character"
 There are two basic kinds of intelligent terminals with respect to
 insert/delete character which can be described using
 .I terminfo.
@@ -1182,7 +1188,7 @@ If a character overstriking another leaves both characters on the screen,
 specify the capability \fBos\fP.
 If overstrikes are erasable with a blank,
 then this should be indicated by giving \fBeo\fP.
-.SS Keypad and Function Keys
+.SS "Keypad and Function Keys"
 If the terminal has a keypad that transmits codes when the keys are pressed,
 this information can be given.
 Note that it is not possible to handle
@@ -1289,7 +1295,7 @@ If there are commands to turn the labels on and off,
 give them in \fBsmln\fP and \fBrmln\fP.
 \fBsmln\fP is normally output after one or more pln
 sequences to make sure that the change becomes visible.
-.SS Tabs and Initialization
+.SS "Tabs and Initialization"
 A few capabilities are used only for tabs:
 .bP
 If the terminal has hardware tabs, the command to advance to the next
@@ -1473,7 +1479,7 @@ use the
 \fBhts\fP (\fBset_tab\fP) capabilities directly
 only when the \fBit\fP (\fBinit_tabs\fP) capability
 is set to a value other than \fIeight\fP.
-.SS Delays and Padding
+.SS "Delays and Padding"
 Many older and slower terminals do not support either XON/XOFF or DTR
 handshaking, including hard copy terminals and some very archaic CRTs
 (including, for example, DEC VT100s).
@@ -1501,7 +1507,7 @@ then this can be given as \fBpad\fP.
 Only the first character of the
 .B pad
 string is used.
-.SS Status Lines
+.SS "Status Lines"
 Some terminals have an extra \*(``status line\*('' which is not normally used by
 software (and thus not counted in the terminal's \fBlines\fP capability).
 .PP
@@ -1533,9 +1539,10 @@ A command to erase or blank the status line may be specified as \fBdsl\fP.
 The boolean capability \fBeslok\fP specifies that escape sequences, tabs,
 etc., work ordinarily in the status line.
 .PP
-The \fBncurses\fP implementation does not yet use any of these capabilities.
+The \fI\%ncurses\fP implementation does not yet use any of these
+capabilities.
 They are documented here in case they ever become important.
-.SS Line Graphics
+.SS "Line Graphics"
 Many terminals have alternate character sets useful for forms-drawing.
 Terminfo and \fBcurses\fP have built-in support
 for most of the drawing characters
@@ -1610,7 +1617,7 @@ to a copy of this table for your terminal, giving the character which
 as the corresponding graphic.
 Then read off the VT100/your terminal
 character pairs right to left in sequence; these become the ACSC string.
-.SS Color Handling
+.SS "Color Handling"
 The curses library functions \fBinit_pair\fP and \fBinit_color\fP
 manipulate the \fIcolor pairs\fP and \fIcolor values\fP discussed in this
 section
@@ -1623,21 +1630,21 @@ terminals have a predefined set of \fIN\fP colors
 (where \fIN\fP is usually 8),
 and can set
 character-cell foreground and background characters independently, mixing them
-into \fIN\fP\ *\ \fIN\fP color-pairs.
+into \fIN\fP\ *\ \fIN\fP color pairs.
 .bP
 On HP-like terminals, the user must set each color
 pair up separately (foreground and background are not independently settable).
-Up to \fIM\fP color-pairs may be set up from 2*\fIM\fP different colors.
+Up to \fIM\fP color pairs may be set up from 2*\fIM\fP different colors.
 ANSI-compatible terminals are Tektronix-like.
 .PP
 Some basic color capabilities are independent of the color method.
 The numeric
 capabilities \fBcolors\fP and \fBpairs\fP specify the maximum numbers of colors
-and color-pairs that can be displayed simultaneously.
+and color pairs that can be displayed simultaneously.
 The \fBop\fP (original
 pair) string resets foreground and background colors to their default values
 for the terminal.
-The \fBoc\fP string resets all colors or color-pairs to
+The \fBoc\fP string resets all colors or color pairs to
 their default values for the terminal.
 Some terminals (including many PC
 terminal emulators) erase screen areas with the current background color rather
@@ -1668,7 +1675,7 @@ The \fBsetaf\fP/\fBsetab\fP and \fBsetf\fP/\fBsetb\fP capabilities take a
 single numeric argument each.
 Argument values 0-7 of \fBsetaf\fP/\fBsetab\fP are portably defined as
 follows (the middle column is the symbolic #define available in the header for
-the \fBcurses\fP or \fBncurses\fP libraries).
+the \fBcurses\fP or \fI\%ncurses\fP libraries).
 The terminal hardware is free to
 map these as it likes, but the RGB values indicate normal locations in color
 space.
@@ -1711,7 +1718,7 @@ white     COLOR_WHITE     7       max,    max,    max
 It is important to not confuse the two sets of color capabilities;
 otherwise red/blue will be interchanged on the display.
 .PP
-On an HP-like terminal, use \fBscp\fP with a color-pair number parameter to set
+On an HP-like terminal, use \fBscp\fP with a color pair number parameter to set
 which color pair is current.
 .PP
 Some terminals allow the \fIcolor values\fP to be modified:
@@ -1729,8 +1736,8 @@ The ranges are
 terminal-dependent.
 .bP
 On an HP-like terminal, \fBinitp\fP may give a capability for changing a
-color-pair value.
-It will take seven parameters; a color-pair number (0 to
+color pair value.
+It will take seven parameters; a color pair number (0 to
 \fBmax_pairs\fP \- 1), and two triples describing first background and then
 foreground colors.
 These parameters must be (Red, Green, Blue) or
@@ -1739,7 +1746,7 @@ These parameters must be (Red, Green, Blue) or
 On some color terminals, colors collide with highlights.
 You can register
 these collisions with the \fBncv\fP capability.
-This is a bit-mask of
+This is a bit mask of
 attributes not to be used when colors are enabled.
 The correspondence with the
 attributes understood by \fBcurses\fP is as follows:
@@ -1773,16 +1780,19 @@ foreground color blue and is not available in color mode.
 These should have
 an \fBncv\fP capability of 2.
 .PP
-SVr4 curses does nothing with \fBncv\fP, ncurses recognizes it and optimizes
+SVr4 curses does nothing with \fBncv\fP,
+\fI\%ncurses\fP recognizes it and optimizes
 the output in favor of colors.
 .SS Miscellaneous
 If the terminal requires other than a null (zero) character as a pad, then this
 can be given as pad.
 Only the first character of the pad string is used.
 If the terminal does not have a pad character, specify npc.
-Note that ncurses implements the termcap-compatible \fBPC\fP variable;
+Note that \fI\%ncurses\fP implements the termcap-compatible \fBPC\fP
+variable;
 though the application may set this value to something other than
-a null, ncurses will test \fBnpc\fP first and use napms if the terminal
+a null,
+\fI\%ncurses\fP will test \fBnpc\fP first and use napms if the terminal
 has no pad character.
 .PP
 If the terminal can move up or down half a line,
@@ -1882,7 +1892,7 @@ All text, including
 is transparently passed to the printer while an
 .B mc5p
 is in effect.
-.SS Glitches and Braindamage
+.SS "Glitches and Brain Damage"
 Hazeltine terminals,
 which do not allow \*(``\*~\*('' characters to be displayed should
 indicate \fBhz\fP.
@@ -1905,7 +1915,7 @@ 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 necessary to use
 delete and insert line.
-The ncurses implementation ignores this glitch.
+The \fI\%ncurses\fP implementation ignores this glitch.
 .PP
 The Beehive Superbee, which is unable to correctly transmit the escape
 or control/C characters, has
@@ -1917,7 +1927,7 @@ Note that in older terminfo versions, this capability was called
 .PP
 Other specific terminal problems may be corrected by adding more
 capabilities of the form \fBx\fIx\fR.
-.SS Pitfalls of Long Entries
+.SS "Pitfalls of Long Entries"
 Long terminfo entries are unlikely to be a problem; to date, no entry has even
 approached terminfo's 4096-byte string-table maximum.
 Unfortunately, the termcap
@@ -1999,20 +2009,16 @@ If it is too long even before
 terminal types and users whose \fITERM\fP variable does not have a termcap
 entry.
 .PP
-When in \-C (translate to termcap) mode, the \fBncurses\fP implementation of
+When in \-C (translate to termcap) mode,
+the \fI\%ncurses\fP implementation of
 \fB@TIC@\fP(1M) issues warning messages when the pre-tc length of a termcap
 translation is too long.
 The \-c (check) option also checks resolved (after tc
 expansion) lengths.
-.SH PORTABILITY
-Do not count on compiled (binary) \fI\%terminfo\fP entries being
-portable between commercial Unix systems.
-At least two implementations of \fI\%terminfo\fP
-(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 Curses extensions.
+.SH FILES
+.TP
+.I \*d
+compiled terminal description database directory
 .SH EXTENSIONS
 Searching for terminal descriptions in
 \fI$HOME/.terminfo\fP and \fI\%TERMINFO_DIRS\fP
@@ -2024,14 +2030,15 @@ interpret the %A and %O operators in parameter strings.
 SVr4/XPG4 do not specify whether \fBmsgr\fP licenses movement while in
 an alternate-character-set mode (such modes may, among other things, map
 CR and NL to characters that do not trigger local motions).
-The \fBncurses\fP implementation ignores \fBmsgr\fP in \fBALTCHARSET\fP
-mode.
+The \fI\%ncurses\fP implementation ignores \fBmsgr\fP in
+\fBALTCHARSET\fP mode.
 This raises the possibility that an XPG4
 implementation making the opposite interpretation may need terminfo
-entries made for \fBncurses\fP to have \fBmsgr\fP turned off.
+entries made for \fI\%ncurses\fP to have \fBmsgr\fP turned off.
 .PP
-The \fBncurses\fP library handles insert-character and insert-character modes
-in a slightly non-standard way to get better update efficiency.
+The \fI\%ncurses\fP library handles insert-character and
+insert-character modes in a slightly non-standard way to get better
+update efficiency.
 See
 the \fBInsert/Delete Character\fP subsection above.
 .PP
@@ -2041,7 +2048,7 @@ They are deduced from the
 documentation for the AT&T 505 terminal.
 .PP
 Be careful assigning the \fBkmous\fP capability.
-The \fBncurses\fP library wants to interpret it as \fBKEY_MOUSE\fP,
+The \fI\%ncurses\fP library wants to interpret it as \fBKEY_MOUSE\fP,
 for use by terminals and emulators like xterm
 that can return mouse-tracking information in the keyboard-input stream.
 .PP
@@ -2093,10 +2100,15 @@ plus function keys 11 through 63,
 plus a number of incompatible string table extensions.
 .bP
 OSF/1 supports both the SVr4 set and the AIX extensions.
-.SH FILES
-.TP
-.I \*d
-compiled terminal description database directory
+.SH PORTABILITY
+Do not count on compiled (binary) \fI\%terminfo\fP entries being
+portable between commercial Unix systems.
+At least two implementations of \fI\%terminfo\fP
+(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 Curses extensions.
 .SH AUTHORS
 Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey.
 Based on \fIpcurses\fP by Pavel Curtis.
index b9a50b37eb9af1a2b51130a4f91a30a00bc05619..384d8d629e256560c7ff9b3d7f1e9afe4967c0f8 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: tic.1m,v 1.103 2023/12/02 20:50:53 tom Exp $
-.TH @TIC@ 1M 2023-12-02 "ncurses 6.4" "User commands"
+.\" $Id: tic.1m,v 1.104 2023/12/16 20:33:11 tom Exp $
+.TH @TIC@ 1M 2023-12-16 "ncurses 6.4" "User commands"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -86,7 +86,7 @@ x\
 The \fB@TIC@\fP command translates a \fBterminfo\fP file from source
 format into compiled format.
 The compiled format is necessary for use with
-the library routines in \fBncurses\fP(3X).
+the library routines in \fB\%ncurses\fP(3X).
 .PP
 As described in \fBterm\fP(5), the database may be either a directory
 tree (one file per terminal entry) or a hashed database (one record per entry).
@@ -242,7 +242,7 @@ rather than their decimal equivalents.
 Force source translation to terminfo format.
 .TP
 \fB\-K\fP
-Suppress some longstanding ncurses extensions to termcap format,
+Suppress some longstanding \fI\%ncurses\fP extensions to termcap format,
 e.g., "\es" for space.
 .TP
 \fB\-L\fP
@@ -331,7 +331,8 @@ Normally, it infers data which is commonly missing in older terminfo data,
 or in termcaps.
 .TP
 \fB\-V\fP
-reports the version of ncurses which was used in this program, and exits.
+reports the version of \fI\%ncurses\fP which was used in this program,
+and exits.
 .TP
 \fB\-v\fIn\fR
 specifies that (verbose) output be written to standard error trace
@@ -341,7 +342,8 @@ The optional parameter \fIn\fP is a number from 1 to 9, inclusive,
 indicating the desired level of detail of information.
 .RS
 .bP
-If ncurses is built without tracing support, the optional parameter is ignored.
+If \fI\%ncurses\fP is built without tracing support,
+the optional parameter is ignored.
 .bP
 If \fIn\fP is omitted, the default level is 1.
 .bP
@@ -500,7 +502,7 @@ are not supported by SVr4 \fBtic\fP:
 \fB\-x\fP
 .RE
 .bP
-The NetBSD \fBtic\fP  supports a few of the ncurses options
+The NetBSD \fBtic\fP supports a few of the \fI\%ncurses\fP options
 .sp
 .RS
 \fB\-a\fP
@@ -527,7 +529,7 @@ According to its manual pages, that system also supported the \fB\-v\fP option.
 Shortly after Issue 7 was released, Tru64 was discontinued.
 As of 2019, the surviving implementations of \fBtic\fP
 are SVr4 (AIX, HP-UX and Solaris),
-ncurses
+\fI\%ncurses\fP
 and NetBSD curses.
 The SVr4 \fBtic\fP programs all support the \fB\-v\fP option.
 The NetBSD \fBtic\fP program follows X/Open's documentation,
@@ -559,7 +561,7 @@ While the program itself was changed little as development
 continued with System V Release 4,
 the table of capabilities grew from 180 (\fIpcurses\fP) to 464 (Solaris).
 .PP
-In early development of ncurses (1993),
+In early development of \fI\%ncurses\fP (1993),
 Zeyd Ben-Halim used the table from \fImytinfo\fP to
 extend the \fIpcurses\fP table to 469 capabilities
 (456 matched SVr4, 8 were only in SVr4, 13 were not in SVr4).
@@ -569,7 +571,7 @@ The exceptions were
 \fB\%memory_lock_above\fP and
 \fB\%memory_unlock\fP (see \fB\%user_caps\fP(5)).
 .PP
-Eric Raymond incorporated parts of \fImytinfo\fP into ncurses
+Eric Raymond incorporated parts of \fImytinfo\fP into \fI\%ncurses\fP
 to implement the termcap-to-terminfo source conversion,
 and extended that to begin development of
 the corresponding terminfo-to-termcap source conversion,
@@ -580,7 +582,7 @@ to support user-defined capabilities.
 .PP
 In 2010, Roy Marples provided a \fBtic\fP program
 and terminfo library for NetBSD.
-That implementation adapts several features from ncurses,
+That implementation adapts several features from \fI\%ncurses\fP,
 including \fB@TIC@\fP's \fB\-x\fP option.
 .PP
 The \fB\-c\fP option tells \fB@TIC@\fP to check for problems in the
@@ -589,18 +591,20 @@ Continued development provides additional checks:
 .bP
 \fIpcurses\fP had 8 warnings
 .bP
-ncurses in 1996 had 16 warnings
+\fI\%ncurses\fP in 1996 had 16 warnings
 .bP
 Solaris (SVr4) curses has 28 warnings
 .bP
 NetBSD tic in 2019 has 19 warnings.
 .bP
-ncurses in 2019 has 96 warnings
+\fI\%ncurses\fP in 2019 has 96 warnings
 .PP
-The checking done in ncurses' \fB@TIC@\fP helps with the conversion to
-termcap, as well as pointing out errors and inconsistencies.
+The checking done in \fI\%ncurses\fP' \fB@TIC@\fP helps with the
+conversion to termcap,
+as well as pointing out errors and inconsistencies.
 It is also used to ensure consistency with the user-defined capabilities.
-There are 527 distinct capabilities in ncurses' terminal database;
+There are 527 distinct capabilities in \fI\%ncurses\fP' terminal
+database;
 128 of those are user-defined.
 .SH AUTHORS
 Eric S. Raymond <esr@snark.thyrsus.com>
index 0a462b9dd4c2162cc1c4712ac52dac6fa9a622c4..47fb61e7517fafb7d5d08b0db9df14ff4c50594b 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: toe.1m,v 1.58 2023/12/02 20:49:04 tom Exp $
-.TH @TOE@ 1M 2023-12-02 "ncurses 6.4" "User commands"
+.\" $Id: toe.1m,v 1.59 2023/12/16 21:01:59 tom Exp $
+.TH @TOE@ 1M 2023-12-16 "ncurses 6.4" "User commands"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -71,9 +71,9 @@ list table of entries of \fIterminfo\fR terminal types
 \fB\%@TOE@\fP reports to the standard output stream the (primary) names
 and descriptions of the terminal types available to the \fIterminfo\fP
 library.
-Each \fIdirectory\fP operand is scanned;
+Each \fIdirectory\fP is scanned;
 if none are given,
-\fB\%@TOE@\fP scans the the default \fIterminfo\fP directory.
+\fB\%@TOE@\fP scans the default \fIterminfo\fP directory.
 .SH OPTIONS
 The \fB\-h\fP option can be helpful to observe where \fB\%@TOE@\fP is
 looking for terminal descriptions.
@@ -132,11 +132,11 @@ showing \fB\%@TOE@\fP's progress.
 .IP
 The optional parameter \fIn\fP is an integer between 1 and 10 inclusive,
 interpreted as for \fB\%@TIC@\fP(1M).
-If \fIncurses\fP is built without tracing support,
+If \fI\%ncurses\fP is built without tracing support,
 \fIn\fP is ignored.
 .TP
 \fB\-V\fP
-reports the version of \fIncurses\fP associated
+reports the version of \fI\%ncurses\fP associated
 with this program and exits with a successful status.
 .SH FILES
 .TP
@@ -147,7 +147,7 @@ compiled terminal description database
 There is no applicable X/Open or POSIX standard for it.
 .PP
 It replaces a \fB\-T\fP option that was briefly supported by
-the \fIncurses\fP \fB\%infocmp\fP utility in 1995.
+the \fI\%ncurses\fP \fB\%infocmp\fP utility in 1995.
 .PP
 The \fB\-a\fP and \fB\-s\fP options were added in 2006 and 2011,
 respectively.
index a4da5d0497365ff94595faade8e8dcdf35550d70..3811e6ad4e3865cb80d7bb88192dcecbca7cd13e 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: tput.1,v 1.91 2023/12/02 20:49:04 tom Exp $
-.TH @TPUT@ 1 2023-12-02 "ncurses 6.4" "User commands"
+.\" $Id: tput.1,v 1.92 2023/12/16 20:32:22 tom Exp $
+.TH @TPUT@ 1 2023-12-16 "ncurses 6.4" "User commands"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -119,7 +119,8 @@ If \fB\-T\fP is specified, then the shell
 variables \fILINES\fP and \fI\%COLUMNS\fP will also be ignored.
 .TP
 \fB\-V\fP
-reports the version of ncurses which was used in this program, and exits.
+reports the version of \fI\%ncurses\fP which was used in this program,
+and exits.
 .TP
 .B \-x
 prevents \fB\%@TPUT@\fP from attempting to clear the scrollback buffer.
@@ -248,7 +249,8 @@ If \fB@TPUT@\fP is invoked by a link named \fBreset\fP, this has the
 same effect as \fB@TPUT@ reset\fP.
 The \fB@TSET@\fP(1) utility also treats a link named \fBreset\fP specially.
 .PP
-Before ncurses 6.1, the two utilities were different from each other:
+Before \fI\%ncurses\fP 6.1,
+the two utilities were different from each other:
 .bP
 \fB@TSET@\fP utility reset the terminal modes and special characters
 (not done with \fB@TPUT@\fP).
@@ -261,8 +263,8 @@ in contrast to the tab-stops and margins which are set by this utility.
 The \fBreset\fP program is usually an alias for \fB@TSET@\fP,
 because of this difference with resetting terminal modes and special characters.
 .PP
-With the changes made for ncurses 6.1, the \fIreset\fP feature of the
-two programs is (mostly) the same.
+With the changes made for \fI\%ncurses\fP 6.1,
+the \fIreset\fP feature of the two programs is (mostly) the same.
 A few differences remain:
 .bP
 The \fB@TSET@\fP program waits one second when resetting,
@@ -383,7 +385,7 @@ before falling back to \*(``/dev/tty\*('' and finally just assumes
 a 1200Bd terminal.
 When updating terminal modes, it ignores errors.
 .IP
-Until changes made after ncurses 6.0,
+Until changes made after \fI\%ncurses\fP 6.0,
 \fB@TPUT@\fP did not modify terminal modes.
 \fB@TPUT@\fP now uses a similar scheme,
 using functions shared with \fB@TSET@\fP
@@ -405,11 +407,11 @@ function to analyze nonstandard \fIcapname\fP operands.
 .IP
 Besides providing more reliable operation than AT&T's utility,
 a portability problem is introduced by this analysis:
-An OpenBSD developer adapted the internal library function from ncurses
-to port NetBSD's termcap-based \fBtput\fP to terminfo.
+An OpenBSD developer adapted the internal library function from
+\fI\%ncurses\fP to port NetBSD's termcap-based \fBtput\fP to terminfo.
 That had been modified to interpret multiple commands on a line.
 Portable applications should not rely upon this feature;
-ncurses provides it to support applications written
+\fI\%ncurses\fP provides it to support applications written
 specifically for OpenBSD.
 .PP
 This implementation (unlike others) can accept both \fItermcap\fP
@@ -454,7 +456,7 @@ than terminfo capability names in their respective \fBtput\fP commands.
 Since 2010, NetBSD's \fBtput\fP uses terminfo names.
 Before that, it (like FreeBSD) recognized termcap names.
 .IP
-Beginning in 2021, FreeBSD uses the ncurses \fBtput\fP,
+Beginning in 2021, FreeBSD uses the \fI\%ncurses\fP \fBtput\fP,
 configured for both terminfo (tested first) and termcap (as a fallback).
 .PP
 Because (apparently) \fIall\fP of the certified Unix systems
@@ -490,10 +492,10 @@ confusing the \fB\-1\fP written to the standard output for an absent
 or cancelled numeric value versus an (unsigned) exit code.
 .PP
 The various Unix systems (AIX, HP-UX, Solaris) use the same exit-codes
-as ncurses.
+as \fI\%ncurses\fP.
 .PP
 NetBSD curses documents different exit codes which do not correspond
-to either ncurses or X/Open.
+to either \fI\%ncurses\fP or X/Open.
 .SH HISTORY
 The \fBtput\fP command was begun by Bill Joy in 1980.
 The initial version only cleared the screen.
@@ -537,7 +539,7 @@ AT&T or BSD: Ross Ridge's \fImytinfo\fP package, published on
 Ridge's program made more sophisticated use of the terminal capabilities
 than the BSD program.
 Eric Raymond used that \fBtput\fP program
-(and other parts of \fImytinfo\fP) in ncurses in June 1995.
+(and other parts of \fImytinfo\fP) in \fI\%ncurses\fP in June 1995.
 Using the portions dealing with terminal capabilities
 almost without change,
 Raymond made improvements to the way the command-line parameters
index ec96109328552f1e24340f13b85a6524e70621f0..4621c8cfab1084e29fe4ab3acd9e20a86a3cd1a0 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: tset.1,v 1.77 2023/12/02 20:52:24 tom Exp $
-.TH @TSET@ 1 2023-12-02 "ncurses 6.4" "User commands"
+.\" $Id: tset.1,v 1.78 2023/12/16 20:32:22 tom Exp $
+.TH @TSET@ 1 2023-12-16 "ncurses 6.4" "User commands"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -277,7 +277,8 @@ Print the sequence of shell commands to initialize the environment variable
 see subsection \*(``Setting the Environment\*(''.
 .TP
 .B \-V
-reports the version of ncurses which was used in this program, and exits.
+reports the version of \fI\%ncurses\fP which was used in this program,
+and exits.
 .TP
 .B \-w
 Resize the window to match the size deduced via \fBsetupterm\fP(3X).
@@ -337,7 +338,7 @@ with a few exceptions we shall consider now.
 .PP
 A few options are different
 because the \fI\%TERMCAP\fP variable
-is no longer supported under terminfo-based \fBncurses\fP:
+is no longer supported under terminfo-based \fI\%ncurses\fP:
 .bP
 The \fB\-S\fP option of BSD \fBtset\fP no longer works;
 it prints an error message to the standard error and dies.
@@ -387,7 +388,7 @@ In 4.4BSD, \fBtset\fP uses the window size from the termcap description
 to set the window size if \fBtset\fP is not able to obtain the window
 size from the operating system.
 .bP
-In ncurses, \fB@TSET@\fP obtains the window size using
+In \fI\%ncurses\fP, \fB@TSET@\fP obtains the window size using
 \fBsetupterm\fP, which may be from
 the operating system,
 the \fILINES\fP and \fICOLUMNS\fP environment variables or
index 7ffd4b31e32f000c694e23300de6cf56face517b..033f9d464dece458d14296b407703d814d359ddc 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: user_caps.5,v 1.41 2023/10/07 21:19:07 tom Exp $
-.TH user_caps 5 2023-10-07 "ncurses 6.4" "File formats"
+.\" $Id: user_caps.5,v 1.42 2023/12/16 20:32:22 tom Exp $
+.TH user_caps 5 2023-12-16 "ncurses 6.4" "File formats"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -54,7 +54,7 @@ user-defined \fIterminfo\fR capability format
 .B @TIC@ \-x
 .SH DESCRIPTION
 .SS Background
-Before ncurses 5.0,
+Before \fI\%ncurses\fP 5.0,
 terminfo databases used a \fIfixed repertoire\fP of terminal
 capabilities designed for the SVr2 terminal database in 1984,
 and extended in stages through SVr4 (1989),
@@ -88,22 +88,24 @@ Although they \fImay\fP provide all of the standard capability names,
 the position in the tables differs because some features were added as needed,
 while others were added (out of order) to comply with X/Open Curses.
 .IP
-While ncurses' repertoire of predefined capabilities is closest to Solaris,
+While \fI\%ncurses\fP' repertoire of predefined capabilities is closest
+to Solaris,
 Solaris's terminfo database has a few differences from
 the list published by X/Open Curses.
-For example, ncurses can be configured with tables which match the
-terminal databases for AIX, HP-UX or OSF/1,
+For example,
+\fI\%ncurses\fP can be configured with tables which match the terminal
+databases for AIX, HP-UX or OSF/1,
 rather than the default Solaris-like configuration.
 .bP
-In SVr4 curses and ncurses,
+In SVr4 curses and \fI\%ncurses\fP,
 the terminal database is defined at compile-time using a text file
 which lists the different terminal capabilities.
 .IP
 In principle, the text-file can be extended,
 but doing this requires recompiling and reinstalling the library.
-The text-file used in ncurses for terminal capabilities includes
+The text-file used in \fI\%ncurses\fP for terminal capabilities includes
 details for various systems past the documented X/Open Curses features.
-For example, ncurses supports these capabilities in each configuration:
+For example, \fI\%ncurses\fP supports these capabilities in each configuration:
 .RS 8
 .TP 5
 memory_lock
@@ -138,16 +140,16 @@ it could represent larger numbers.
 Although termcap's extensibility was rarely used
 (it was never the \fIspeaker\fP who had actually used the feature),
 the criticism had a point.
-ncurses 5.0 provided a way to detect nonstandard capabilities,
+\fI\%ncurses\fP 5.0 provided a way to detect nonstandard capabilities,
 determine their
 type and optionally store and retrieve them in a way which did not interfere
 with other applications.
 These are referred to as \fIuser-defined capabilities\fP because no
 modifications to the toolset's predefined capability names are needed.
 .PP
-The ncurses utilities \fB@TIC@\fP and \fB@INFOCMP@\fP have a command-line
-option \*(``\-x\*('' to control whether the nonstandard capabilities
-are stored or retrieved.
+The \fI\%ncurses\fP utilities \fB@TIC@\fP and \fB@INFOCMP@\fP have a
+command-line option \*(``\-x\*('' to control whether the nonstandard
+capabilities are stored or retrieved.
 A library function \fBuse_extended_names\fP
 is provided for the same purpose.
 .PP
@@ -155,7 +157,7 @@ When compiling a terminal database, if \*(``\-x\*('' is set,
 \fB@TIC@\fP will store a user-defined capability if the capability name is not
 one of the predefined names.
 .PP
-Because ncurses provides a termcap library interface,
+Because \fI\%ncurses\fP provides a termcap library interface,
 these user-defined capabilities may be visible to termcap applications:
 .bP
 The termcap interface (like all implementations of termcap)
@@ -177,16 +179,16 @@ While terminfo and termcap have a set of 60 predefined function-key names,
 to which a series of keys can be assigned,
 that is insufficient for more than a dozen keys multiplied by more than
 a couple of modifier combinations.
-The ncurses database uses a convention based on \fBxterm\fP(1) to
-provide extended special-key names.
+The \fI\%ncurses\fP database uses a convention based on \fBxterm\fP(1)
+to provide extended special-key names.
 .IP
 Fitting that into termcap's limitation of 2-character names
 would be pointless.
 These extended keys are available only with terminfo.
 .SS Recognized capabilities
-The ncurses library uses the user-definable capabilities.
+The \fI\%ncurses\fP library uses the user-definable capabilities.
 While the terminfo database may have other extensions,
-ncurses makes explicit checks for these:
+\fI\%ncurses\fP makes explicit checks for these:
 .RS 3
 .TP 3
 AX
@@ -204,7 +206,8 @@ The command \*(``\fBtput clear\fP\*('' does the same thing.
 .TP 3
 NQ
 \fIboolean\fP,
-used to suppress a consistency check in @TIC@ for the ncurses capabilities
+used to suppress a consistency check in @TIC@ for the \fI\%ncurses\fP
+capabilities
 in user6 through user9 (u6, u7, u8 and u9)
 which tell how to query the terminal's cursor position
 and its device attributes.
@@ -219,21 +222,23 @@ This capability allows the \fBcolor_content\fP function to
 return appropriate values without requiring the application
 to initialize colors using \fBinit_color\fP.
 .IP
-The capability type determines the values which ncurses sees:
+The capability type determines the values which \fI\%ncurses\fP sees:
 .RS 3
 .TP 3
 \fIboolean\fP
 implies that the number of bits for red, green and blue are the same.
 Using the maximum number of colors,
-ncurses adds two, divides that sum by three, and assigns the result
-to red, green and blue in that order.
+\fI\%ncurses\fP adds two,
+divides that sum by three,
+and assigns the result to red,
+green and blue in that order.
 .IP
 If the number of bits needed for the number of colors is not a multiple
 of three, the blue (and green) components lose in comparison to red.
 .TP 3
 \fInumber\fP
-tells ncurses what result to add to red, green and blue.
-If ncurses runs out of bits,
+tells \fI\%ncurses\fP what result to add to red, green and blue.
+If \fI\%ncurses\fP runs out of bits,
 blue (and green) lose just as in the \fIboolean\fP case.
 .TP 3
 \fIstring\fP
@@ -249,27 +254,29 @@ to represent the standard eight ANSI colors, i.e., one bit per color.
 .TP 3
 U8
 \fInumber\fP,
-asserts that ncurses must use Unicode values for line-drawing characters,
+asserts that \fI\%ncurses\fP must use Unicode values for line-drawing
+characters,
 and that it should ignore the alternate character set capabilities
 when the locale uses UTF-8 encoding.
 For more information, see the discussion of
-\fBNCURSES_NO_UTF8_ACS\fP in \fBncurses\fP(3X).
+\fBNCURSES_NO_UTF8_ACS\fP in \fB\%ncurses\fP(3X).
 .IP
 Set this capability to a nonzero value to enable it.
 .TP 3
 XM
 \fIstring\fP,
-override ncurses's built-in string which
+override \fI\%ncurses\fP's built-in string which
 enables/disables \fBxterm\fP(1) mouse mode.
 .IP
-ncurses sends a character sequence to the terminal to initialize mouse mode,
+\fI\%ncurses\fP sends a character sequence to the terminal to initialize mouse mode,
 and when the user clicks the mouse buttons or (in certain modes) moves the
 mouse, handles the characters sent back by the terminal to tell it what
 was done with the mouse.
 .IP
 The mouse protocol is enabled when
 the \fImask\fP passed in the \fBmousemask\fP function is nonzero.
-By default, ncurses handles the responses for the X11 xterm mouse protocol.
+By default,
+\fI\%ncurses\fP handles the responses for the X11 xterm mouse protocol.
 It also knows about the \fISGR 1006\fP xterm mouse protocol,
 but must to be told to look for this specifically.
 It will not be able to guess which mode is used,
@@ -278,7 +285,7 @@ because the responses are enough alike that only confusion would result.
 The \fBXM\fP capability has a single parameter.
 If nonzero, the mouse protocol should be enabled.
 If zero, the mouse protocol should be disabled.
-ncurses inspects this capability if it is present,
+\fI\%ncurses\fP inspects this capability if it is present,
 to see whether the 1006 protocol is used.
 If so, it expects the responses to use the \fISGR 1006\fP xterm mouse protocol.
 .IP
@@ -348,14 +355,15 @@ There is no standard for what those keys can send.
 Since 1999, \fBxterm\fP(1) has supported
 \fIshift\fP, \fIcontrol\fP, \fIalt\fP, and \fImeta\fP modifiers which produce
 distinct special-key strings.
-In a terminal description, ncurses has no special knowledge of the
-modifiers used.
+In a terminal description,
+\fI\%ncurses\fP has no special knowledge of the modifiers used.
 Applications can use the \fInaming convention\fP established for \fBxterm\fP
 to find these special keys in the terminal description.
 .PP
 Starting with the curses convention that \fIkey names\fP begin with \*(``k\*(''
 and that shifted special keys are an uppercase name,
-ncurses' terminal database defines these names to which a suffix is added:
+\fI\%ncurses\fP' terminal database defines these names to which a suffix
+is added:
 .PP
 .RS 5
 .TS
@@ -402,8 +410,9 @@ _
 .RE
 .PP
 None of these are predefined; terminal descriptions can refer to \fInames\fP
-which ncurses will allocate at runtime to \fIkey-codes\fP.
-To use these keys in an ncurses program, an application could do this:
+which \fI\%ncurses\fP will allocate at runtime to \fIkey-codes\fP.
+To use these keys in an \fI\%ncurses\fP program,
+an application could do this:
 .bP
 using a list of extended key \fInames\fP,
 ask \fBtigetstr\fP(3X) for their values, and
@@ -421,7 +430,7 @@ but makes no use of these capabilities itself.
 .SH AUTHORS
 Thomas E. Dickey
 .br
-beginning with ncurses 5.0 (1999)
+beginning with \fI\%ncurses\fP 5.0 (1999)
 .\"
 .SH SEE ALSO
 \fB\%@INFOCMP@\fP(1M),
index 91709614a5d6168269eede33478e82d8893d6a59..9f9cb5450da9db80cf5d3908b9af15f87932be8d 100644 (file)
@@ -6,8 +6,8 @@
 # Report bugs and new terminal descriptions to
 #      bug-ncurses@gnu.org
 #
-#      $Revision: 1.1083 $
-#      $Date: 2023/12/09 18:07:12 $
+#      $Revision: 1.1085 $
+#      $Date: 2023/12/16 13:48:44 $
 #
 # The original header is preserved below for reference.  It is noted that there
 # is a "newer" version which differs in some cosmetic details (but actually
@@ -6130,7 +6130,7 @@ xterm-sun|xterm with sunFunctionKeys true,
        kich1=\E[2z, knp=\E[222z, kpp=\E[216z, kund=\E[195z,
        use=xterm+nofkeys, use=xterm+nopcfkeys,
 xterms-sun|small (80x24) xterm with sunFunctionKeys true,
-       cols#80, lines#24, use=xterm-sun,
+       use=xterm-sun,
 
 #### GNOME (VTE)
 # this describes the alpha-version of GNOME terminal shipped with Redhat 6.0
@@ -8863,7 +8863,7 @@ sun-e-s|sun-s-e|Sun Microsystems Workstation with status hacked for emacs,
 sun-48|Sun 48-line window,
        cols#80, lines#48, use=sun,
 sun-34|Sun 34-line window,
-       cols#80, lines#34, use=sun,
+       use=sun,
 sun-24|Sun 24-line window,
        cols#80, lines#24, use=sun,
 sun-17|Sun 17-line window,
@@ -19983,7 +19983,7 @@ ndr9500-mc|NDR 9500 with magic cookies (enables underline inverse video invisibl
        blink=\EG2, invis=\EG1, rev=\EG4, rmso=\EG0, rmul=\EG0,
        sgr=\E%%\E(%?%p5%p8%|%t\E)%;%?%p9%t\E$%;\EG%{48}%?%p7%t%{1}
            %+%;%?%p4%t%{2}%+%;%?%p3%p1%|%t%{4}%+%;%?%p2%t%{8}%+%;%c,
-       sgr0=\EG0\E%%\E(, smso=\EG4, smul=\EG8, use=ndr9500,
+       smso=\EG4, smul=\EG8, use=ndr9500,
 
 ndr9500-25-mc|NDR 500 with 25 lines and magic cookies,
        lines#25, use=ndr9500-mc,
@@ -21656,7 +21656,6 @@ minitel2-80|minitel 2 (80cols) avec filets VT100 (DEC),
        use=minitel12-80,
 
 minitel12-80|minitel 12 (80cols),
-       G0,
        civis=\E[<1h, cnorm=\E[<1l, is2=\E[12h, u6=\E[%i%d;%dH,
        u7=\E[6n,
        .acsc=ffggj+k+l+m+n+ovq-swt+u+v+w+xx}}\,m+k.l-j0
@@ -21664,7 +21663,7 @@ minitel12-80|minitel 12 (80cols),
        .enacs=\E)3, .rmacs=^O, .rs3=\E[?4l, .scs=\E(%p1%c,
        .smacs=^N,
        C0=ffggj+k+l+m+n+ovq-swt+u+v+w+xx}}\,m+k.l-j0\177,
-       E0=^O, S0=\E)3\016,
+       S0=\E)3\016,
        XC=B%\E(B\,\243\E(3}\,\247\E(R[\,\257\E(3v\,\260\E(3f\,\261
           \E(3g\,\267\E(3~\,\274\E(3O\,\275\E(3P\,\276\E(3Q\,\300A
           \,\301A\,\302A\,\303A\,\304A\,\305A\,\306E\,\307C\,\310E
@@ -27779,4 +27778,7 @@ v3220|LANPAR Vision II model 3220/3221/3222,
 #      + remove xterm+sm+1006 from tmux (Debian #1057688).
 #      + used "infocmp -u" to help trim redundant capabilities -TD
 #
+# 2023-12-16
+#      + used "infocmp -u" to help trim redundant capabilities -TD
+#
 ######## SHANTIH!  SHANTIH!  SHANTIH!
index f208818fbe9b6c288a3f947423891494436e028e..3eea42af758c900b6734c9a61db4b6f7ba2454a6 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.4+20231209) unstable; urgency=low
+ncurses6 (6.4+20231217) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 03 Dec 2023 19:13:10 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 17 Dec 2023 18:18:40 -0500
 
 ncurses6 (5.9+20131005) unstable; urgency=low
 
index f208818fbe9b6c288a3f947423891494436e028e..3eea42af758c900b6734c9a61db4b6f7ba2454a6 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.4+20231209) unstable; urgency=low
+ncurses6 (6.4+20231217) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 03 Dec 2023 19:13:10 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 17 Dec 2023 18:18:40 -0500
 
 ncurses6 (5.9+20131005) unstable; urgency=low
 
index bbc96461f637959e06d63e94468c517faedca94a..794660ba76c494bcf2fbda7cad6e6f6244fb4a7d 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.4+20231209) unstable; urgency=low
+ncurses6 (6.4+20231217) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 03 Dec 2023 19:13:10 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 17 Dec 2023 18:18:40 -0500
 
 ncurses6 (5.9+20120608) unstable; urgency=low
 
index ea75563c2e96c83e92a3bf773d86b64684b4752d..96cb0d310581f5602e2ae7986a067643a17fc017 100644 (file)
@@ -1,4 +1,4 @@
-; $Id: mingw-ncurses.nsi,v 1.622 2023/12/04 00:13:44 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.624 2023/12/17 23:18:40 tom Exp $\r
 \r
 ; TODO add examples\r
 ; TODO bump ABI to 6\r
@@ -10,7 +10,7 @@
 !define VERSION_MAJOR "6"\r
 !define VERSION_MINOR "4"\r
 !define VERSION_YYYY  "2023"\r
-!define VERSION_MMDD  "1209"\r
+!define VERSION_MMDD  "1217"\r
 !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}\r
 \r
 !define MY_ABI   "5"\r
index eda21ca6e469832e8d09c849d70e5eb515ed3d7c..43652ce496fb27b4a95d5409ba29396f5b0a75c0 100644 (file)
@@ -3,7 +3,7 @@
 Summary: shared libraries for terminal handling
 Name: mingw32-ncurses6
 Version: 6.4
-Release: 20231209
+Release: 20231217
 License: X11
 Group: Development/Libraries
 URL: https://invisible-island.net/ncurses/
index 217f8cd34bacf9ee651d6a3f3673125fec7bcec0..faccbf19449a20e38c55c954640ddd03588ec6dd 100644 (file)
@@ -1,7 +1,7 @@
 Summary: shared libraries for terminal handling
 Name: ncurses6
 Version: 6.4
-Release: 20231209
+Release: 20231217
 License: X11
 Group: Development/Libraries
 URL: https://invisible-island.net/ncurses/
index efb2f1e22db43c7c16e3227bf8f28aed96ad6744..4312edb7ada43e32f32297498ed238edd60dc8e1 100644 (file)
@@ -1,7 +1,7 @@
 Summary: Curses library with POSIX thread support.
 Name: ncursest6
 Version: 6.4
-Release: 20231209
+Release: 20231217
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index 62cbb17a8398bde6eea926b21f6f3ff567df2a3d..7932203ac2b1aa189f37e5dd7ffbdd662f6ad988 100644 (file)
@@ -43,7 +43,7 @@
 
 #include <dump_entry.h>
 
-MODULE_ID("$Id: infocmp.c,v 1.161 2023/12/09 19:56:10 tom Exp $")
+MODULE_ID("$Id: infocmp.c,v 1.163 2023/12/16 17:27:47 tom Exp $")
 
 #define MAX_STRING     1024    /* maximum formatted string */
 
@@ -187,9 +187,19 @@ capcmp(PredIdx idx, const char *s, const char *t)
        return (_nc_capcmp(s, t));
 }
 
+/*
+ * Predicate function to use for "use=" decompilation.
+ *
+ * Return value is used in fmt_entry:
+ *   FAIL  show nothing for this capability.
+ *   FALSE show cancel for booleans (a compromise)
+ *   TRUE  show capability
+ *
+ * The only difference between FALSE/TRUE returns is in the treatment of
+ * booleans.
+ */
 static int
 use_predicate(unsigned type, PredIdx idx)
-/* predicate function to use for use decompilation */
 {
     int result = FAIL;
     ENTRY *ep;
@@ -213,8 +223,7 @@ use_predicate(unsigned type, PredIdx idx)
            if (idx < NUM_BOOLEANS(&(entries[0].tterm))) {
                for (ep = &entries[1]; ep < entries + termcount; ep++) {
                    if (idx < NUM_BOOLEANS(&(ep->tterm))
-                       && ep->tterm.Booleans[idx] == TRUE) {
-                       is_set = entries[0].tterm.Booleans[idx];
+                       && (is_set = ep->tterm.Booleans[idx])) {
                        break;
                    }
                }
@@ -267,6 +276,8 @@ use_predicate(unsigned type, PredIdx idx)
 
                if (usestr == CANCELLED_STRING && termstr == ABSENT_STRING)
                    result = (FAIL);
+               else if (usestr == CANCELLED_STRING && termstr == CANCELLED_STRING)
+                   result = (TRUE);
                else if (usestr == ABSENT_STRING && termstr == ABSENT_STRING)
                    result = (FAIL);
                else if (!usestr || !termstr || capcmp(idx, usestr, termstr))