]> ncurses.scripts.mit.edu Git - ncurses.git/commitdiff
ncurses 6.0 - patch 20161203
authorThomas E. Dickey <dickey@invisible-island.net>
Sun, 4 Dec 2016 02:16:58 +0000 (02:16 +0000)
committerThomas E. Dickey <dickey@invisible-island.net>
Sun, 4 Dec 2016 02:16:58 +0000 (02:16 +0000)
+ improve discussion of field validation in form_driver.3x manual page.
+ update curs_trace.3x manual page.

31 files changed:
NEWS
VERSION
dist.mk
doc/html/man/adacurses6-config.1.html
doc/html/man/captoinfo.1m.html
doc/html/man/clear.1.html
doc/html/man/curs_trace.3x.html
doc/html/man/form.3x.html
doc/html/man/form_driver.3x.html
doc/html/man/infocmp.1m.html
doc/html/man/infotocap.1m.html
doc/html/man/menu.3x.html
doc/html/man/ncurses.3x.html
doc/html/man/ncurses6-config.1.html
doc/html/man/panel.3x.html
doc/html/man/tabs.1.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
man/curs_trace.3x
man/form_driver.3x
package/debian-mingw/changelog
package/debian-mingw64/changelog
package/debian/changelog
package/mingw-ncurses.nsi
package/mingw-ncurses.spec
package/ncurses.spec
progs/tic.c
test/README

diff --git a/NEWS b/NEWS
index 3bfbfdee8c460f934004888ddf7bc1d1532b1cf9..6470e10bb2bd2fa7adb79847dfe7eb25de9e112e 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -25,7 +25,7 @@
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
--- $Id: NEWS,v 1.2703 2016/11/27 01:41:10 tom Exp $
+-- $Id: NEWS,v 1.2705 2016/12/04 01:02:15 tom Exp $
 -------------------------------------------------------------------------------
 
 This is a log of changes that ncurses has gone through since Zeyd started
@@ -45,6 +45,10 @@ 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.
 
+20161203
+       + improve discussion of field validation in form_driver.3x manual page.
+       + update curs_trace.3x manual page.
+
 20161126
        + modify linux-16color to not mask dim, standout or reverse with the
          ncv capability -TD
diff --git a/VERSION b/VERSION
index de15c5bb992de967c4d573622e8ac457d470f821..34955bfb2be991ab951595748dd41b2ae22bb4d8 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-5:0:9  6.0     20161126
+5:0:9  6.0     20161203
diff --git a/dist.mk b/dist.mk
index d4c654c30c48019a8d24e71f2b90c97ad550c2ec..05f8869d7a982efd3d1086fe7e8b130a57191069 100644 (file)
--- a/dist.mk
+++ b/dist.mk
@@ -25,7 +25,7 @@
 # use or other dealings in this Software without prior written               #
 # authorization.                                                             #
 ##############################################################################
-# $Id: dist.mk,v 1.1134 2016/11/21 22:34:14 tom Exp $
+# $Id: dist.mk,v 1.1135 2016/12/03 16:11:11 tom Exp $
 # Makefile for creating ncurses distributions.
 #
 # This only needs to be used directly as a makefile by developers, but
@@ -37,7 +37,7 @@ SHELL = /bin/sh
 # These define the major/minor/patch versions of ncurses.
 NCURSES_MAJOR = 6
 NCURSES_MINOR = 0
-NCURSES_PATCH = 20161126
+NCURSES_PATCH = 20161203
 
 # We don't append the patch to the version, since this only applies to releases
 VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
index c65cb7c98e4a2bbc858dc0315f98429a46c9dc65..da09cbbe0650946eea5af426474e348eec114bed 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
 
 
index 4f49b21a9dd5684580f7252f3b2d3be25c83cc2f..8d9ef150d7ceee4b9c38e197bc7712858970c4c1 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index 1af927041d0cf6febb20816fd7f4a1f039e25414..a779802c7b467ddd0013b04da7009837d16a0505 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
 
 
index c066797f2b3c753d976ccb7112bc27c733432dfb..e8ae83b90b1cb03943b0cc9cfb223eaa664cb100 100644 (file)
@@ -26,7 +26,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_trace.3x,v 1.14 2016/10/15 17:26:09 tom Exp @
+  * @Id: curs_trace.3x,v 1.16 2016/12/03 23:53:23 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 
 
 </PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
-       <STRONG>_tracef</STRONG>, <STRONG>_tracedump</STRONG>, <STRONG>_traceattr</STRONG>, <STRONG>_traceattr2</STRONG>,
-       <STRONG>_nc_tracebits</STRONG>, <STRONG>_tracecchar_t</STRONG>, <STRONG>_tracecchar_t2</STRONG>, <STRONG>_tracechar</STRONG>,
-       <STRONG>_tracechtype</STRONG>, <STRONG>_tracechtype2</STRONG>, <STRONG>_tracemouse</STRONG>, <STRONG>trace</STRONG> - <STRONG>curses</STRONG>
-       debugging routines
+       <STRONG>trace</STRONG>, <STRONG>_tracef</STRONG>, <STRONG>_traceattr</STRONG>, <STRONG>_traceattr2</STRONG>, <STRONG>_tracecchar_t</STRONG>,
+       <STRONG>_tracecchar_t2</STRONG>, <STRONG>_tracechar</STRONG>, <STRONG>_tracechtype</STRONG>, <STRONG>_tracechtype2</STRONG>,
+       <STRONG>_nc_tracebits</STRONG>, <STRONG>_tracedump</STRONG>, <STRONG>_tracemouse</STRONG> - <STRONG>curses</STRONG> debugging
+       routines
 
 
 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
 
+       <STRONG>void</STRONG> <STRONG>trace(const</STRONG> <STRONG>unsigned</STRONG> <STRONG>int</STRONG> <EM>param</EM><STRONG>);</STRONG>
+
        <STRONG>void</STRONG> <STRONG>_tracef(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>format</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
-       <STRONG>void</STRONG> <STRONG>_tracedump(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>label</EM><STRONG>,</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+
        <STRONG>char</STRONG> <STRONG>*_traceattr(attr_t</STRONG> <EM>attr</EM><STRONG>);</STRONG>
        <STRONG>char</STRONG> <STRONG>*_traceattr2(int</STRONG> <EM>buffer</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
-       <STRONG>char</STRONG> <STRONG>*_nc_tracebits(void);</STRONG>
-       <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>_tracecchar_t(const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>string</EM><STRONG>);</STRONG>
-       <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>_tracecchar_t2(int</STRONG> <EM>buffer</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>string</EM><STRONG>);</STRONG>
+       <STRONG>char</STRONG> <STRONG>*_tracecchar_t(const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>string</EM><STRONG>);</STRONG>
+       <STRONG>char</STRONG> <STRONG>*_tracecchar_t2(int</STRONG> <EM>buffer</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>string</EM><STRONG>);</STRONG>
        <STRONG>char</STRONG> <STRONG>*_tracechar(int</STRONG> <EM>ch</EM><STRONG>);</STRONG>
        <STRONG>char</STRONG> <STRONG>*_tracechtype(chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
        <STRONG>char</STRONG> <STRONG>*_tracechtype2(int</STRONG> <EM>buffer</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+
+       <STRONG>void</STRONG> <STRONG>_tracedump(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>label</EM><STRONG>,</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+       <STRONG>char</STRONG> <STRONG>*_nc_tracebits(void);</STRONG>
        <STRONG>char</STRONG> <STRONG>*_tracemouse(const</STRONG> <STRONG>MEVENT</STRONG> <STRONG>*</STRONG><EM>event</EM><STRONG>);</STRONG>
-       <STRONG>void</STRONG> <STRONG>trace(const</STRONG> <STRONG>unsigned</STRONG> <STRONG>int</STRONG> <EM>param</EM><STRONG>);</STRONG>
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -79,6 +82,8 @@
        are only available with the  wide-character  configuration
        of the libraries.
 
+
+</PRE><H3><a name="h3-Functions">Functions</a></H3><PRE>
        The principal parts of this interface are
 
        <STRONG>o</STRONG>   <STRONG>trace</STRONG>,  which  selectively  enables  different tracing
        <STRONG>o</STRONG>   <STRONG>_tracef</STRONG>, which writes  formatted  data  to  the  <EM>trace</EM>
            file.
 
-       Calling  <STRONG>trace</STRONG>  with  a  nonzero  parameter opens the file
-       <STRONG>trace</STRONG> in the current directory for output.  The  parameter
-       is formed by OR'ing values from the list of <STRONG>TRACE_</STRONG><EM>xxx</EM> def-
-       initions in <STRONG>&lt;curses.h&gt;</STRONG>.  These include:
+       Calling  <STRONG>trace</STRONG>  with  a nonzero parameter creates the file
+       <STRONG>trace</STRONG> in the current directory for output.   If  the  file
+       already exists, no tracing is done.
+
+       The  other  functions either return a pointer to a string-
+       area (allocated by the corresponding function), or  return
+       no  value (such as <STRONG>_tracedump</STRONG>, which implements the screen
+       dump for <STRONG>TRACE_UPDATE</STRONG>).  The caller should not free  these
+       strings,  since  the  allocation  is  reused on successive
+       calls.  To work around the problem of a single string-area
+       per  function, some use a buffer-number parameter, telling
+       the library to allocate additional string-areas.
+
+
+</PRE><H3><a name="h3-Trace-Parameter">Trace Parameter</a></H3><PRE>
+       The trace parameter is formed by OR'ing  values  from  the
+       list  of  <STRONG>TRACE_</STRONG><EM>xxx</EM>  definitions in <STRONG>&lt;curses.h&gt;</STRONG>.  These in-
+       clude:
 
        <STRONG>TRACE_DISABLE</STRONG>
-            turn off tracing.
+            turn off tracing by passing a zero parameter.
+
+            The library flushes the output file, but  retains  an
+            open file-descriptor to the trace file so that it can
+            resume tracing later if a nonzero parameter is passed
+            to the <STRONG>trace</STRONG> function.
 
        <STRONG>TRACE_TIMES</STRONG>
             trace user and system times of updates.
             trace all character outputs.
 
        <STRONG>TRACE_ORDINARY</STRONG>
-            trace all update actions.  The  old  and  new  screen
-            contents  are  written to the trace file for each re-
+            trace  all  update  actions.   The old and new screen
+            contents are written to the trace file for  each  re-
             fresh.
 
        <STRONG>TRACE_CALLS</STRONG>
             trace changes to video attributes and colors.
 
        <STRONG>TRACE_MAXIMUM</STRONG>
-            maximum  trace  level,  enables  all  of the separate
+            maximum trace level,  enables  all  of  the  separate
             trace features.
 
-       Some tracing features are enabled whenever the  <STRONG>trace</STRONG>  pa-
-       rameter  is nonzero.  Some features overlap.  The specific
+       Some  tracing  features are enabled whenever the <STRONG>trace</STRONG> pa-
+       rameter is nonzero.  Some features overlap.  The  specific
        names are used as a guideline.
 
-       The other functions either return a pointer to  a  string-
-       area  (allocated by the corresponding function), or return
-       no value (such as <STRONG>_tracedump</STRONG>, which implements the  screen
-       dump  for <STRONG>TRACE_UPDATE</STRONG>).  The caller should not free these
-       strings, since the  allocation  is  reused  on  successive
-       calls.  To work around the problem of a single string-area
-       per function, some use a buffer-number parameter,  telling
-       the library to allocate additional string-areas.
 
+</PRE><H3><a name="h3-Initialization">Initialization</a></H3><PRE>
        These  functions check the <STRONG>NCURSES_TRACE</STRONG> environment vari-
        able, to set the tracing feature as if <STRONG>trace</STRONG> was called:
 
-              filter, initscr, new_prescr, newterm, nofilter,
-              restartterm, ripoffline, setupterm, slk_init, tge-
-              tent, use_env, use_extended_names, use_tioctl
+           filter, initscr, new_prescr, newterm, nofilter,
+           restartterm, ripoffline, setupterm, slk_init, tgetent,
+           use_env, use_extended_names, use_tioctl
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
        undocumented  features,  but  they are not compatible with
        ncurses.
 
+       A few functions are not provided when symbol versioning is
+       used:
+
+           _nc_tracebits, _tracedump, _tracemouse
+
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>.
 <ul>
 <li><a href="#h2-NAME">NAME</a></li>
 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
-<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
+<li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
+<ul>
+<li><a href="#h3-Functions">Functions</a></li>
+<li><a href="#h3-Trace-Parameter">Trace Parameter</a></li>
+<li><a href="#h3-Initialization">Initialization</a></li>
+</ul>
+</li>
 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
 <li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
index 134f2dc8c8a0ee726188de5be3b25a6492aae139..a845821ade28f6ea0cf9eb5379a3bf6c53974390 100644 (file)
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "form_" for
        detailed descriptions of the entry points.
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
 
 
index a029ea21c6ffd83799256a741ce7fc1ee58f12f4..74c3c0b7d11b30920ef096ad3d3e3959743c38e2 100644 (file)
@@ -1,6 +1,6 @@
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2015,2016 Free Software Foundation, Inc.              *
   *                                                                          *
   * Permission is hereby granted, free of charge, to any person obtaining a  *
   * copy of this software and associated documentation files (the            *
@@ -26,7 +26,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: form_driver.3x,v 1.25 2015/12/05 21:06:26 tom Exp @
+  * @Id: form_driver.3x,v 1.26 2016/12/04 01:01:17 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
        that request is executed.
 
 
+</PRE><H3><a name="h3-Field-validation">Field validation</a></H3><PRE>
+       The form library makes updates to  the  window  associated
+       with  form  fields  rather than directly to the field buf-
+       fers.
+
+       The form driver provides low-level control over updates to
+       the  form fields.  The form driver also provides for vali-
+       dating modified fields to ensure that  the  contents  meet
+       whatever  constraints  an  application  may  attach  using
+       <STRONG>set_field_type</STRONG>.
+
+       You can validate a field without making any changes to  it
+       using  <STRONG>REQ_VALIDATION</STRONG>.   The  form driver also validates a
+       field in these cases:
+
+       <STRONG>o</STRONG>   a call to <STRONG>set_current_field</STRONG> attempts to move to a dif-
+           ferent field.
+
+       <STRONG>o</STRONG>   a  call to <STRONG>set_current_page</STRONG> attempts to move to a dif-
+           ferent page of the form.
+
+       <STRONG>o</STRONG>   a request attempts to move to a different field.
+
+       <STRONG>o</STRONG>   a request attempts to move to a different page of  the
+           form.
+
+       In each case, the move fails if the field is invalid.
+
+       If the modified field is valid, the form driver copies the
+       modified data from the window associated with the field to
+       the field buffer.
+
+
 </PRE><H3><a name="h3-Mouse-handling">Mouse handling</a></H3><PRE>
-       If the second argument is the KEY_MOUSE special  key,  the
+       If  the  second argument is the KEY_MOUSE special key, the
        associated mouse event is translated into one of the above
-       pre-defined requests.  Currently only clicks in  the  user
-       window  (e.g., inside the form display area or the decora-
+       pre-defined  requests.   Currently only clicks in the user
+       window (e.g., inside the form display area or the  decora-
        tion window) are handled.
 
        If you click above the display region of the form:
 
           a REQ_LAST_FIELD is generated for a triple-click.
 
-       If you click at an field inside the display  area  of  the
+       If  you  click  at an field inside the display area of the
        form:
 
           <STRONG>o</STRONG>   the form cursor is positioned to that field.
 
-          <STRONG>o</STRONG>   If  you  double-click  a  field, the form cursor is
-              positioned to that field and  <STRONG>E_UNKNOWN_COMMAND</STRONG>  is
+          <STRONG>o</STRONG>   If you double-click a field,  the  form  cursor  is
+              positioned  to  that field and <STRONG>E_UNKNOWN_COMMAND</STRONG> is
               returned.  This return value makes sense, because a
-              double click usually means that  an  field-specific
-              action  should be returned.  It is exactly the pur-
-              pose of this return value to signal that an  appli-
+              double  click  usually means that an field-specific
+              action should be returned.  It is exactly the  pur-
+              pose  of this return value to signal that an appli-
               cation specific command should be executed.
 
-          <STRONG>o</STRONG>   If   a   translation   into  a  request  was  done,
+          <STRONG>o</STRONG>   If  a  translation  into  a   request   was   done,
               <STRONG>form_driver</STRONG> returns the result of this request.
 
-       If you clicked outside the user window or the mouse  event
-       could   not   be   translated   into  a  form  request  an
+       If  you clicked outside the user window or the mouse event
+       could  not  be  translated  into   a   form   request   an
        <STRONG>E_REQUEST_DENIED</STRONG> is returned.
 
 
 </PRE><H3><a name="h3-Application-defined-commands">Application-defined commands</a></H3><PRE>
        If the second argument is neither printable nor one of the
-       above  pre-defined form requests, the driver assumes it is
+       above pre-defined form requests, the driver assumes it  is
        an application-specific command and returns <STRONG>E_UNKNOWN_COM-</STRONG>
        <STRONG>MAND</STRONG>.  Application-defined commands should be defined rel-
-       ative to <STRONG>MAX_COMMAND</STRONG>, the  maximum  value  of  these  pre-
+       ative  to  <STRONG>MAX_COMMAND</STRONG>,  the  maximum  value of these pre-
        defined requests.
 
 
        <STRONG>E_OK</STRONG> The routine succeeded.
 
        <STRONG>E_BAD_ARGUMENT</STRONG>
-            Routine  detected  an incorrect or out-of-range argu-
+            Routine detected an incorrect or  out-of-range  argu-
             ment.
 
        <STRONG>E_BAD_STATE</STRONG>
 
 
 </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="form.3x.html">form(3x)</A></STRONG>, <STRONG><A HREF="form_variables.3x.html">form_variables(3x)</A></STRONG>, <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>.
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,        <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>,        <STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>,
+       <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>,  <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG>, <STRONG>form_vari-</STRONG>
+       <STRONG><A HREF="form_variables.3x.html">ables(3x)</A></STRONG>, <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>.
 
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       These routines emulate the System V forms  library.   They
+       These  routines  emulate the System V forms library.  They
        were not supported on Version 7 or BSD versions.
 
 
 </PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
-       Juergen  Pfeifer.   Manual  pages  and  adaptation for new
+       Juergen Pfeifer.  Manual  pages  and  adaptation  for  new
        curses by Eric S. Raymond.
 
 
 <li><a href="#h3-form_driver">form_driver</a></li>
 <li><a href="#h3-form_driver_w">form_driver_w</a></li>
 <li><a href="#h3-Form-driver-requests">Form-driver requests</a></li>
+<li><a href="#h3-Field-validation">Field validation</a></li>
 <li><a href="#h3-Mouse-handling">Mouse handling</a></li>
 <li><a href="#h3-Application-defined-commands">Application-defined commands</a></li>
 </ul>
index e99f32037582c41cbbe3ca77829fbe52e8cef81f..9ea09e81be41ccc5c6042401ff3a6fef1cf0b0c4 100644 (file)
 
        http://invisible-island.net/ncurses/tctest.html
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index 54b2f1adb5e0836cc9bb8fe67cf6d19f967afade..9f623760eadf1425e0ed9158e0fafa47a9659291 100644 (file)
@@ -88,7 +88,7 @@
 </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="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index bad4c5d382df9a4b190c4bef4e7ece9f113a9ccf..05c9ed62ed4b1e23ca007e8d05f16ccc6a58fcc3 100644 (file)
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "menu_" for
        detailed descriptions of the entry points.
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
 
 
index b10d2017d8bac139ba4985fb8c5cb6065feb09fc..19952bbec3a9f52d835821db12953fc16f9f44bf 100644 (file)
@@ -60,7 +60,7 @@
        sonable optimization.  This implementation is "new curses"
        (ncurses) and is the approved replacement for 4.4BSD clas-
        sic  curses,  which has been discontinued.  This describes
-       <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
        The <STRONG>ncurses</STRONG> library emulates the curses library of  System
        V  Release  4  UNIX,  and  XPG4 (X/Open Portability Guide)
index 28fc6821402daa702954dc332f70d3f4a5aad5a4..c0539d40169a80511e81b95237baa695745f66ab 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
 
 
index 10741b467f787571af534f8d0dd838d9b4d7c8ee..b7cd6a28d6b37d029ac5f342e1e991cf5dacb2f5 100644 (file)
 </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_variables.3x.html">curs_variables(3x)</A></STRONG>,
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index 290f9978358e666cb370d40f378471736a624539..8771059b7f1e133c5279bbe20729840f67ef0fe0 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
 
 
index 3ab6070bb64fe6c1d2e7f019d3356f41b4ff257f..87f9e8e46dd9bc4cdbf279e62b8bc6d2afd5cc3b 100644 (file)
@@ -75,7 +75,7 @@
        nals by giving a set of capabilities which they  have,  by
        specifying how to perform screen operations, and by speci-
        fying padding requirements and  initialization  sequences.
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
        Entries in <EM>terminfo</EM> consist of a sequence of `,' separated
        fields (embedded commas may be escaped with a backslash or
index cd14ee6454a6188356561467bd05042817be64ac..ddb1c45042307abfb56153497cf32d14e385cecb 100644 (file)
        <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>,   <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>,   <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>,    <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>,
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="term.5.html">term(5)</A></STRONG>.  <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index b67450cd4e8dd60cff856b117384f748d4539be2..0559dcf96c6e68dafbb95150188be7752b66601d 100644 (file)
        <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>,   <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>,   <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>,    <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>,
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
 
 
index bbc22a4eeed642b453410eeb6c2c370ad3f71e57..2e4e5595e408de745a50e606cfb0bcb05695dfec 100644 (file)
        <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>,   <STRONG>stty(1)</STRONG>,   <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>,   <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>,    <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>,
        <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>.
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
 
 
index 964cee63d9f64adeece90e9cd8531efa1ad2bfbf..22004866d11a618feedc1dd7e6d68633edbec273 100644 (file)
        <STRONG>csh(1)</STRONG>,   <STRONG>sh(1)</STRONG>,   <STRONG>stty(1)</STRONG>,   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>,   <STRONG>tty(4)</STRONG>,
        <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG>ttys(5)</STRONG>, <STRONG>environ(7)</STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161203).
 
 
 
index 85df283c2c522716c294a3d2203da3e567c76334..123577c4566d81e5b0abae950a3205b4baf48c9b 100644 (file)
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_trace.3x,v 1.14 2016/10/15 17:26:09 tom Exp $
+.\" $Id: curs_trace.3x,v 1.16 2016/12/03 23:53:23 tom Exp $
 .de bP
 .IP \(bu 4
 ..
 .na
 .hy 0
 .SH NAME
+\fBtrace\fR,
 \fB_tracef\fR,
-\fB_tracedump\fR,
 \fB_traceattr\fR,
 \fB_traceattr2\fR,
-\fB_nc_tracebits\fR,
 \fB_tracecchar_t\fR,
 \fB_tracecchar_t2\fR,
 \fB_tracechar\fR,
 \fB_tracechtype\fR,
 \fB_tracechtype2\fR,
-\fB_tracemouse\fR,
-\fBtrace\fR \- \fBcurses\fR debugging routines
+\fB_nc_tracebits\fR,
+\fB_tracedump\fR,
+\fB_tracemouse\fR \- \fBcurses\fR debugging routines
 .ad
 .hy
 .SH SYNOPSIS
 \fB#include <curses.h>\fR
 .sp
+\fBvoid trace(const unsigned int \fP\fIparam\fP\fB);\fR
+.sp
 \fBvoid _tracef(const char *\fP\fIformat\fP\fB, ...);\fR
-.br
-\fBvoid _tracedump(const char *\fP\fIlabel\fP\fB, WINDOW *\fP\fIwin\fP\fB);\fR
-.br
+.sp
 \fBchar *_traceattr(attr_t \fP\fIattr\fP\fB);\fR
 .br
 \fBchar *_traceattr2(int \fP\fIbuffer\fP\fB, chtype \fP\fIch\fP\fB);\fR
 .br
-\fBchar *_nc_tracebits(void);\fR
-.br
-\fBchar * _tracecchar_t(const cchar_t *\fP\fIstring\fP\fB);\fR
+\fBchar *_tracecchar_t(const cchar_t *\fP\fIstring\fP\fB);\fR
 .br
-\fBchar * _tracecchar_t2(int \fP\fIbuffer\fP\fB, const cchar_t *\fP\fIstring\fP\fB);\fR
+\fBchar *_tracecchar_t2(int \fP\fIbuffer\fP\fB, const cchar_t *\fP\fIstring\fP\fB);\fR
 .br
 \fBchar *_tracechar(int \fP\fIch\fP\fB);\fR
 .br
 \fBchar *_tracechtype(chtype \fP\fIch\fP\fB);\fR
 .br
 \fBchar *_tracechtype2(int \fP\fIbuffer\fP\fB, chtype \fP\fIch\fP\fB);\fR
+.sp
+\fBvoid _tracedump(const char *\fP\fIlabel\fP\fB, WINDOW *\fP\fIwin\fP\fB);\fR
 .br
-\fBchar *_tracemouse(const MEVENT *\fP\fIevent\fP\fB);\fR
+\fBchar *_nc_tracebits(void);\fR
 .br
-\fBvoid trace(const unsigned int \fP\fIparam\fP\fB);\fR
+\fBchar *_tracemouse(const MEVENT *\fP\fIevent\fP\fB);\fR
 .SH DESCRIPTION
 The \fBtrace\fR routines are used for debugging the ncurses libraries,
 as well as applications which use the ncurses libraries.
@@ -82,21 +82,38 @@ e.g., \fIlibncurses_g.a\fR, but may be compiled into any model (shared, static,
 profile) by defining the symbol \fBTRACE\fR.
 Additionally, some functions are only available with the wide-character
 configuration of the libraries.
-.PP
+.SS Functions
 The principal parts of this interface are
 .bP
 \fBtrace\fR, which selectively enables different tracing features, and
 .bP
 \fB_tracef\fR, which writes formatted data to the \fItrace\fR file.
 .PP
-Calling \fBtrace\fR with a nonzero parameter opens the file \fBtrace\fR
+Calling \fBtrace\fR with a nonzero parameter creates the file \fBtrace\fR
 in the current directory for output.
-The parameter is formed by OR'ing
+If the file already exists, no tracing is done.
+.PP
+The other functions either return a pointer to a string-area
+(allocated by the corresponding function),
+or return no value (such as \fB_tracedump\fP, which implements the
+screen dump for \fBTRACE_UPDATE\fP).
+The caller should not free these
+strings, since the allocation is reused on successive calls.
+To work around the problem of a single string-area per function,
+some use a buffer-number parameter, telling the library to allocate
+additional string-areas.
+.SS Trace Parameter
+The trace parameter is formed by OR'ing
 values from the list of \fBTRACE_\fP\fIxxx\fR definitions in \fB<curses.h>\fR.
 These include:
 .TP 5
 .B TRACE_DISABLE
-turn off tracing.
+turn off tracing by passing a zero parameter.
+.IP
+The library flushes the output file,
+but retains an open file-descriptor to the trace file
+so that it can resume tracing later if a nonzero parameter is passed
+to the \fBtrace\fP function.
 .TP 5
 .B TRACE_TIMES
 trace user and system times of updates.
@@ -150,22 +167,13 @@ Some tracing features are enabled whenever the \fBtrace\fR parameter
 is nonzero.
 Some features overlap.
 The specific names are used as a guideline.
-.PP
-The other functions either return a pointer to a string-area
-(allocated by the corresponding function),
-or return no value (such as \fB_tracedump\fP, which implements the
-screen dump for \fBTRACE_UPDATE\fP).
-The caller should not free these
-strings, since the allocation is reused on successive calls.
-To work around the problem of a single string-area per function,
-some use a buffer-number parameter, telling the library to allocate
-additional string-areas.
-.PP
+.SS Initialization
 These functions check the \fBNCURSES_TRACE\fP environment variable,
 to set the tracing feature as if \fBtrace\fP was called:
-.RS
+.RS 4
 .PP
 .na
+.hy 0
 filter,
 initscr,
 new_prescr,
@@ -179,6 +187,7 @@ tgetent,
 use_env,
 use_extended_names,
 use_tioctl
+.hy
 .ad
 .RE
 .SH RETURN VALUE
@@ -189,5 +198,13 @@ These functions are not part of the XSI interface.
 Some other curses implementations are known to
 have similar, undocumented features,
 but they are not compatible with ncurses.
+.PP
+A few functions are not provided when symbol versioning is used:
+.RS 4
+.PP
+_nc_tracebits,
+_tracedump,
+_tracemouse
+.RE
 .SH SEE ALSO
 \fBcurses\fR(3X).
index 73245851410513a944ea4902eaa7863ee100bf99..e70fe4dc1af901b0a220966758744e8162a38753 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2015,2016 Free Software Foundation, Inc.              *
 .\"                                                                          *
 .\" Permission is hereby granted, free of charge, to any person obtaining a  *
 .\" copy of this software and associated documentation files (the            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: form_driver.3x,v 1.25 2015/12/05 21:06:26 tom Exp $
+.\" $Id: form_driver.3x,v 1.26 2016/12/04 01:01:17 tom Exp $
 .TH form_driver 3X ""
 .de bP
 .IP \(bu 4
@@ -134,6 +134,32 @@ REQ_VALIDATION     Validate field.
 If the second argument is a printable character, the driver places it
 in the current position in the current field.  If it is one of the forms
 requests listed above, that request is executed.
+.SS Field validation
+The form library makes updates to the window associated with form fields rather than
+directly to the field buffers.
+.PP
+The form driver provides low-level control over updates to the form fields.
+The form driver also provides for validating modified fields to ensure that the contents
+meet whatever constraints an application may attach using \fBset_field_type\fP.
+.PP
+.PP
+You can validate a field without making any changes to it using
+\fBREQ_VALIDATION\fP.
+The form driver also validates a field in these cases:
+.bP
+a call to \fBset_current_field\fP attempts to move to a different field.
+.bP
+a call to \fBset_current_page\fP attempts to move to a different page of the form.
+.bP
+a request attempts to move to a different field.
+.bP
+a request attempts to move to a different page of the form.
+.PP
+In each case, the move fails if the field is invalid.
+.PP
+If the modified field is valid, the form driver copies the modified
+data from the window associated with the field
+to the field buffer.
 .SS Mouse handling
 .PP
 If the second argument is the KEY_MOUSE special key, the associated
@@ -218,6 +244,9 @@ The form driver code saw an unknown request code.
 .SH SEE ALSO
 \fBcurses\fR(3X),
 \fBform\fR(3X),
+\fBform_field_buffer\fR(3X),
+\fBform_field_validation\fR(3X),
+\fBform_fieldtype\fR(3X),
 \fBform_variables\fR(3X),
 \fBgetch\fR(3X).
 .SH NOTES
index 948672cd4cf5f64aeafbc250eab5da8b85afe961..4fcda4d5ad449caf9d3c34bd96fbe58f7cb6d1ab 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.0+20161126) unstable; urgency=low
+ncurses6 (6.0+20161203) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Mon, 21 Nov 2016 17:34:14 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 03 Dec 2016 11:11:11 -0500
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
index 948672cd4cf5f64aeafbc250eab5da8b85afe961..4fcda4d5ad449caf9d3c34bd96fbe58f7cb6d1ab 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.0+20161126) unstable; urgency=low
+ncurses6 (6.0+20161203) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Mon, 21 Nov 2016 17:34:14 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 03 Dec 2016 11:11:11 -0500
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
index ee8c9005454543bf89bfac20b102a493b74a5304..7791b025230ff40d7eb08813ae3b9c8a949c5c5b 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.0+20161126) unstable; urgency=low
+ncurses6 (6.0+20161203) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Mon, 21 Nov 2016 17:34:14 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 03 Dec 2016 11:11:11 -0500
 
 ncurses6 (5.9-20120608) unstable; urgency=low
 
index 35863b276dfcd9aa9dedc84326a47c52b4e8c69f..bf9fa03f5e1aa007ab5dfb68c05aac62cdff05c9 100644 (file)
@@ -1,4 +1,4 @@
-; $Id: mingw-ncurses.nsi,v 1.186 2016/11/21 22:34:14 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.187 2016/12/03 16:11:11 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 "0"\r
 !define VERSION_YYYY  "2016"\r
-!define VERSION_MMDD  "1126"\r
+!define VERSION_MMDD  "1203"\r
 !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}\r
 \r
 !define MY_ABI   "5"\r
index 0d0a7cb0b29e6d004de507419195962811334afa..cbf82fc5068ab9c9a8bed786e1d8e7fb2d9fa0f4 100644 (file)
@@ -3,7 +3,7 @@
 Summary: shared libraries for terminal handling
 Name: mingw32-ncurses6
 Version: 6.0
-Release: 20161126
+Release: 20161203
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index 84af698e759d2682876871b0a65d1fdd99428046..7498d36b60a62e5aa14d6efe794be55077ab7e1a 100644 (file)
@@ -1,7 +1,7 @@
 Summary: shared libraries for terminal handling
 Name: ncurses6
 Version: 6.0
-Release: 20161126
+Release: 20161203
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index 4285d1a4ef108bb6ce23116ce5f50b4612641feb..7339f11a0d78bcb32684f0e47cc77f86cf965580 100644 (file)
@@ -48,7 +48,7 @@
 #include <parametrized.h>
 #include <transform.h>
 
-MODULE_ID("$Id: tic.c,v 1.228 2016/11/26 22:01:41 tom Exp $")
+MODULE_ID("$Id: tic.c,v 1.229 2016/12/04 02:12:38 tom Exp $")
 
 #define STDIN_NAME "<stdin>"
 
@@ -1244,7 +1244,7 @@ check_ansi_cursor(char *list[4])
     }
     if (!repeated) {
        char *up = list[1];
-       size_t prefix = csi_length(up);
+       size_t prefix = (size_t) csi_length(up);
 
        if (prefix) {
            suffix = prefix;
index 7bab08b2be01b7952dd1ecd5e9398daeb2f82f2f..a6c31ec4e7b5c3ddab96d7f5881f03ef6c722eab 100644 (file)
@@ -25,7 +25,7 @@
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
--- $Id: README,v 1.55 2016/04/02 23:57:07 tom Exp $
+-- $Id: README,v 1.56 2016/12/04 01:16:34 tom Exp $
 -------------------------------------------------------------------------------
 
 The programs in this directory are used to test and demonstrate ncurses.
@@ -157,6 +157,7 @@ set_form_userptr            -
 set_form_win                   test: cardfile demo_forms ncurses
 set_max_field                  test: demo_forms
 set_new_page                   test: demo_forms
+unfocus_current_field          -
 unpost_form                    test: cardfile demo_forms form_driver_w ncurses
 
 libmenu:
@@ -251,17 +252,17 @@ addchstr                  test: test_addchstr
 addnstr                                test: test_addstr
 addnwstr                       test: ncurses test_addwstr
 addstr                         test: blue bs cardfile filter gdc hanoi lrtest ncurses test_addstr
-addwstr                                test: test_addwstr
+addwstr                                test: blue test_addwstr
 assume_default_colors          test: background ncurses
 assume_default_colors_sp       -
 attr_get                       -
 attr_off                       test: ncurses
 attr_on                                test: ncurses
 attr_set                       test: ncurses
-attroff                                test: dots_curses echochar filter gdc ncurses tclock
-attron                         test: bs dots_curses echochar filter gdc ncurses
+attroff                                test: blue dots_curses echochar filter gdc ncurses tclock
+attron                         test: blue bs dots_curses echochar filter gdc ncurses
 attrset                                test: bs filter firework gdc hanoi insdelln ncurses rain tclock testaddch testcurs
-baudrate                       lib: ncurses
+baudrate                       test: ncurses
 baudrate_sp                    lib: ncurses
 beep                           test: blue bs cardfile chgat clip_printw demo_forms demo_menus demo_panels edit_field hanoi inch_wide inchs ins_wide insdelln inserts knight movewindow ncurses savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs view xmas
 beep_sp                                lib: ncurses
@@ -281,7 +282,7 @@ can_change_color_sp         -
 cbreak                         test: background blue bs cardfile chgat clip_printw color_set demo_altkeys demo_defkey demo_forms demo_keyok demo_menus demo_panels ditto filter firework foldkeys form_driver_w gdc hanoi hashtest inch_wide inchs ins_wide insdelln inserts knight lrtest movewindow ncurses newdemo savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs view worm xmas
 cbreak_sp                      lib: ncurses
 chgat                          test: chgat
-clear                          test: blue bs gdc ncurses testcurs xmas
+clear                          test: blue bs filter gdc ncurses testcurs xmas
 clearok                                test: bs knight
 clrtobot                       test: demo_menus ncurses
 clrtoeol                       test: blue bs demo_altkeys filter foldkeys form_driver_w hanoi hashtest movewindow ncurses view
@@ -289,7 +290,7 @@ color_content                       test: ncurses
 color_content_sp               -
 color_set                      test: color_set ncurses
 copywin                                test: ncurses testcurs
-cur_term                       test: demo_termcap demo_terminfo dots dots_mvcur lrtest test_sgr test_vid_puts test_vidputs progs: clear tabs tput tset
+cur_term                       test: demo_termcap demo_terminfo dots dots_mvcur filter list_keys lrtest test_sgr test_vid_puts test_vidputs progs: clear_cmd reset_cmd tabs tput tset
 curs_set                       test: echochar firework gdc hanoi lrtest ncurses newdemo rain savescreen tclock testcurs worm xmas
 curs_set_sp                    lib: ncurses
 curscr                         test: demo_panels edit_field knight lrtest ncurses savescreen tclock view
@@ -319,9 +320,9 @@ echochar                    test: echochar ncurses
 endwin                         test: background blue bs cardfile chgat clip_printw color_set demo_altkeys demo_defkey demo_forms demo_keyok demo_menus demo_panels ditto dots_curses dots_mvcur echochar filter firework firstlast foldkeys form_driver_w gdc hanoi hashtest inch_wide inchs ins_wide insdelln inserts key_names keynames knight lrtest movewindow ncurses newdemo rain redraw savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testaddch testcurs testscanw view worm xmas
 endwin_sp                      lib: ncurses
 erase                          test: cardfile demo_menus filter firework firstlast hanoi lrtest ncurses tclock test_opaque testcurs
-erasechar                      lib: ncurses
+erasechar                      test: ncurses
 erasechar_sp                   lib: ncurses
-erasewchar                     -
+erasewchar                     test: ncurses
 filter                         test: filter
 filter_sp                      -
 flash                          test: cardfile filter lrtest movewindow ncurses tclock testcurs
@@ -356,9 +357,9 @@ halfdelay                   test: view
 halfdelay_sp                   -
 has_colors                     test: background bs cardfile chgat clip_printw color_set demo_forms demo_menus demo_panels dots_curses echochar filter firework gdc hanoi ins_wide insdelln inserts knight ncurses newdemo rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr testcurs view worm xmas
 has_colors_sp                  lib: ncurses
-has_ic                         test: lrtest
+has_ic                         test: lrtest ncurses
 has_ic_sp                      lib: ncurses
-has_il                         -
+has_il                         test: ncurses
 has_il_sp                      lib: ncurses
 has_key                                -
 has_key_sp                     lib: ncurses
@@ -398,13 +399,13 @@ is_cleared                        test: test_opaque
 is_idcok                       test: test_opaque
 is_idlok                       test: test_opaque
 is_immedok                     test: test_opaque
-is_keypad                      test: test_opaque
+is_keypad                      test: ncurses test_opaque
 is_leaveok                     test: test_opaque
 is_linetouched                 lib: form
 is_nodelay                     test: test_opaque
 is_notimeout                   test: test_opaque
 is_pad                         -
-is_scrollok                    test: test_opaque
+is_scrollok                    test: ncurses test_opaque
 is_subwin                      -
 is_syncok                      test: test_opaque
 is_term_resized                        -
@@ -422,11 +423,11 @@ keyname_sp                        lib: ncurses
 keyok                          test: demo_keyok foldkeys
 keyok_sp                       lib: ncurses
 keypad                         test: bs cardfile chgat clip_printw demo_altkeys demo_defkey demo_forms demo_keyok demo_menus demo_panels ditto edit_field filter firework foldkeys form_driver_w hashtest inch_wide inchs ins_wide insdelln inserts key_names keynames knight lrtest movewindow ncurses redraw savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs testscanw view
-killchar                       lib: ncurses
+killchar                       test: ncurses
 killchar_sp                    lib: ncurses
-killwchar                      -
+killwchar                      test: ncurses
 leaveok                                test: hanoi test_opaque
-longname                       test: testcurs progs: tput
+longname                       test: ncurses testcurs progs: tput
 longname_sp                    -
 mcprint                                -
 mcprint_sp                     -
@@ -527,7 +528,7 @@ new_prescr                  lib: ncurses
 newpad                         test: edit_field ncurses testcurs
 newpad_sp                      lib: ncurses
 newscr                         lib: ncurses
-newterm                                test: demo_altkeys ditto dots_mvcur filter foldkeys gdc key_names keynames test_setupterm
+newterm                                test: demo_altkeys ditto dots_mvcur filter foldkeys gdc key_names keynames
 newterm_sp                     -
 newwin                         test: cardfile chgat clip_printw demo_defkey demo_forms demo_keyok demo_menus demo_panels ditto edit_field firstlast inch_wide inchs ins_wide insdelln inserts knight movewindow ncurses newdemo redraw savescreen test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs xmas
 newwin_sp                      lib: ncurses
@@ -560,7 +561,7 @@ pechochar                   -
 pnoutrefresh                   test: edit_field ncurses
 prefresh                       test: testcurs
 printw                         test: background blue bs color_set demo_altkeys demo_defkey demo_keyok filter foldkeys ncurses savescreen testcurs testscanw view
-putp                           test: test_sgr progs: tput
+putp                           test: filter test_sgr progs: tput
 putp_sp                                -
 putwin                         test: ncurses
 qiflush                                -
@@ -571,7 +572,7 @@ redrawwin                   test: redraw view
 refresh                                test: blue bs demo_defkey demo_forms demo_keyok demo_menus demo_panels dots_curses echochar filter firstlast form_driver_w gdc hanoi hashtest lrtest movewindow ncurses savescreen tclock testcurs view xmas
 reset_prog_mode                        test: filter ncurses
 reset_prog_mode_sp             lib: ncurses
-reset_shell_mode               test: bs filter savescreen test_setupterm
+reset_shell_mode               test: bs filter savescreen
 reset_shell_mode_sp            lib: ncurses
 resetty                                -
 resetty_sp                     -
@@ -579,7 +580,7 @@ resize_term                 test: view
 resize_term_sp                 -
 resizeterm                     -
 resizeterm_sp                  lib: ncurses
-restartterm                    test: test_setupterm
+restartterm                    -
 restartterm_sp                 -
 ripoffline                     test: demo_menus ncurses
 ripoffline_sp                  -
@@ -596,7 +597,7 @@ scr_set_sp                  -
 scrl                           test: view
 scroll                         test: testcurs
 scrollok                       test: clip_printw demo_altkeys demo_defkey demo_keyok demo_panels ditto foldkeys hashtest knight ncurses redraw test_opaque testcurs testscanw view
-set_curterm                    lib: ncurses
+set_curterm                    test: list_keys
 set_curterm_sp                 -
 set_escdelay                   test: test_opaque
 set_escdelay_sp                        lib: ncurses
@@ -605,7 +606,7 @@ set_tabsize_sp                      -
 set_term                       lib: ncurses
 setcchar                       test: demo_panels ins_wide ncurses test_add_wchstr test_addwstr view
 setscrreg                      test: view
-setupterm                      test: demo_terminfo dots test_setupterm test_sgr test_vid_puts test_vidputs progs: clear tabs tput tset
+setupterm                      test: demo_terminfo dots list_keys test_setupterm test_sgr test_vid_puts test_vidputs progs: clear tabs tput tset
 slk_attr                       -
 slk_attr_off                   -
 slk_attr_on                    -
@@ -643,8 +644,8 @@ start_color                 test: background blue bs cardfile chgat clip_printw color_set demo
 start_color_sp                 -
 stdscr                         test: bs chgat clip_printw demo_altkeys demo_forms demo_menus demo_panels ditto filter firework foldkeys form_driver_w gdc hanoi hashtest inch_wide inchs ins_wide insdelln inserts key_names keynames knight lrtest movewindow ncurses rain redraw savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs testscanw view worm xmas
 strcodes                       test: demo_termcap test_arrays progs: dump_entry
-strfnames                      test: demo_terminfo test_arrays progs: dump_entry
-strnames                       test: demo_termcap demo_terminfo foldkeys test_arrays progs: dump_entry infocmp tic
+strfnames                      test: demo_terminfo list_keys test_arrays progs: dump_entry
+strnames                       test: demo_termcap demo_terminfo foldkeys list_keys test_arrays progs: dump_entry infocmp tic
 subpad                         test: testcurs
 subwin                         test: movewindow ncurses newdemo testcurs
 syncok                         test: test_opaque
@@ -652,7 +653,7 @@ term_attrs                  test: ncurses
 term_attrs_sp                  -
 termattrs                      test: ncurses testcurs
 termattrs_sp                   lib: ncurses
-termname                       test: testcurs
+termname                       test: list_keys ncurses testcurs
 termname_sp                    lib: ncurses
 tgetent                                test: demo_termcap dots_termcap railroad
 tgetent_sp                     -
@@ -667,14 +668,14 @@ tigetflag                 test: demo_terminfo progs: tic tput
 tigetflag_sp                   -
 tigetnum                       test: demo_terminfo ncurses progs: tput
 tigetnum_sp                    -
-tigetstr                       test: demo_defkey demo_terminfo foldkeys test_sgr testcurs progs: clear tput
+tigetstr                       test: blue demo_defkey demo_terminfo foldkeys list_keys test_sgr testcurs progs: clear_cmd tput
 tigetstr_sp                    -
 timeout                                test: filter rain savescreen
 tiparm                         -
 touchline                      test: chgat clip_printw insdelln
 touchwin                       test: chgat clip_printw demo_menus edit_field filter firstlast inch_wide inchs ins_wide insdelln inserts movewindow ncurses redraw savescreen test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque xmas
-tparm                          test: dots dots_mvcur test_sgr progs: tabs tic tput
-tputs                          test: dots dots_mvcur dots_termcap railroad test_vid_puts test_vidputs progs: clear tabs tset
+tparm                          test: dots dots_mvcur test_sgr progs: reset_cmd tabs tic tput
+tputs                          test: dots dots_mvcur dots_termcap railroad test_vid_puts test_vidputs progs: clear_cmd reset_cmd tabs
 tputs_sp                       lib: ncurses
 trace                          test: demo_menus hashtest lrtest ncurses testcurs view worm
 ttytype                                test: demo_terminfo test_sgr
@@ -693,7 +694,7 @@ use_default_colors          test: background filter firework gdc hanoi knight ncurses ra
 use_default_colors_sp          -
 use_env                                test: ncurses progs: tput
 use_env_sp                     -
-use_extended_names             progs: infocmp tic
+use_extended_names             test: demo_termcap demo_terminfo list_keys progs: infocmp tic
 use_legacy_coding              -
 use_legacy_coding_sp           -
 use_screen                     test: ditto