ncurses 6.2 - patch 20200314

+ add history note to curs_scanw.3x for <stdarg.h> and <varargs.h>
+ add history note to curs_printw.3x for <stdarg.h> and <varargs.h>
+ add portability note to ncurses.3x regarding <stdarg.h>
This commit is contained in:
Thomas E. Dickey 2020-03-15 01:36:38 +00:00
parent 3ef920d65f
commit c0f109a299
31 changed files with 242 additions and 63 deletions

7
NEWS
View File

@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
-- $Id: NEWS,v 1.3461 2020/03/08 14:28:23 tom Exp $
-- $Id: NEWS,v 1.3463 2020/03/15 00:15:32 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started
@ -46,6 +46,11 @@ 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.
20200314
+ add history note to curs_scanw.3x for <stdarg.h> and <varargs.h>
+ add history note to curs_printw.3x for <stdarg.h> and <varargs.h>
+ add portability note to ncurses.3x regarding <stdarg.h>
20200308
+ update copyright notices in test-packages.
+ modify tracemunch to guard against errors in its known_p1 table.

View File

@ -1 +1 @@
5:0:10 6.2 20200308
5:0:10 6.2 20200314

View File

@ -26,7 +26,7 @@
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
# $Id: dist.mk,v 1.1340 2020/03/08 14:28:23 tom Exp $
# $Id: dist.mk,v 1.1341 2020/03/14 15:30:00 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 = 2
NCURSES_PATCH = 20200308
NCURSES_PATCH = 20200314
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)

View File

@ -126,7 +126,7 @@
</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.2 (patch 20200222).
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).

View File

@ -199,7 +199,7 @@
</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.2 (patch 20200222).
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>

View File

@ -149,7 +149,7 @@
</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.2 (patch 20200222).
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).

View File

@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
* @Id: curs_printw.3x,v 1.25 2020/02/02 23:34:34 tom Exp @
* @Id: curs_printw.3x,v 1.26 2020/03/14 23:48:47 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@ -91,21 +91,48 @@
the window pointer is null.
</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 improve-
ment, BSD curses did not use function prototypes (or even declare func-
tions) in the &lt;curses.h&gt; header until 1992.
SVr2 documented <STRONG>printw</STRONG>, <STRONG>wprintw</STRONG> tersely as "printf on <EM>stdscr</EM>" and
tersely as "printf on <EM>win</EM>", respectively.
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 pa-
rameter 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 <EM>vprintf</EM> for detailed descriptions.
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-PORTABILITY">PORTABILITY</a></H2><PRE>
In this implementation, <STRONG>vw_printw</STRONG> and <STRONG>vwprintw</STRONG> are equivalent, to sup-
In this implementation, <STRONG>vw_printw</STRONG> and <STRONG>vwprintw</STRONG> are equivalent, to sup-
port 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
<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.
<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
<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>o</STRONG> X/Open Curses, Issue 5 (December 2007) marked <STRONG>vwprintw</STRONG> (along with
<STRONG>vwscanw</STRONG> and the termcap interface) as withdrawn.
@ -123,6 +150,7 @@
<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-HISTORY">HISTORY</a></li>
<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
</ul>

View File

@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
* @Id: curs_scanw.3x,v 1.26 2020/02/02 23:34:34 tom Exp @
* @Id: curs_scanw.3x,v 1.27 2020/03/15 00:14:30 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@ -89,41 +89,70 @@
the window pointer is null.
</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 avail-
able. 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 <EM>vprintf</EM> for detailed descriptions.
(Because the SVr3 documentation does not mention <EM>vscanf</EM>, that reference
to <EM>vprintf</EM> 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;.
</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:
<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
<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.
<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
<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 5 (December 2007) marked <STRONG>vwscanw</STRONG> (along with
<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.
Both XSI and The Single Unix Specification, Version 2 state that these
Both XSI and The Single Unix Specification, Version 2 state that these
functions return <STRONG>ERR</STRONG> or <STRONG>OK</STRONG>.
<STRONG>o</STRONG> Since the underlying <STRONG>scanf(3)</STRONG> can return the number of items
<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
is probably an editing error which was introduced in XSI, rather
than being done intentionally.
<STRONG>o</STRONG> This implementation returns the number of items scanned, for com-
patibility with SVr4 curses. As of 2018, NetBSD curses also
returns the number of items scanned. Both ncurses and NetBSD
<STRONG>o</STRONG> This implementation returns the number of items scanned, for com-
patibility 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> Portable applications should only test if the return value is <STRONG>ERR</STRONG>,
<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.
One possible way to get useful results would be to use a "%n" con-
version at the end of the format string to ensure that something
One possible way to get useful results would be to use a "%n" con-
version at the end of the format string to ensure that something
was processed.
@ -141,6 +170,7 @@
<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-HISTORY">HISTORY</a></li>
<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
</ul>

View File

@ -247,7 +247,7 @@
<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.2 (patch 20200222).
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).

View File

@ -513,7 +513,7 @@
https://invisible-island.net/ncurses/tctest.html
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>

View File

@ -91,7 +91,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.2 (patch 20200222).
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>

View File

@ -222,7 +222,7 @@
<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.2 (patch 20200222).
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).

View File

@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
* @Id: ncurses.3x,v 1.145 2020/02/23 01:05:45 tom Exp @
* @Id: ncurses.3x,v 1.146 2020/03/14 23:13:18 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@ -60,7 +60,7 @@
method of updating character screens with reasonable optimization.
This implementation is "new curses" (ncurses) and is the approved
replacement for 4.4BSD classic curses, which has been discontinued.
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
The <STRONG>ncurses</STRONG> library emulates the curses library of System V Release 4
UNIX, and XPG4 (X/Open Portability Guide) curses (also known as XSI
@ -1406,10 +1406,29 @@
ble. That depends on the value used for <STRONG>_XOPEN_SOURCE</STRONG> feature test
macro.
<STRONG>o</STRONG> X/Open Curses documents one required header, in a special case:
&lt;stdarg.h&gt; before &lt;curses.h&gt; to prototype the <STRONG>vw_printw</STRONG> and
<STRONG>vw_scanw</STRONG> functions (as well as the obsolete the <STRONG>vwprintw</STRONG> and <STRONG>vws-</STRONG>
<STRONG>canw</STRONG> functions). Each of those uses a <STRONG>va_list</STRONG> parameter.
The two obsolete functions were introduced in SVr3. The other
functions were introduced in X/Open Curses. In between, SVr4
curses provided for the possibility that an application might
include either &lt;varargs.h&gt; or &lt;stdarg.h&gt;. Initially, that was done
by using <STRONG>void*</STRONG> for the <STRONG>va_list</STRONG> parameter. Later, a special type
(defined in &lt;stdio.h&gt;) was introduced, to allow for compiler type-
checking. That special type is always available, because &lt;stdio.h&gt;
is always included by &lt;curses.h&gt;.
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;
directly to provide a portable interface.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
If standard output from a <STRONG>ncurses</STRONG> program is re-directed to something
which is not a tty, screen updates will be directed to standard error.
If standard output from a <STRONG>ncurses</STRONG> 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.

View File

@ -113,7 +113,7 @@
</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.2 (patch 20200222).
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).

View File

@ -281,7 +281,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="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>

View File

@ -206,7 +206,7 @@
</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.2 (patch 20200222).
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).

View File

@ -105,7 +105,7 @@
have, by specifying how to perform screen operations, and by specifying
padding requirements and initialization sequences.
This manual describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
This manual describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
</PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE>

View File

@ -461,7 +461,7 @@
<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>. <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>

View File

@ -171,7 +171,7 @@
<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>ter-</STRONG>
<STRONG><A HREF="terminfo.5.html">minfo(5)</A></STRONG>.
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).

View File

@ -523,7 +523,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<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.2 (patch 20200222).
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).

View File

@ -390,7 +390,7 @@
<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.2 (patch 20200222).
This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).

View File

@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
.\" $Id: curs_printw.3x,v 1.25 2020/02/02 23:34:34 tom Exp $
.\" $Id: curs_printw.3x,v 1.26 2020/03/14 23:48:47 tom Exp $
.TH curs_printw 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@ -89,6 +89,42 @@ It will return an error if the window pointer is null.
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.
.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,
and after the C standard was published),
other developers updated the library,
using <stdarg.h> internally in 4.4BSD curses.
Even with this improvement,
BSD curses did not use function prototypes (or even declare
functions) in the <curses.h> header until 1992.
.PP
SVr2 documented
\fBprintw\fP,
\fBwprintw\fP
tersely as \*(``printf on \fIstdscr\fP\*('' and
tersely as \*(``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
\fIvprintf\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.
.PP
X/Open Curses added \fBvw_printw\fP to replace \fBvwprintw\fP,
stating that its \fBva_list\fP definition requires <stdarg.h>.
.SH PORTABILITY
In this implementation, \fBvw_printw\fP and \fBvwprintw\fP are equivalent,
to support legacy applications.

View File

@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
.\" $Id: curs_scanw.3x,v 1.26 2020/02/02 23:34:34 tom Exp $
.\" $Id: curs_scanw.3x,v 1.27 2020/03/15 00:14:30 tom Exp $
.TH curs_scanw 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@ -83,6 +83,44 @@ which were mapped in the call.
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.
.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,
and after the C standard was published),
other developers updated the library,
using <stdarg.h> internally in 4.4BSD curses.
Even with this improvement,
BSD curses did not use function prototypes (or even declare
functions) in the <curses.h> header until 1992.
.PP
SVr2 documented
\fBscanw\fP,
\fBwscanw\fP
tersely as \*(``scanf through \fIstdscr\fP\*('' and
tersely as \*(``scanf through \fIwin\fP\*('', respectively.
.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
\fIvprintf\fP for detailed descriptions.
(Because the SVr3 documentation does not mention \fIvscanf\fP,
that reference to \fIvprintf\fP may 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.
.PP
X/Open Curses added \fBvw_scanw\fP to replace \fBvwscanw\fP,
stating that its \fBva_list\fP definition requires <stdarg.h>.
.SH PORTABILITY
In this implementation, \fBvw_scanw\fP and \fBvwscanw\fP are equivalent,
to support legacy applications.

View File

@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
.\" $Id: ncurses.3x,v 1.145 2020/02/23 01:05:45 tom Exp $
.\" $Id: ncurses.3x,v 1.146 2020/03/14 23:13:18 tom Exp $
.hy 0
.TH ncurses 3X ""
.ie \n(.g .ds `` \(lq
@ -1483,6 +1483,29 @@ 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
feature test macro.
.bP
X/Open Curses documents one required header,
in a special case: <stdarg.h> before <curses.h> to prototype
the \fBvw_printw\fP and \fBvw_scanw\fP functions
(as well as the obsolete
the \fBvwprintw\fP and \fBvwscanw\fP functions).
Each of those uses a \fBva_list\fP parameter.
.IP
The two obsolete functions were introduced in SVr3.
The other functions were introduced in X/Open Curses.
In between, SVr4 curses provided for the possibility that
an application might include either <varargs.h> or <stdarg.h>.
Initially, that was done by using \fBvoid*\fP for the \fBva_list\fP
parameter.
Later, a special type (defined in <stdio.h>) was introduced,
to allow for compiler type-checking.
That special type is always available,
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.
.SH NOTES
.PP
If standard output from a \fBncurses\fR program is re-directed to something

View File

@ -1,8 +1,8 @@
ncurses6 (6.2+20200308) unstable; urgency=low
ncurses6 (6.2+20200314) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Sun, 08 Mar 2020 10:28:23 -0400
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 14 Mar 2020 11:30:00 -0400
ncurses6 (5.9-20131005) unstable; urgency=low

View File

@ -1,8 +1,8 @@
ncurses6 (6.2+20200308) unstable; urgency=low
ncurses6 (6.2+20200314) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Sun, 08 Mar 2020 10:28:23 -0400
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 14 Mar 2020 11:30:00 -0400
ncurses6 (5.9-20131005) unstable; urgency=low

View File

@ -1,8 +1,8 @@
ncurses6 (6.2+20200308) unstable; urgency=low
ncurses6 (6.2+20200314) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Sun, 08 Mar 2020 10:28:23 -0400
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 14 Mar 2020 11:30:00 -0400
ncurses6 (5.9-20120608) unstable; urgency=low

View File

@ -1,4 +1,4 @@
; $Id: mingw-ncurses.nsi,v 1.384 2020/03/08 14:28:23 tom Exp $
; $Id: mingw-ncurses.nsi,v 1.385 2020/03/14 15:30:00 tom Exp $
; TODO add examples
; TODO bump ABI to 6
@ -10,7 +10,7 @@
!define VERSION_MAJOR "6"
!define VERSION_MINOR "2"
!define VERSION_YYYY "2020"
!define VERSION_MMDD "0308"
!define VERSION_MMDD "0314"
!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
!define MY_ABI "5"

View File

@ -3,7 +3,7 @@
Summary: shared libraries for terminal handling
Name: mingw32-ncurses6
Version: 6.2
Release: 20200308
Release: 20200314
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz

View File

@ -1,7 +1,7 @@
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.2
Release: 20200308
Release: 20200314
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz

View File

@ -1,7 +1,7 @@
Summary: Curses library with POSIX thread support.
Name: ncursest6
Version: 6.2
Release: 20200308
Release: 20200314
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz