aboutsummaryrefslogtreecommitdiff
path: root/packages/ncurses/6.5/ncurses-6.5-20250315.patch
diff options
context:
space:
mode:
Diffstat (limited to 'packages/ncurses/6.5/ncurses-6.5-20250315.patch')
-rw-r--r--packages/ncurses/6.5/ncurses-6.5-20250315.patch2230
1 files changed, 2230 insertions, 0 deletions
diff --git a/packages/ncurses/6.5/ncurses-6.5-20250315.patch b/packages/ncurses/6.5/ncurses-6.5-20250315.patch
new file mode 100644
index 00000000..1e49041a
--- /dev/null
+++ b/packages/ncurses/6.5/ncurses-6.5-20250315.patch
@@ -0,0 +1,2230 @@
+# ncurses 6.5 - patch 20250315 - Thomas E. Dickey
+#
+# ------------------------------------------------------------------------------
+#
+# Ncurses 6.5 is at
+# https://invisible-island.net/archives/ncurses/
+# https://invisible-mirror.net/archives/ncurses/
+# https://ftp.gnu.org/gnu/ncurses/
+#
+# Patches for ncurses 6.5 can be found at
+# https://invisible-island.net/archives/ncurses/6.5
+# https://invisible-mirror.net/archives/ncurses/6.5
+#
+# ------------------------------------------------------------------------------
+# https://invisible-island.net/archives/ncurses/6.5/ncurses-6.5-20250315.patch.gz
+# patch by Thomas E. Dickey <dickey@invisible-island.net>
+# created Sun Mar 16 00:57:16 UTC 2025
+# ------------------------------------------------------------------------------
+# NEWS | 5
+# VERSION | 2
+# dist.mk | 4
+# doc/html/man/curs_add_wch.3x.html | 90 +++++++-------
+# doc/html/man/curs_add_wchstr.3x.html | 29 ++--
+# doc/html/man/curs_addch.3x.html | 54 ++++----
+# doc/html/man/curs_addchstr.3x.html | 21 +--
+# doc/html/man/curs_addstr.3x.html | 25 ++--
+# doc/html/man/curs_addwstr.3x.html | 27 ++--
+# doc/html/man/curs_getch.3x.html | 173 +++++++++++++++------------
+# doc/html/man/curs_initscr.3x.html | 12 -
+# doc/html/man/curs_inopts.3x.html | 206 ++++++++++++++++-----------------
+# doc/html/man/ncurses.3x.html | 2
+# doc/html/man/resizeterm.3x.html | 16 +-
+# doc/html/man/terminfo.5.html | 2
+# man/curs_add_wch.3x | 47 +++----
+# man/curs_add_wchstr.3x | 25 ++--
+# man/curs_addch.3x | 59 ++++-----
+# man/curs_addchstr.3x | 25 ++--
+# man/curs_addstr.3x | 23 ++-
+# man/curs_addwstr.3x | 23 ++-
+# man/curs_getch.3x | 77 ++++++++----
+# man/curs_initscr.3x | 10 -
+# man/curs_inopts.3x | 14 --
+# man/resizeterm.3x | 20 ++-
+# package/debian-mingw/changelog | 4
+# package/debian-mingw64/changelog | 4
+# package/debian/changelog | 4
+# package/mingw-ncurses.nsi | 4
+# package/mingw-ncurses.spec | 2
+# package/ncurses.spec | 2
+# package/ncursest.spec | 2
+# 32 files changed, 545 insertions(+), 468 deletions(-)
+# ------------------------------------------------------------------------------
+Index: NEWS
+Prereq: 1.4259
+--- ncurses-6.5-20250308+/NEWS 2025-03-09 00:39:13.000000000 +0000
++++ ncurses-6.5-20250315/NEWS 2025-03-15 23:56:46.000000000 +0000
+@@ -26,7 +26,7 @@
+ -- sale, use or other dealings in this Software without prior written --
+ -- authorization. --
+ -------------------------------------------------------------------------------
+--- $Id: NEWS,v 1.4259 2025/03/09 00:39:13 tom Exp $
++-- $Id: NEWS,v 1.4261 2025/03/15 23:56:46 tom Exp $
+ -------------------------------------------------------------------------------
+
+ This is a log of changes that ncurses has gone through since Zeyd started
+@@ -46,6 +46,9 @@
+ Changes through 1.9.9e did not credit all contributions;
+ it is not possible to add this information.
+
++20250315
++ + improve formatting/style of manpages (patches by Branden Robinson).
++
+ 20250308
+ + remove test in wgetch which applied notimeout to the initial read
+ of a character (patch by Branden Robinson).
+Index: VERSION
+--- ncurses-6.5-20250308+/VERSION 2025-03-08 11:56:38.000000000 +0000
++++ ncurses-6.5-20250315/VERSION 2025-03-15 11:18:45.000000000 +0000
+@@ -1 +1 @@
+-5:0:10 6.5 20250308
++5:0:10 6.5 20250315
+Index: dist.mk
+Prereq: 1.1659
+--- ncurses-6.5-20250308+/dist.mk 2025-03-08 11:56:38.000000000 +0000
++++ ncurses-6.5-20250315/dist.mk 2025-03-15 11:18:45.000000000 +0000
+@@ -26,7 +26,7 @@
+ # use or other dealings in this Software without prior written #
+ # authorization. #
+ ##############################################################################
+-# $Id: dist.mk,v 1.1659 2025/03/08 11:56:38 tom Exp $
++# $Id: dist.mk,v 1.1660 2025/03/15 11:18:45 tom Exp $
+ # Makefile for creating ncurses distributions.
+ #
+ # This only needs to be used directly as a makefile by developers, but
+@@ -38,7 +38,7 @@
+ # These define the major/minor/patch versions of ncurses.
+ NCURSES_MAJOR = 6
+ NCURSES_MINOR = 5
+-NCURSES_PATCH = 20250308
++NCURSES_PATCH = 20250315
+
+ # We don't append the patch to the version, since this only applies to releases
+ VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
+Index: doc/html/man/curs_add_wch.3x.html
+--- ncurses-6.5-20250308+/doc/html/man/curs_add_wch.3x.html 2025-03-09 00:55:53.000000000 +0000
++++ ncurses-6.5-20250315/doc/html/man/curs_add_wch.3x.html 2025-03-15 22:08:51.000000000 +0000
+@@ -28,19 +28,19 @@
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************
+- * @Id: curs_add_wch.3x,v 1.110 2025/03/08 23:01:20 tom Exp @
++ * @Id: curs_add_wch.3x,v 1.112 2025/03/15 20:38:41 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 2025-03-08 ncurses 6.5 Library calls</TITLE>
++<TITLE>curs_add_wch 3x 2025-03-15 ncurses 6.5 Library calls</TITLE>
+ <link rel="author" href="mailto:bug-ncurses@gnu.org">
+
+ </HEAD>
+ <BODY>
+-<H1 class="no-header">curs_add_wch 3x 2025-03-08 ncurses 6.5 Library calls</H1>
++<H1 class="no-header">curs_add_wch 3x 2025-03-15 ncurses 6.5 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>
+
+@@ -133,62 +133,62 @@
+ function.
+
+ Construct a <EM>curses</EM> complex character from a <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM> with <STRONG><A HREF="curs_getcchar.3x.html">setcchar(3x)</A></STRONG>.
++ A <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> can be copied from place to place using <STRONG><A HREF="curs_in_wch.3x.html">win_wch(3x)</A></STRONG> and
++ <STRONG>wadd_wch</STRONG>. See <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> for values of predefined constants that
++ can be usefully "or"ed with characters. A complex character whose only
++ character component is a wide space, and whose only attribute is
++ <STRONG>WA_NORMAL</STRONG>, is a <EM>blank</EM> <EM>character</EM>, and therefore combines with the
++ window's background character; see <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>.
++
+ Much behavior depends on whether the wide characters in <EM>wch</EM> are spacing
+ or non-spacing; see subsection "Complex Characters" below.
+
+- <STRONG>o</STRONG> If <EM>wch</EM> contains a spacing character, then any character at the
+- cursor is first removed. The complex character <EM>wch</EM>, with its
+- attributes and color pair identifier, becomes the <EM>base</EM> of the
++ <STRONG>o</STRONG> If <EM>wch</EM> contains a spacing character, then any character at the
++ cursor is first removed. The complex character <EM>wch</EM>, with its
++ attributes and color pair identifier, becomes the <EM>base</EM> of the
+ <EM>active</EM> <EM>complex</EM> <EM>character</EM>.
+
+ <STRONG>o</STRONG> If <EM>wch</EM> contains only non-spacing characters, they are combined with
+- the active complex character. <EM>curses</EM> ignores its attributes and
++ the active complex character. <EM>curses</EM> ignores its attributes and
+ color pair identifier, and does not advance the cursor.
+
+- Further non-spacing characters added with <STRONG>wadd_wch</STRONG> are not written at
+- the new cursor position but combine with the active complex character
+- until another spacing character is written to the window or the cursor
++ Further non-spacing characters added with <STRONG>wadd_wch</STRONG> are not written at
++ the new cursor position but combine with the active complex character
++ until another spacing character is written to the window or the cursor
+ is moved.
+
+- If the cursor is not at the bottom of the scrolling region and
+- advancement occurs at the right margin, the cursor automatically wraps
++ If the cursor is not at the bottom of the scrolling region and
++ advancement occurs at the right margin, the cursor automatically wraps
+ to the beginning of the next line.
+
+ If the cursor is at the bottom of the scrolling region when advancement
+- occurs at the right margin, and <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG> is enabled for <EM>win</EM>, the
+- cursor wraps as above and the scrolling region scrolls up one line.
+- Otherwise, advancement and scrolling do not occur, and <STRONG>waddch</STRONG> returns
++ occurs at the right margin, and <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG> is enabled for <EM>win</EM>, the
++ cursor wraps as above and the scrolling region scrolls up one line.
++ Otherwise, advancement and scrolling do not occur, and <STRONG>waddch</STRONG> returns
+ <STRONG>ERR</STRONG>.
+
+- If <EM>wch</EM> is a backspace, carriage return, line feed, or tab, the cursor
++ If <EM>wch</EM> is a backspace, carriage return, line feed, or tab, the cursor
+ moves appropriately within the window.
+
+- <STRONG>o</STRONG> Backspace moves the cursor one character left; at the left margin
++ <STRONG>o</STRONG> Backspace moves the cursor one character left; at the left margin
+ of a window, it does nothing.
+
+- <STRONG>o</STRONG> Carriage return moves the cursor to the left margin on the same
++ <STRONG>o</STRONG> Carriage return moves the cursor to the left margin on the same
+ line of the window.
+
+- <STRONG>o</STRONG> Line feed does a <STRONG><A HREF="curs_clear.3x.html">clrtoeol(3x)</A></STRONG>, then advances as if from the right
++ <STRONG>o</STRONG> Line feed does a <STRONG><A HREF="curs_clear.3x.html">clrtoeol(3x)</A></STRONG>, then advances as if from the right
+ margin.
+
+- <STRONG>o</STRONG> Tab advances the cursor to the next tab stop (possibly on the next
+- line); these are placed at every eighth column by default. Alter
+- the tab interval with the <STRONG>TABSIZE</STRONG> extension; see
++ <STRONG>o</STRONG> Tab advances the cursor to the next tab stop (possibly on the next
++ line); these are placed at every eighth column by default. Alter
++ the tab interval with the <STRONG>TABSIZE</STRONG> extension; see
+ <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>.
+
+- If <EM>wch</EM> is any other nonprintable character, it is drawn in printable
+- form using the same convention as <STRONG><A HREF="curs_util.3x.html">wunctrl(3x)</A></STRONG>. Calling <STRONG><A HREF="curs_in_wch.3x.html">win_wch(3x)</A></STRONG> on
+- the location of a nonprintable character does not return the character
++ If <EM>wch</EM> is any other nonprintable character, it is drawn in printable
++ form using the same convention as <STRONG><A HREF="curs_util.3x.html">wunctrl(3x)</A></STRONG>. Calling <STRONG><A HREF="curs_in_wch.3x.html">win_wch(3x)</A></STRONG> on
++ the location of a nonprintable character does not return the character
+ itself, but its <STRONG><A HREF="curs_util.3x.html">wunctrl(3x)</A></STRONG> representation.
+
+- A <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> can be copied from place to place using <STRONG><A HREF="curs_in_wch.3x.html">win_wch(3x)</A></STRONG> and
+- <STRONG>wadd_wch</STRONG>. See <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> for values of predefined constants that
+- can be usefully "or"ed with characters. A complex character whose only
+- character component is a wide space, and whose only attribute is
+- <STRONG>WA_NORMAL</STRONG>, is a <EM>blank</EM> <EM>character</EM>, and therefore combines with the
+- background character; see <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>.
+-
+
+ </PRE><H3><a name="h3-wecho_wchar">wecho_wchar</a></H3><PRE>
+ <STRONG>echo_wchar</STRONG> and <STRONG>wecho_wchar</STRONG> are equivalent to calling (<STRONG>w</STRONG>)<STRONG>add_wch</STRONG>
+@@ -201,16 +201,16 @@
+ </PRE><H3><a name="h3-Forms-Drawing-Characters">Forms-Drawing Characters</a></H3><PRE>
+ <EM>curses</EM> defines macros starting with <STRONG>WACS_</STRONG> that can be used with
+ <STRONG>wadd_wch</STRONG> to write line-drawing and other symbols to the screen.
+- <EM>ncurses</EM> terms these <EM>forms-drawing</EM> <EM>characters.</EM> The ACS default listed
+- below is used if the <STRONG>acs_chars</STRONG> (<STRONG>acsc</STRONG>) <EM>terminfo</EM> capability does not
+- define a terminal-specific replacement for it, or if the terminal type
+- and locale configuration require Unicode to access these characters but
+- the library is unable to use Unicode. The "acsc char" column
+- corresponds to how the characters are specified in the <STRONG>acs_chars</STRONG> (<STRONG>acsc</STRONG>)
+- string capability, and the characters in it may appear on the screen if
+- the terminal type's database entry incorrectly advertises ACS support.
+- The name "ACS" originates in the Alternate Character Set feature of the
+- DEC VT100 terminal.
++ <EM>ncurses</EM> terms these <EM>forms-drawing</EM> <EM>characters.</EM> <EM>curses</EM> uses the ACS
++ default listed below if the terminal type lacks the <STRONG>acs_chars</STRONG> (<STRONG>acsc</STRONG>)
++ capability; that capability does not define a replacement for the
++ character; or if the terminal type and locale configuration require
++ Unicode to access these characters, but the library is unable to use
++ Unicode. The "acsc char" column corresponds to how the characters are
++ specified in the <STRONG>acs_chars</STRONG> (<STRONG>acsc</STRONG>) string capability, and the characters
++ in it may appear on the screen if the terminal type's database entry
++ incorrectly advertises ACS support. The name "ACS" originates in the
++ Alternate Character Set feature of the DEC VT100 terminal.
+
+ <STRONG>Unicode</STRONG> <STRONG>ACS</STRONG> <STRONG>acsc</STRONG>
+ <STRONG>Symbol</STRONG> <STRONG>Default</STRONG> <STRONG>Default</STRONG> <STRONG>char</STRONG> <STRONG>Glyph</STRONG> <STRONG>Name</STRONG>
+@@ -299,7 +299,7 @@
+ </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
+ These functions return <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure.
+
+- In <EM>ncurses</EM>, they return <STRONG>ERR</STRONG> if
++ In <EM>ncurses</EM>, these functions fail if
+
+ <STRONG>o</STRONG> the <EM>curses</EM> screen has not been initialized,
+
+@@ -325,7 +325,7 @@
+ </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
+ The symbols <EM>WACS</EM><STRONG>_</STRONG><EM>S3</EM>, <EM>WACS</EM><STRONG>_</STRONG><EM>S7</EM>, <EM>WACS</EM><STRONG>_</STRONG><EM>LEQUAL</EM>, <EM>WACS</EM><STRONG>_</STRONG><EM>GEQUAL</EM>, <EM>WACS</EM><STRONG>_</STRONG><EM>PI</EM>,
+ <EM>WACS</EM><STRONG>_</STRONG><EM>NEQUAL</EM>, and <EM>WACS</EM><STRONG>_</STRONG><EM>STERLING</EM> are not standard. However, many
+- publicly available <EM>terminfo</EM> entries include <EM>acs</EM><STRONG>_</STRONG><EM>chars</EM> (<STRONG>acsc</STRONG>)
++ publicly available <EM>terminfo</EM> entries include <STRONG>acs_chars</STRONG> (<STRONG>acsc</STRONG>)
+ capabilities in which their key characters (<STRONG>pryz{|}</STRONG>) are embedded, and
+ a second-hand list of their character descriptions has come to light.
+ The <EM>ncurses</EM> developers invented WACS-prefixed names for them.
+@@ -450,7 +450,7 @@
+
+
+
+-ncurses 6.5 2025-03-08 <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
++ncurses 6.5 2025-03-15 <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
+ </PRE>
+ <div class="nav">
+ <ul>
+Index: doc/html/man/curs_add_wchstr.3x.html
+--- ncurses-6.5-20250308+/doc/html/man/curs_add_wchstr.3x.html 2025-02-02 00:43:56.000000000 +0000
++++ ncurses-6.5-20250315/doc/html/man/curs_add_wchstr.3x.html 2025-03-15 22:08:51.000000000 +0000
+@@ -27,19 +27,19 @@
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************
+- * @Id: curs_add_wchstr.3x,v 1.55 2025/02/01 22:57:57 tom Exp @
++ * @Id: curs_add_wchstr.3x,v 1.57 2025/03/15 20:41: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_add_wchstr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE>
++<TITLE>curs_add_wchstr 3x 2025-03-15 ncurses 6.5 Library calls</TITLE>
+ <link rel="author" href="mailto:bug-ncurses@gnu.org">
+
+ </HEAD>
+ <BODY>
+-<H1 class="no-header">curs_add_wchstr 3x 2025-02-01 ncurses 6.5 Library calls</H1>
++<H1 class="no-header">curs_add_wchstr 3x 2025-03-15 ncurses 6.5 Library calls</H1>
+ <PRE>
+ <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
+
+@@ -97,18 +97,21 @@
+ </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
+ These functions return <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure.
+
+- In <EM>ncurses</EM>, they return <STRONG>ERR</STRONG> if
++ In <EM>ncurses</EM>, these functions fail if
+
+- <STRONG>o</STRONG> <EM>win</EM> is <EM>NULL</EM> or
++ <STRONG>o</STRONG> the <EM>curses</EM> screen has not been initialized,
+
+- <STRONG>o</STRONG> <EM>wchstr</EM> is <EM>NULL</EM>.
++ <STRONG>o</STRONG> <EM>wchstr</EM> is a null pointer, or
+
+- Functions prefixed with "mv" first perform cursor movement and fail if
++ <STRONG>o</STRONG> (for functions taking a <EM>WINDOW</EM> pointer argument) <EM>win</EM> is a null
++ pointer.
++
++ Functions prefixed with "mv" first perform cursor movement and fail if
+ the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries.
+
+
+ </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
+- All of these functions except <STRONG>wadd_wchnstr</STRONG> may be implemented as
++ All of these functions except <STRONG>wadd_wchnstr</STRONG> may be implemented as
+ macros.
+
+
+@@ -118,10 +121,10 @@
+
+
+ </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+- X/Open Curses Issue 4 (1995) initially specified these functions. The
+- System V Interface Definition Version 4 of the same year specified
+- functions named <EM>waddwchstr</EM> and <EM>waddwchnstr</EM> (and the usual variants).
+- These were later additions to SVr4.<EM>x</EM>, not appearing in the first SVr4
++ X/Open Curses Issue 4 (1995) initially specified these functions. The
++ System V Interface Definition Version 4 of the same year specified
++ functions named <EM>waddwchstr</EM> and <EM>waddwchnstr</EM> (and the usual variants).
++ These were later additions to SVr4.<EM>x</EM>, not appearing in the first SVr4
+ (1989). They differed from X/Open's later <EM>wadd</EM><STRONG>_</STRONG><EM>wchstr</EM> and <EM>wadd</EM><STRONG>_</STRONG><EM>wchnstr</EM>
+ in that they each took an argument of type <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM> instead of <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>.
+
+@@ -134,7 +137,7 @@
+
+
+
+-ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
++ncurses 6.5 2025-03-15 <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
+ </PRE>
+ <div class="nav">
+ <ul>
+Index: doc/html/man/curs_addch.3x.html
+--- ncurses-6.5-20250308+/doc/html/man/curs_addch.3x.html 2025-03-09 00:55:53.000000000 +0000
++++ ncurses-6.5-20250315/doc/html/man/curs_addch.3x.html 2025-03-15 22:08:51.000000000 +0000
+@@ -28,19 +28,19 @@
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************
+- * @Id: curs_addch.3x,v 1.130 2025/03/08 23:01:20 tom Exp @
++ * @Id: curs_addch.3x,v 1.132 2025/03/15 20:40:50 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 2025-03-08 ncurses 6.5 Library calls</TITLE>
++<TITLE>curs_addch 3x 2025-03-15 ncurses 6.5 Library calls</TITLE>
+ <link rel="author" href="mailto:bug-ncurses@gnu.org">
+
+ </HEAD>
+ <BODY>
+-<H1 class="no-header">curs_addch 3x 2025-03-08 ncurses 6.5 Library calls</H1>
++<H1 class="no-header">curs_addch 3x 2025-03-15 ncurses 6.5 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>
+
+@@ -106,11 +106,19 @@
+ the cursor position, analogously to the standard C library's
+ <STRONG>putchar(3)</STRONG>. <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> describes the variants of this function.
+
+- Construct a <EM>curses</EM> character from a <EM>char</EM> by assignment. Subsection
+- "Video Attributes" of <STRONG><A HREF="curs_attr.3x.html">attron(3x)</A></STRONG> describes how to manipulate its
+- attributes and color pair. (A color pair selection is not honored
++ Construct a <EM>curses</EM> character from a <EM>char</EM> by assignment or typecast.
++ Subsection "Video Attributes" of <STRONG><A HREF="curs_attr.3x.html">attron(3x)</A></STRONG> describes how to manipulate
++ its attributes and color pair. (A color pair selection is not honored
+ unless initialized; see <STRONG><A HREF="curs_color.3x.html">start_color(3x)</A></STRONG>.)
+
++ The object or expression <EM>ch</EM> may contain attributes and/or a color pair
++ identifier. (A <EM>chtype</EM> can be copied from place to place using
++ <STRONG><A HREF="curs_inch.3x.html">winch(3x)</A></STRONG> and <STRONG>waddch</STRONG>.) See <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> for values of predefined
++ constants that can be usefully "or"ed with characters. A <EM>ch</EM> whose
++ character component is a space, and whose only attribute is <STRONG>A_NORMAL</STRONG>,
++ is a <EM>blank</EM> <EM>character</EM>, and therefore combines with the window's
++ background character; see <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>.
++
+ If the cursor is not at the bottom of the scrolling region and
+ advancement occurs at the right margin, the cursor automatically wraps
+ to the beginning of the next line.
+@@ -143,14 +151,6 @@
+ location of a nonprintable character does not return the character
+ itself, but its <STRONG><A HREF="unctrl.3x.html">unctrl(3x)</A></STRONG> representation.
+
+- The object or expression <EM>ch</EM> may contain attributes and/or a color pair
+- identifier. (A <EM>chtype</EM> can be copied from place to place using
+- <STRONG><A HREF="curs_inch.3x.html">winch(3x)</A></STRONG> and <STRONG>waddch</STRONG>.) See <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> for values of predefined
+- constants that can be usefully "or"ed with characters. A <EM>ch</EM> whose
+- character component is a space, and whose only attribute is <STRONG>A_NORMAL</STRONG>,
+- is a <EM>blank</EM> <EM>character</EM>, and therefore combines with the background
+- character; see <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>.
+-
+
+ </PRE><H3><a name="h3-wechochar">wechochar</a></H3><PRE>
+ <STRONG>echochar</STRONG> and <STRONG>wechochar</STRONG> are equivalent to calling (<STRONG>w</STRONG>)<STRONG>addch</STRONG> followed by
+@@ -164,16 +164,16 @@
+ </PRE><H3><a name="h3-Forms-Drawing-Characters">Forms-Drawing Characters</a></H3><PRE>
+ <EM>curses</EM> defines macros starting with <STRONG>ACS_</STRONG> that can be used with <STRONG>waddch</STRONG>
+ to write line-drawing and other symbols to the screen. <EM>ncurses</EM> terms
+- these <EM>forms-drawing</EM> <EM>characters.</EM> The ACS default listed below is used
+- if the <STRONG>acs_chars</STRONG> (<STRONG>acsc</STRONG>) <EM>terminfo</EM> capability does not define a terminal-
+- specific replacement for it, or if the terminal type and locale
+- configuration require Unicode to access these characters but the
+- library is unable to use Unicode. The "acsc char" column corresponds
+- to how the characters are specified in the <STRONG>acs_chars</STRONG> (<STRONG>acsc</STRONG>) string
+- capability, and the characters in it may appear on the screen if the
+- terminal type's database entry incorrectly advertises ACS support. The
+- name "ACS" originates in the Alternate Character Set feature of the DEC
+- VT100 terminal.
++ these <EM>forms-drawing</EM> <EM>characters.</EM> <EM>curses</EM> uses the ACS default listed
++ below if the terminal type lacks the <STRONG>acs_chars</STRONG> (<STRONG>acsc</STRONG>) capability; that
++ capability does not define a replacement for the character; or if the
++ terminal type and locale configuration require Unicode to access these
++ characters, but the library is unable to use Unicode. The "acsc char"
++ column corresponds to how the characters are specified in the <STRONG>acs_chars</STRONG>
++ (<STRONG>acsc</STRONG>) string capability, and the characters in it may appear on the
++ screen if the terminal type's database entry incorrectly advertises ACS
++ support. The name "ACS" originates in the Alternate Character Set
++ feature of the DEC VT100 terminal.
+
+ <STRONG>ACS</STRONG> <STRONG>acsc</STRONG>
+ <STRONG>Symbol</STRONG> <STRONG>Default</STRONG> <STRONG>char</STRONG> <STRONG>Glyph</STRONG> <STRONG>Name</STRONG>
+@@ -216,7 +216,7 @@
+ </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
+ These functions return <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure.
+
+- In <EM>ncurses</EM>, they return <STRONG>ERR</STRONG> if
++ In <EM>ncurses</EM>, these functions fail if
+
+ <STRONG>o</STRONG> the <EM>curses</EM> screen has not been initialized,
+
+@@ -252,7 +252,7 @@
+ The symbols <EM>ACS</EM><STRONG>_</STRONG><EM>S3</EM>, <EM>ACS</EM><STRONG>_</STRONG><EM>S7</EM>, <EM>ACS</EM><STRONG>_</STRONG><EM>LEQUAL</EM>, <EM>ACS</EM><STRONG>_</STRONG><EM>GEQUAL</EM>, <EM>ACS</EM><STRONG>_</STRONG><EM>PI</EM>, <EM>ACS</EM><STRONG>_</STRONG><EM>NEQUAL</EM>,
+ and <EM>ACS</EM><STRONG>_</STRONG><EM>STERLING</EM> were not documented in any publicly released System V
+ and are not standard. However, many publicly available <EM>terminfo</EM>
+- entries include <EM>acs</EM><STRONG>_</STRONG><EM>chars</EM> (<STRONG>acsc</STRONG>) capabilities in which their key
++ entries include <STRONG>acs_chars</STRONG> (<STRONG>acsc</STRONG>) capabilities in which their key
+ characters (<STRONG>pryz{|}</STRONG>) are embedded, and a second-hand list of their
+ character descriptions has come to light. The <EM>ncurses</EM> developers
+ invented ACS-prefixed names for them.
+@@ -365,7 +365,7 @@
+
+
+
+-ncurses 6.5 2025-03-08 <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
++ncurses 6.5 2025-03-15 <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
+ </PRE>
+ <div class="nav">
+ <ul>
+Index: doc/html/man/curs_addchstr.3x.html
+--- ncurses-6.5-20250308+/doc/html/man/curs_addchstr.3x.html 2025-02-02 00:43:57.000000000 +0000
++++ ncurses-6.5-20250315/doc/html/man/curs_addchstr.3x.html 2025-03-15 22:08:51.000000000 +0000
+@@ -27,19 +27,19 @@
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************
+- * @Id: curs_addchstr.3x,v 1.60 2025/02/01 22:50:42 tom Exp @
++ * @Id: curs_addchstr.3x,v 1.62 2025/03/15 20:41: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_addchstr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE>
++<TITLE>curs_addchstr 3x 2025-03-15 ncurses 6.5 Library calls</TITLE>
+ <link rel="author" href="mailto:bug-ncurses@gnu.org">
+
+ </HEAD>
+ <BODY>
+-<H1 class="no-header">curs_addchstr 3x 2025-02-01 ncurses 6.5 Library calls</H1>
++<H1 class="no-header">curs_addchstr 3x 2025-03-15 ncurses 6.5 Library calls</H1>
+ <PRE>
+ <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
+
+@@ -91,13 +91,16 @@
+ </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
+ These functions return <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure.
+
+- In <EM>ncurses</EM>, they return <STRONG>ERR</STRONG> if
++ In <EM>ncurses</EM>, these functions fail if
+
+- <STRONG>o</STRONG> <EM>win</EM> is <EM>NULL</EM> or
++ <STRONG>o</STRONG> the <EM>curses</EM> screen has not been initialized,
+
+- <STRONG>o</STRONG> <EM>chstr</EM> is <EM>NULL</EM>.
++ <STRONG>o</STRONG> <EM>chstr</EM> is a null pointer, or
+
+- Functions prefixed with "mv" first perform cursor movement and fail if
++ <STRONG>o</STRONG> (for functions taking a <EM>WINDOW</EM> pointer argument) <EM>win</EM> is a null
++ pointer.
++
++ Functions prefixed with "mv" first perform cursor movement and fail if
+ the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries.
+
+
+@@ -109,7 +112,7 @@
+ X/Open Curses Issue 4 describes these functions. It specifies no error
+ conditions for them.
+
+- SVr4 describes a successful return value only as "an integer value
++ SVr4 describes a successful return value only as "an integer value
+ other than <EM>ERR</EM>".
+
+
+@@ -125,7 +128,7 @@
+
+
+
+-ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
++ncurses 6.5 2025-03-15 <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
+ </PRE>
+ <div class="nav">
+ <ul>
+Index: doc/html/man/curs_addstr.3x.html
+--- ncurses-6.5-20250308+/doc/html/man/curs_addstr.3x.html 2025-02-02 00:43:57.000000000 +0000
++++ ncurses-6.5-20250315/doc/html/man/curs_addstr.3x.html 2025-03-15 22:08:51.000000000 +0000
+@@ -27,19 +27,19 @@
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************
+- * @Id: curs_addstr.3x,v 1.67 2025/02/01 22:48:11 tom Exp @
++ * @Id: curs_addstr.3x,v 1.69 2025/03/15 20:41: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_addstr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE>
++<TITLE>curs_addstr 3x 2025-03-15 ncurses 6.5 Library calls</TITLE>
+ <link rel="author" href="mailto:bug-ncurses@gnu.org">
+
+ </HEAD>
+ <BODY>
+-<H1 class="no-header">curs_addstr 3x 2025-02-01 ncurses 6.5 Library calls</H1>
++<H1 class="no-header">curs_addstr 3x 2025-03-15 ncurses 6.5 Library calls</H1>
+ <PRE>
+ <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
+
+@@ -77,15 +77,18 @@
+ </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
+ These functions return <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure.
+
+- In <EM>ncurses</EM>, they return <STRONG>ERR</STRONG> if
++ In <EM>ncurses</EM>, these functions fail if
+
+- <STRONG>o</STRONG> <EM>win</EM> is <EM>NULL</EM>,
++ <STRONG>o</STRONG> the <EM>curses</EM> screen has not been initialized,
+
+- <STRONG>o</STRONG> <EM>str</EM> is <EM>NULL</EM>, or
++ <STRONG>o</STRONG> <EM>str</EM> is a null pointer,
++
++ <STRONG>o</STRONG> (for functions taking a <EM>WINDOW</EM> pointer argument) <EM>win</EM> is a null
++ pointer, or
+
+ <STRONG>o</STRONG> an internal <STRONG><A HREF="curs_addch.3x.html">waddch(3x)</A></STRONG> call returns <STRONG>ERR</STRONG>.
+
+- Functions prefixed with "mv" first perform cursor movement and fail if
++ Functions prefixed with "mv" first perform cursor movement and fail if
+ the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries.
+
+
+@@ -97,12 +100,12 @@
+ X/Open Curses Issue 4 describes these functions. It specifies no error
+ conditions for them.
+
+- SVr4 describes a successful return value only as "an integer value
++ SVr4 describes a successful return value only as "an integer value
+ other than <EM>ERR</EM>".
+
+
+ </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+- 4BSD (1980) introduced <EM>waddstr</EM> along with its variants, the latter
++ 4BSD (1980) introduced <EM>waddstr</EM> along with its variants, the latter
+ defined as macros.
+
+ SVr3.1 (1987) added <EM>waddnstr</EM> (and its variants) redefining <EM>waddstr</EM> as a
+@@ -110,14 +113,14 @@
+
+
+ </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
+- <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> describes comparable functions of the <EM>ncurses</EM> library
++ <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> describes comparable functions of the <EM>ncurses</EM> library
+ in its wide-character configuration (<EM>ncursesw</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_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
+
+
+
+-ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
++ncurses 6.5 2025-03-15 <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
+ </PRE>
+ <div class="nav">
+ <ul>
+Index: doc/html/man/curs_addwstr.3x.html
+--- ncurses-6.5-20250308+/doc/html/man/curs_addwstr.3x.html 2025-02-02 00:43:57.000000000 +0000
++++ ncurses-6.5-20250315/doc/html/man/curs_addwstr.3x.html 2025-03-15 22:08:51.000000000 +0000
+@@ -27,19 +27,19 @@
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************
+- * @Id: curs_addwstr.3x,v 1.58 2025/02/01 22:54:32 tom Exp @
++ * @Id: curs_addwstr.3x,v 1.60 2025/03/15 20:41: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_addwstr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE>
++<TITLE>curs_addwstr 3x 2025-03-15 ncurses 6.5 Library calls</TITLE>
+ <link rel="author" href="mailto:bug-ncurses@gnu.org">
+
+ </HEAD>
+ <BODY>
+-<H1 class="no-header">curs_addwstr 3x 2025-02-01 ncurses 6.5 Library calls</H1>
++<H1 class="no-header">curs_addwstr 3x 2025-03-15 ncurses 6.5 Library calls</H1>
+ <PRE>
+ <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
+
+@@ -81,15 +81,18 @@
+ </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
+ These functions return <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure.
+
+- In <EM>ncurses</EM>, they return <STRONG>ERR</STRONG> if
++ In <EM>ncurses</EM>, these functions fail if
+
+- <STRONG>o</STRONG> <EM>win</EM> is <EM>NULL</EM>,
++ <STRONG>o</STRONG> the <EM>curses</EM> screen has not been initialized,
+
+- <STRONG>o</STRONG> <EM>wstr</EM> is <EM>NULL</EM>, or
++ <STRONG>o</STRONG> <EM>wstr</EM> is a null pointer,
++
++ <STRONG>o</STRONG> (for functions taking a <EM>WINDOW</EM> pointer argument) <EM>win</EM> is a null
++ pointer, or
+
+ <STRONG>o</STRONG> an internal <STRONG><A HREF="curs_add_wch.3x.html">wadd_wch(3x)</A></STRONG> call returns <STRONG>ERR</STRONG>.
+
+- Functions prefixed with "mv" first perform cursor movement and fail if
++ Functions prefixed with "mv" first perform cursor movement and fail if
+ the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries.
+
+
+@@ -100,26 +103,26 @@
+ </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
+ X/Open Curses Issue 4 describes these functions.
+
+- SVr4 describes a successful return value only as "an integer value
++ SVr4 describes a successful return value only as "an integer value
+ other than <EM>ERR</EM>".
+
+
+ </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+- X/Open Curses Issue 4 (1995) initially specified these functions. The
+- System V Interface Definition Version 4 of the same year specified
++ X/Open Curses Issue 4 (1995) initially specified these functions. The
++ System V Interface Definition Version 4 of the same year specified
+ functions named <EM>waddwstr</EM> and <EM>waddnwstr</EM> (and the usual variants). These
+ were later additions to SVr4.<EM>x</EM>, not appearing in the first SVr4 (1989).
+
+
+ </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
+- <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> describes comparable functions of the <EM>ncurses</EM> library
++ <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> describes comparable functions of the <EM>ncurses</EM> library
+ in its non-wide-character configuration.
+
+ <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_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
+
+
+
+-ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
++ncurses 6.5 2025-03-15 <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
+ </PRE>
+ <div class="nav">
+ <ul>
+Index: doc/html/man/curs_getch.3x.html
+--- ncurses-6.5-20250308+/doc/html/man/curs_getch.3x.html 2025-02-15 20:06:26.000000000 +0000
++++ ncurses-6.5-20250315/doc/html/man/curs_getch.3x.html 2025-03-15 22:08:52.000000000 +0000
+@@ -28,19 +28,19 @@
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************
+- * @Id: curs_getch.3x,v 1.119 2025/02/15 19:35:55 tom Exp @
++ * @Id: curs_getch.3x,v 1.121 2025/03/15 22:04:20 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 2025-02-15 ncurses 6.5 Library calls</TITLE>
++<TITLE>curs_getch 3x 2025-03-15 ncurses 6.5 Library calls</TITLE>
+ <link rel="author" href="mailto:bug-ncurses@gnu.org">
+
+ </HEAD>
+ <BODY>
+-<H1 class="no-header">curs_getch 3x 2025-02-15 ncurses 6.5 Library calls</H1>
++<H1 class="no-header">curs_getch 3x 2025-03-15 ncurses 6.5 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>
+
+@@ -138,22 +138,35 @@
+ escape character ESC. This fact implies that <EM>curses</EM> cannot distinguish
+ a user's press of the escape key (assuming it sends ESC) from the
+ beginning of a function key's character sequence without waiting to see
+- if, and how soon, further input arrives. When <EM>curses</EM> reads such an
+- ambiguous character, it sets a timer. If the remainder of the sequence
+- does not arrive within the designated time, <STRONG>wgetch</STRONG> returns the prefix
+- character; otherwise, it returns the function key code corresponding to
+- the unique sequence defined by the terminal. Consequently, a user of a
+- <EM>curses</EM> application may experience a delay after the escape key is
+- pressed while <EM>curses</EM> disambiguates the input; see section "EXTENSIONS"
+- below. If the window is in "no time-out" mode, the timer does not
+- expire; it is an infinite (or very large) value. See <STRONG><A HREF="notimeout.3x.html">notimeout(3x)</A></STRONG>.
+- Because function key sequences usually begin with ESC, the terminal may
+- appear to hang in no time-out mode after the user presses the escape
+- key. Generally, further typing "awakens" <EM>curses</EM>.
++ if, and how soon, further input arrives.
++
++ <STRONG>o</STRONG> If the escape sequence matches a string capability defining a
++ function key for the terminal type (such as <STRONG>key_home</STRONG> (<STRONG>khome</STRONG>) or
++ <STRONG>key_up</STRONG> (<STRONG>kuu1</STRONG>)), <STRONG>wgetch</STRONG> returns the function key code corresponding
++ to the unique sequence defined by the terminal.
++
++ <STRONG>o</STRONG> If the escape sequence matches no function keys defined for the
++ terminal type, <STRONG>wgetch</STRONG> returns the code of the last (most recent)
++ character it has read.
++
++ <STRONG>o</STRONG> If <STRONG>wgetch</STRONG> cannot decide the validity of the input as a function key
++ because it has not read enough characters to disambiguate it, the
++ function waits until it has this information or the <EM>escape</EM> <EM>delay</EM>,
++ configured by the global variable <EM>ESCDELAY</EM> (an extension; see
++ section "EXTENSIONS" below) or the environment variable of the same
++ name (see section "ENVIRONMENT" of <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>), also an extension,
++ elapses.
++
++ Consequently, a user of a <EM>curses</EM> application that employs keypad mode
++ may experience a pause or "hang" after the escape key is pressed while
++ <EM>curses</EM> collects sufficient characters to disambiguate the input. If
++ the window is in "no time-out" mode, the escape delay is effectively
++ infinite; see <STRONG><A HREF="notimeout.3x.html">notimeout(3x)</A></STRONG>. In the event of such a pause, further
++ typing "awakens" <EM>curses</EM>.
+
+
+ </PRE><H3><a name="h3-Ungetting-Characters">Ungetting Characters</a></H3><PRE>
+- <STRONG>ungetch</STRONG> places <EM>c</EM> into the input queue to be returned by the next call
++ <STRONG>ungetch</STRONG> places <EM>c</EM> into the input queue to be returned by the next call
+ to <STRONG>wgetch</STRONG>. A single input queue serves all windows associated with the
+ screen.
+
+@@ -161,16 +174,16 @@
+ </PRE><H3><a name="h3-Predefined-Key-Codes">Predefined Key Codes</a></H3><PRE>
+ The header file <EM>curses.h</EM> defines the following function key codes.
+
+- <STRONG>o</STRONG> Except for the special case of <STRONG>KEY_RESIZE</STRONG>, a window's keypad mode
++ <STRONG>o</STRONG> Except for the special case of <STRONG>KEY_RESIZE</STRONG>, a window's keypad mode
+ must be enabled for <STRONG>wgetch</STRONG> to read these codes from it.
+
+- <STRONG>o</STRONG> Not all of these are necessarily supported on any particular
++ <STRONG>o</STRONG> Not all of these are necessarily supported on any particular
+ terminal.
+
+- <STRONG>o</STRONG> The naming convention may seem obscure, with some apparent
+- misspellings (such as "RSUME" for "resume"); the names correspond
+- to the <EM>terminfo</EM> capability names for the keys, and were
+- standardized before the IBM PC/AT keyboard layout achieved a
++ <STRONG>o</STRONG> The naming convention may seem obscure, with some apparent
++ misspellings (such as "RSUME" for "resume"); the names correspond
++ to the <EM>terminfo</EM> capability names for the keys, and were
++ standardized before the IBM PC/AT keyboard layout achieved a
+ dominant position in industry.
+
+ <STRONG>Symbol</STRONG> <STRONG>Key</STRONG> <STRONG>name</STRONG>
+@@ -180,7 +193,6 @@
+ <STRONG>KEY_UP</STRONG> Arrow keys
+ <STRONG>KEY_LEFT</STRONG>
+ <STRONG>KEY_RIGHT</STRONG>
+-
+ <STRONG>KEY_HOME</STRONG> Home key (upward+left arrow)
+ <STRONG>KEY_BACKSPACE</STRONG> Backspace
+ <STRONG>KEY_F0</STRONG> Function keys; space for 64 keys is reserved
+@@ -236,6 +248,7 @@
+ <STRONG>KEY_RESIZE</STRONG> Screen resized
+ <STRONG>KEY_RESTART</STRONG> Restart key
+ <STRONG>KEY_RESUME</STRONG> Resume key
++
+ <STRONG>KEY_SAVE</STRONG> Save key
+ <STRONG>KEY_SELECT</STRONG> Select key
+ <STRONG>KEY_SUSPEND</STRONG> Suspend key
+@@ -246,7 +259,6 @@
+ <STRONG>KEY_SCOMMAND</STRONG> Shifted command key
+ <STRONG>KEY_SCOPY</STRONG> Shifted copy key
+ <STRONG>KEY_SCREATE</STRONG> Shifted create key
+-
+ <STRONG>KEY_SDC</STRONG> Shifted delete character key
+ <STRONG>KEY_SDL</STRONG> Shifted delete line key
+ <STRONG>KEY_SEND</STRONG> Shifted end key
+@@ -280,23 +292,23 @@
+ +-----+------+-------+
+ | C1 | down | C3 |
+ +-----+------+-------+
+- Two of the symbols in the list above do <EM>not</EM> correspond to a physical
++ Two of the symbols in the list above do <EM>not</EM> correspond to a physical
+ key.
+
+- <STRONG>o</STRONG> <STRONG>wgetch</STRONG> returns <STRONG>KEY_RESIZE</STRONG>, even if the window's keypad mode is
++ <STRONG>o</STRONG> <STRONG>wgetch</STRONG> returns <STRONG>KEY_RESIZE</STRONG>, even if the window's keypad mode is
+ disabled, if <EM>ncurses</EM> has handled a <STRONG>SIGWINCH</STRONG> signal since <STRONG>wgetch</STRONG> was
+ called; see <STRONG><A HREF="curs_initscr.3x.html">initscr(3x)</A></STRONG> and <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>.
+
+- <STRONG>o</STRONG> <STRONG>wgetch</STRONG> returns <STRONG>KEY_MOUSE</STRONG> to indicate that a mouse event is pending
+- collection; see <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>. Receipt of this code requires a
+- window's keypad mode to be enabled, because to interpret mouse
+- input (as with <STRONG>xterm(1)</STRONG>'s mouse protocol), <EM>ncurses</EM> must read an
++ <STRONG>o</STRONG> <STRONG>wgetch</STRONG> returns <STRONG>KEY_MOUSE</STRONG> to indicate that a mouse event is pending
++ collection; see <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>. Receipt of this code requires a
++ window's keypad mode to be enabled, because to interpret mouse
++ input (as with <STRONG>xterm(1)</STRONG>'s mouse protocol), <EM>ncurses</EM> must read an
+ escape sequence, as with a function key.
+
+
+ </PRE><H3><a name="h3-Testing-Key-Codes">Testing Key Codes</a></H3><PRE>
+- In <EM>ncurses</EM>, <STRONG>has_key</STRONG> returns a Boolean value indicating whether the
+- terminal type recognizes its parameter as a key code value. See also
++ In <EM>ncurses</EM>, <STRONG>has_key</STRONG> returns a Boolean value indicating whether the
++ terminal type recognizes its parameter as a key code value. See also
+ <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG> and <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>.
+
+
+@@ -307,78 +319,78 @@
+
+ <STRONG>o</STRONG> its timeout expires without any data arriving, or
+
+- <STRONG>o</STRONG> execution was interrupted by a signal, in which case <EM>errno</EM> is set
++ <STRONG>o</STRONG> execution was interrupted by a signal, in which case <EM>errno</EM> is set
+ to <EM>EINTR</EM>.
+
+- <STRONG>ungetch</STRONG> returns <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure. <STRONG>ungetch</STRONG> fails if
++ <STRONG>ungetch</STRONG> returns <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure. <STRONG>ungetch</STRONG> fails if
+ there is no more room in the input queue.
+
+ <STRONG>has_key</STRONG> returns <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>.
+
+- Functions taking a <EM>WINDOW</EM> pointer argument fail if <EM>win</EM> is a null
++ Functions taking a <EM>WINDOW</EM> pointer argument fail if <EM>win</EM> is a null
+ pointer.
+
+- Functions prefixed with "mv" first perform cursor movement and fail if
++ Functions prefixed with "mv" first perform cursor movement and fail if
+ the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries.
+
+
+ </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
+ <STRONG>getch</STRONG>, <STRONG>mvgetch</STRONG>, and <STRONG>mvwgetch</STRONG> may be implemented as macros.
+
+- <EM>curses</EM> discourages assignment of the ESC key to a discrete function by
++ <EM>curses</EM> discourages assignment of the ESC key to a discrete function by
+ the programmer because the library requires a delay while it awaits the
+ potential remainder of a terminal escape sequence.
+
+- Some key strokes are indistinguishable from control characters; for
+- example, <STRONG>KEY_ENTER</STRONG> may be the same as <STRONG>^M</STRONG>, and <STRONG>KEY_BACKSPACE</STRONG> may be the
+- same as <STRONG>^H</STRONG> or <STRONG>^?</STRONG>. Consult the <EM>terminfo</EM> entry for the terminal type to
+- determine whether this is the case; see <STRONG><A HREF="infocmp.1m.html">infocmp(1)</A></STRONG>. Some <EM>curses</EM>
++ Some key strokes are indistinguishable from control characters; for
++ example, <STRONG>KEY_ENTER</STRONG> may be the same as <STRONG>^M</STRONG>, and <STRONG>KEY_BACKSPACE</STRONG> may be the
++ same as <STRONG>^H</STRONG> or <STRONG>^?</STRONG>. Consult the <EM>terminfo</EM> entry for the terminal type to
++ determine whether this is the case; see <STRONG><A HREF="infocmp.1m.html">infocmp(1)</A></STRONG>. Some <EM>curses</EM>
+ implementations, including <EM>ncurses</EM>, honor the <EM>terminfo</EM> key definitions;
+ others treat such control characters specially.
+
+- <EM>curses</EM> distinguishes the Enter keys in the alphabetic and numeric
+- keypad sections of a keyboard because (most) terminals do. <STRONG>KEY_ENTER</STRONG>
+- refers to the key on the numeric keypad and, like other function keys,
++ <EM>curses</EM> distinguishes the Enter keys in the alphabetic and numeric
++ keypad sections of a keyboard because (most) terminals do. <STRONG>KEY_ENTER</STRONG>
++ refers to the key on the numeric keypad and, like other function keys,
+ is reliably recognized only if the window's keypad mode is enabled.
+
+- <STRONG>o</STRONG> The <EM>terminfo</EM> <STRONG>key_enter</STRONG> (<STRONG>kent</STRONG>) capability describes the character
+- (sequence) sent by the Enter key of a terminal's numeric (or
++ <STRONG>o</STRONG> The <EM>terminfo</EM> <STRONG>key_enter</STRONG> (<STRONG>kent</STRONG>) capability describes the character
++ (sequence) sent by the Enter key of a terminal's numeric (or
+ similar) keypad.
+
+ <STRONG>o</STRONG> "Enter or send" is X/Open Curses's description of this key.
+
+- <EM>curses</EM> treats the Enter or Return key in the <EM>alphabetic</EM> section of the
++ <EM>curses</EM> treats the Enter or Return key in the <EM>alphabetic</EM> section of the
+ keyboard differently.
+
+ <STRONG>o</STRONG> It usually produces a control code for carriage return (<STRONG>^M</STRONG>) or line
+ feed (<STRONG>^J</STRONG>).
+
+- <STRONG>o</STRONG> Depending on the terminal mode (raw, cbreak, or canonical), and
+- whether <STRONG><A HREF="curs_inopts.3x.html">nl(3x)</A></STRONG> or <STRONG><A HREF="curs_inopts.3x.html">nonl(3x)</A></STRONG> has been called, <STRONG>wgetch</STRONG> may return
+- either a carriage return or line feed upon an Enter or Return key
++ <STRONG>o</STRONG> Depending on the terminal mode (raw, cbreak, or canonical), and
++ whether <STRONG><A HREF="curs_inopts.3x.html">nl(3x)</A></STRONG> or <STRONG><A HREF="curs_inopts.3x.html">nonl(3x)</A></STRONG> has been called, <STRONG>wgetch</STRONG> may return
++ either a carriage return or line feed upon an Enter or Return key
+ stroke.
+
+- Use of <STRONG>wgetch</STRONG> with <STRONG><A HREF="curs_inopts.3x.html">echo(3x)</A></STRONG> and neither <STRONG><A HREF="curs_inopts.3x.html">cbreak(3x)</A></STRONG> nor <STRONG><A HREF="curs_inopts.3x.html">raw(3x)</A></STRONG> is not
++ Use of <STRONG>wgetch</STRONG> with <STRONG><A HREF="curs_inopts.3x.html">echo(3x)</A></STRONG> and neither <STRONG><A HREF="curs_inopts.3x.html">cbreak(3x)</A></STRONG> nor <STRONG><A HREF="curs_inopts.3x.html">raw(3x)</A></STRONG> is not
+ well-defined.
+
+- Historically, the list of key code macros above was influenced by the
+- keyboard of the AT&amp;T 7300 (also known variously as the "3B1", "Safari
+- 4", and "UNIX PC"), a 1985 machine rich in function keys. Today's
+- computer keyboards are based on that of the IBM PC/AT and tend to have
++ Historically, the list of key code macros above was influenced by the
++ keyboard of the AT&amp;T 7300 (also known variously as the "3B1", "Safari
++ 4", and "UNIX PC"), a 1985 machine rich in function keys. Today's
++ computer keyboards are based on that of the IBM PC/AT and tend to have
+ fewer. A <EM>curses</EM> application can expect such a keyboard to transmit key
+- codes <STRONG>KEY_UP</STRONG>, <STRONG>KEY_DOWN</STRONG>, <STRONG>KEY_LEFT</STRONG>, <STRONG>KEY_RIGHT</STRONG>, <STRONG>KEY_HOME</STRONG>, <STRONG>KEY_END</STRONG>,
+- <STRONG>KEY_PPAGE</STRONG> (Page Up), <STRONG>KEY_NPAGE</STRONG> (Page Down), <STRONG>KEY_IC</STRONG> (Insert), <STRONG>KEY_DC</STRONG>
++ codes <STRONG>KEY_UP</STRONG>, <STRONG>KEY_DOWN</STRONG>, <STRONG>KEY_LEFT</STRONG>, <STRONG>KEY_RIGHT</STRONG>, <STRONG>KEY_HOME</STRONG>, <STRONG>KEY_END</STRONG>,
++ <STRONG>KEY_PPAGE</STRONG> (Page Up), <STRONG>KEY_NPAGE</STRONG> (Page Down), <STRONG>KEY_IC</STRONG> (Insert), <STRONG>KEY_DC</STRONG>
+ (Delete), <STRONG>KEY_A1</STRONG>, <STRONG>KEY_A3</STRONG>, <STRONG>KEY_B2</STRONG>, <STRONG>KEY_C1</STRONG>, <STRONG>KEY_C3</STRONG>, and <STRONG>KEY_F(</STRONG><EM>n</EM><STRONG>)</STRONG> for 1 &lt;=
+ <EM>n</EM> &lt;= 12.
+
+
+ </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
+ In <EM>ncurses</EM>, when a window's "no time-out" mode is <EM>not</EM> set, the <STRONG>ESCDELAY</STRONG>
+- variable configures the duration of the timer used to disambiguate a
+- function key character sequence from a series of key strokes beginning
++ variable configures the duration of the timer used to disambiguate a
++ function key character sequence from a series of key strokes beginning
+ with ESC typed by the user; see <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>.
+
+- <STRONG>has_key</STRONG> is an <EM>ncurses</EM> extension, and is not found in SVr4 <EM>curses</EM>,
++ <STRONG>has_key</STRONG> is an <EM>ncurses</EM> extension, and is not found in SVr4 <EM>curses</EM>,
+ 4.4BSD <EM>curses</EM>, or any other previous <EM>curses</EM> implementation.
+
+
+@@ -386,53 +398,59 @@
+ Applications employing <EM>ncurses</EM> extensions should condition their use on
+ the visibility of the <STRONG>NCURSES_VERSION</STRONG> preprocessor macro.
+
+- Except as noted in section "EXTENSIONS" above, X/Open Curses Issue 4
++ Except as noted in section "EXTENSIONS" above, X/Open Curses Issue 4
+ describes these functions. It specifies no error conditions for them.
+
+- SVr4 describes a successful return value only as "an integer value
++ SVr4 describes a successful return value only as "an integer value
+ other than <EM>ERR</EM>".
+
+ <EM>wgetch</EM> reads only single-byte characters.
+
+- The echo behavior of these functions on input of <EM>KEY</EM><STRONG>_</STRONG> or backspace
++ The echo behavior of these functions on input of <EM>KEY</EM><STRONG>_</STRONG> or backspace
+ characters is not documented in SVr4 <EM>curses</EM>.
+
+- The behavior of <EM>wgetch</EM> in the presence of signal handlers is not
+- documented in SVr4 <EM>curses</EM> and is unspecified by X/Open Curses. In
+- historical <EM>curses</EM> implementations, it varied depending on whether the
+- operating system's dispatch of a signal to a handler interrupted a
++ The behavior of <EM>wgetch</EM> in the presence of signal handlers is not
++ documented in SVr4 <EM>curses</EM> and is unspecified by X/Open Curses. In
++ historical <EM>curses</EM> implementations, it varied depending on whether the
++ operating system's dispatch of a signal to a handler interrupted a
+ <STRONG>read(2)</STRONG> call in progress, and also (in some implementations) whether an
+- input timeout or non-blocking mode had been set. A portable <EM>curses</EM>
+- application prepares for two cases: (a) signal receipt does not
++ input timeout or non-blocking mode had been set. A portable <EM>curses</EM>
++ application prepares for two cases: (a) signal receipt does not
+ interrupt <EM>wgetch</EM>; or (b) signal receipt interrupts <EM>wgetch</EM> and causes it
+ to return <EM>ERR</EM> with <EM>errno</EM> set to <EM>EINTR</EM>.
+
+ <EM>KEY</EM><STRONG>_</STRONG><EM>MOUSE</EM> is mentioned in X/Open Curses, along with a few related <EM>term-</EM>
+- <EM>info</EM> capabilities, but no higher-level functions use the feature. The
++ <EM>info</EM> capabilities, but no higher-level functions use the feature. The
+ implementation in <EM>ncurses</EM> is an extension.
+
+- <EM>KEY</EM><STRONG>_</STRONG><EM>RESIZE</EM> and <EM>has</EM><STRONG>_</STRONG><EM>key</EM> are extensions first implemented for <EM>ncurses</EM>.
++ <EM>KEY</EM><STRONG>_</STRONG><EM>RESIZE</EM> and <EM>has</EM><STRONG>_</STRONG><EM>key</EM> are extensions first implemented for <EM>ncurses</EM>.
+ By 2022, <EM>PDCurses</EM> and NetBSD <EM>curses</EM> had added them along with
+ <EM>KEY</EM><STRONG>_</STRONG><EM>MOUSE</EM>.
+
+
++</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
++ 4BSD (1980) introduced <EM>wgetch</EM> and its variants.
++
++ <EM>ncurses</EM> 1.9.9g (1996) added <EM>has</EM><STRONG>_</STRONG><EM>key</EM>.
++
++
+ </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
+- ECMA-6 "7-bit coded Character Set" &lt;https://ecma-international.org/
++ ECMA-6 "7-bit coded Character Set" &lt;https://ecma-international.org/
+ publications-and-standards/standards/ecma-6/&gt;
+
+- ECMA-48 "Control Functions for Coded Character Sets" &lt;https://
++ ECMA-48 "Control Functions for Coded Character Sets" &lt;https://
+ ecma-international.org/publications-and-standards/standards/ecma-48/&gt;
+
+- <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG> describes comparable functions of the <EM>ncurses</EM> library
++ <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG> describes comparable functions of the <EM>ncurses</EM> library
+ in its wide-character configuration (<EM>ncursesw</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_inopts.3x.html">curs_inopts(3x)</A></STRONG>, <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>,
+- <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>, <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(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_addch.3x.html">curs_addch(3x)</A></STRONG>, <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>, <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>,
++ <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>, <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
+ <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>, <STRONG>ascii(7)</STRONG>
+
+
+
+-ncurses 6.5 2025-02-15 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
++ncurses 6.5 2025-03-15 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
+ </PRE>
+ <div class="nav">
+ <ul>
+@@ -451,6 +469,7 @@
+ <li><a href="#h2-NOTES">NOTES</a></li>
+ <li><a href="#h2-EXTENSIONS">EXTENSIONS</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: doc/html/man/curs_initscr.3x.html
+--- ncurses-6.5-20250308+/doc/html/man/curs_initscr.3x.html 2025-03-09 00:55:54.000000000 +0000
++++ ncurses-6.5-20250315/doc/html/man/curs_initscr.3x.html 2025-03-15 22:08:52.000000000 +0000
+@@ -27,19 +27,19 @@
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************
+- * @Id: curs_initscr.3x,v 1.100 2025/03/08 23:07:43 tom Exp @
++ * @Id: curs_initscr.3x,v 1.102 2025/03/15 21:11: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_initscr 3x 2025-03-08 ncurses 6.5 Library calls</TITLE>
++<TITLE>curs_initscr 3x 2025-03-15 ncurses 6.5 Library calls</TITLE>
+ <link rel="author" href="mailto:bug-ncurses@gnu.org">
+
+ </HEAD>
+ <BODY>
+-<H1 class="no-header">curs_initscr 3x 2025-03-08 ncurses 6.5 Library calls</H1>
++<H1 class="no-header">curs_initscr 3x 2025-03-15 ncurses 6.5 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>
+
+@@ -104,8 +104,8 @@
+ <STRONG>o</STRONG> an output stream <EM>outf</EM> connected to the terminal; and
+
+ <STRONG>o</STRONG> an input stream <EM>inf</EM> connected to the terminal. It returns a
+- variable of structure type <EM>SCREEN</EM> <STRONG>*</STRONG>, which should be saved for
+- later use with <STRONG>set_term</STRONG> and <STRONG>delscreen</STRONG>.
++ variable of pointer-to-<EM>SCREEN</EM> type, which should be saved for later
++ use with <STRONG>set_term</STRONG> and <STRONG>delscreen</STRONG>.
+
+ <STRONG>newterm</STRONG> passes the file descriptor of the output stream to the <EM>terminfo</EM>
+ function <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG>, which returns a pointer to a <EM>TERMINAL</EM> structure
+@@ -338,7 +338,7 @@
+
+
+
+-ncurses 6.5 2025-03-08 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
++ncurses 6.5 2025-03-15 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
+ </PRE>
+ <div class="nav">
+ <ul>
+Index: doc/html/man/curs_inopts.3x.html
+--- ncurses-6.5-20250308+/doc/html/man/curs_inopts.3x.html 2025-03-09 00:55:54.000000000 +0000
++++ ncurses-6.5-20250315/doc/html/man/curs_inopts.3x.html 2025-03-15 22:08:52.000000000 +0000
+@@ -28,19 +28,19 @@
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************
+- * @Id: curs_inopts.3x,v 1.100 2025/03/08 23:09:30 tom Exp @
++ * @Id: curs_inopts.3x,v 1.102 2025/03/15 21:11: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_inopts 3x 2025-03-08 ncurses 6.5 Library calls</TITLE>
++<TITLE>curs_inopts 3x 2025-03-15 ncurses 6.5 Library calls</TITLE>
+ <link rel="author" href="mailto:bug-ncurses@gnu.org">
+
+ </HEAD>
+ <BODY>
+-<H1 class="no-header">curs_inopts 3x 2025-03-08 ncurses 6.5 Library calls</H1>
++<H1 class="no-header">curs_inopts 3x 2025-03-15 ncurses 6.5 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>
+
+@@ -155,17 +155,17 @@
+ <STRONG>keypad</STRONG> enables recognition of a terminal's function keys. If enabled
+ (<EM>bf</EM> is <STRONG>TRUE</STRONG>) then when an input character reading function reads ESC,
+ it waits for further input corresponding to an escape sequence defined
+- by the terminal type description. If a valid sequence is entered, the
+- input character reading function returns a value representing the
+- function key, such as <STRONG>KEY_LEFT</STRONG>. (Wide-character API users:
+- <STRONG><A HREF="curs_get_wch.3x.html">wget_wch(3x)</A></STRONG> returns <STRONG>KEY_CODE_YES</STRONG> to indicate the availability of a
+- function key code in its <EM>wch</EM> parameter.) If the sequence is invalid,
+- the input character reading function returns only its last character.
+- If disabled (<EM>bf</EM> is <STRONG>FALSE</STRONG>), <EM>curses</EM> does not treat function keys
+- specially and the program has to interpret escape sequences itself. If
+- the terminal's keypad can be turned on (made to transmit) and off (made
+- to work locally), <STRONG>keypad</STRONG> configures it consistently with the <EM>bf</EM>
+- parameter. By default, a window's keypad mode is off.
++ by the terminal type description. If a valid sequence populates the
++ input stream, the input character reading function returns a value
++ representing the function key, such as <STRONG>KEY_LEFT</STRONG>. (Wide-character API
++ users: <STRONG><A HREF="curs_get_wch.3x.html">wget_wch(3x)</A></STRONG> returns <STRONG>KEY_CODE_YES</STRONG> to indicate the availability
++ of a function key code in its <EM>wch</EM> parameter.) If the sequence is
++ invalid, the input character reading function returns only its last
++ character. If disabled (<EM>bf</EM> is <STRONG>FALSE</STRONG>), <EM>curses</EM> does not treat function
++ keys specially and the program has to interpret escape sequences
++ itself. If the terminal's keypad can be turned on (made to transmit)
++ and off (made to work locally), <STRONG>keypad</STRONG> configures it consistently with
++ the <EM>bf</EM> parameter. By default, a window's keypad mode is off.
+
+
+ </PRE><H3><a name="h3-meta">meta</a></H3><PRE>
+@@ -204,70 +204,69 @@
+ distinguish sequences produced by a function key from those typed by a
+ user. If this timer is disabled, <EM>curses</EM> waits forever for subsequent
+ keystrokes until it determines the escape sequence to be valid or
+- invalid. To configure the timeout duration rather than disabling it,
+- see <STRONG>wtimeout</STRONG> below.
++ invalid.
+
+
+ </PRE><H3><a name="h3-qiflush_noqiflush">qiflush, noqiflush</a></H3><PRE>
+- <STRONG>qiflush</STRONG> and <STRONG>noqiflush</STRONG> configure the terminal driver's treatment of its
++ <STRONG>qiflush</STRONG> and <STRONG>noqiflush</STRONG> configure the terminal driver's treatment of its
+ input and output queues when it handles the interrupt, suspend, or quit
+ characters under the canonical ("cooked") or cbreak line disciplines on
+- POSIX systems; see <STRONG>termios(3)</STRONG>. The default behavior is inherited from
+- the terminal driver settings. Calling <STRONG>qiflush</STRONG> configures the terminal
+- to <EM>flush</EM> the queues (discarding their contents) when any of these
+- events occurs, giving the impression of faster response to user input,
+- but making the library's model of the screen contents incorrect.
++ POSIX systems; see <STRONG>termios(3)</STRONG>. The default behavior is inherited from
++ the terminal driver settings. Calling <STRONG>qiflush</STRONG> configures the terminal
++ to <EM>flush</EM> the queues (discarding their contents) when any of these
++ events occurs, giving the impression of faster response to user input,
++ but making the library's model of the screen contents incorrect.
+ Calling <STRONG>noqiflush</STRONG> prevents such flushing, but might frustrate impatient
+- users on slow connections if a <EM>curses</EM> update of the screen is in
++ users on slow connections if a <EM>curses</EM> update of the screen is in
+ progress when the event occurs; see <STRONG>typeahead</STRONG> below for a mitigation of
+- this problem. You may want to call <STRONG>noqiflush</STRONG> in a signal handler if,
+- after the handler exits, you want output to continue as though the
++ this problem. You may want to call <STRONG>noqiflush</STRONG> in a signal handler if,
++ after the handler exits, you want output to continue as though the
+ signal had not occurred.
+
+
+ </PRE><H3><a name="h3-raw_noraw">raw, noraw</a></H3><PRE>
+ <STRONG>raw</STRONG> configures the terminal to read input in <EM>raw</EM> <EM>mode</EM>, which is similar
+- to cbreak mode (see <STRONG>cbreak</STRONG> above) except that it furthermore passes
+- through the terminal's configured interrupt, quit, suspend, and flow
+- control characters uninterpreted to the application, instead of
+- generating a signal or acting on I/O flow. The behavior of the
+- terminal's "Break" key (if any) depends on terminal driver
+- configuration parameters that <EM>curses</EM> does not handle. <STRONG>noraw</STRONG> restores
++ to cbreak mode (see <STRONG>cbreak</STRONG> above) except that it furthermore passes
++ through the terminal's configured interrupt, quit, suspend, and flow
++ control characters uninterpreted to the application, instead of
++ generating a signal or acting on I/O flow. The behavior of the
++ terminal's "Break" key (if any) depends on terminal driver
++ configuration parameters that <EM>curses</EM> does not handle. <STRONG>noraw</STRONG> restores
+ the terminal's canonical ("cooked") line discipline.
+
+
+ </PRE><H3><a name="h3-timeout_wtimeout">timeout, wtimeout</a></H3><PRE>
+- <STRONG>wtimeout</STRONG> configures whether a <EM>curses</EM> input character reading function
+- called on window <EM>win</EM> uses blocking or non-blocking reads. If <EM>delay</EM> is
+- negative, <EM>curses</EM> uses a blocking read, waiting indefinitely for input.
+- If <EM>delay</EM> is zero, the read is non-blocking; an input character reading
+- function returns <STRONG>ERR</STRONG> if no input is pending. If <EM>delay</EM> is positive, an
+- input character reading function blocks for <EM>delay</EM> milliseconds, and
+- returns <STRONG>ERR</STRONG> if the delay elapses and there is still no input pending.
++ <STRONG>wtimeout</STRONG> configures whether a <EM>curses</EM> input character reading function
++ called on window <EM>win</EM> uses blocking or non-blocking reads. If <EM>delay</EM> is
++ negative, <EM>curses</EM> uses a blocking read, waiting indefinitely for input.
++ If <EM>delay</EM> is zero, the read is non-blocking; an input character reading
++ function returns <STRONG>ERR</STRONG> if no input is pending. If <EM>delay</EM> is positive, an
++ input character reading function blocks for <EM>delay</EM> milliseconds, and
++ returns <STRONG>ERR</STRONG> if the delay elapses and there is still no input pending.
+ <STRONG>timeout</STRONG> calls <STRONG>wtimeout</STRONG> on <STRONG>stdscr</STRONG>.
+
+
+ </PRE><H3><a name="h3-typeahead">typeahead</a></H3><PRE>
+- Normally, a <EM>curses</EM> library checks the terminal's input file descriptor
++ Normally, a <EM>curses</EM> library checks the terminal's input file descriptor
+ for activity with <STRONG>poll(2)</STRONG> or <STRONG>select(2)</STRONG> while updating the screen; if it
+- finds any, it postpones output until the next <STRONG><A HREF="curs_refresh.3x.html">wrefresh(3x)</A></STRONG> or
+- <STRONG><A HREF="curs_refresh.3x.html">doupdate(3x)</A></STRONG> call, allowing faster response to user key strokes. The
+- library tests the file descriptor corresponding to the <EM>FILE</EM> stream
++ finds any, it postpones output until the next <STRONG><A HREF="curs_refresh.3x.html">wrefresh(3x)</A></STRONG> or
++ <STRONG><A HREF="curs_refresh.3x.html">doupdate(3x)</A></STRONG> call, allowing faster response to user key strokes. The
++ library tests the file descriptor corresponding to the <EM>FILE</EM> stream
+ pointer passed to <STRONG><A HREF="curs_initscr.3x.html">newterm(3x)</A></STRONG> (or <EM>stdin</EM> if <STRONG><A HREF="curs_initscr.3x.html">initscr(3x)</A></STRONG> was called), for
+- pending input. <STRONG>typeahead</STRONG> instructs <EM>curses</EM> to test file descriptor <EM>fd</EM>
++ pending input. <STRONG>typeahead</STRONG> instructs <EM>curses</EM> to test file descriptor <EM>fd</EM>
+ instead. An <EM>fd</EM> of <STRONG>-1</STRONG> disables the check.
+
+
+ </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
+ <STRONG>timeout</STRONG> and <STRONG>wtimeout</STRONG> return no value.
+
+- <STRONG>cbreak</STRONG>, <STRONG>nocbreak</STRONG>, <STRONG>echo</STRONG>, <STRONG>noecho</STRONG>, <STRONG>halfdelay</STRONG>, <STRONG>intrflush</STRONG>, <STRONG>keypad</STRONG>, <STRONG>meta</STRONG>,
+- <STRONG>nodelay</STRONG>, <STRONG>notimeout</STRONG>, <STRONG>nl</STRONG>, <STRONG>nonl</STRONG>, <STRONG>raw</STRONG>, <STRONG>noraw</STRONG>, and <STRONG>typeahead</STRONG> return <STRONG>OK</STRONG> on
++ <STRONG>cbreak</STRONG>, <STRONG>nocbreak</STRONG>, <STRONG>echo</STRONG>, <STRONG>noecho</STRONG>, <STRONG>halfdelay</STRONG>, <STRONG>intrflush</STRONG>, <STRONG>keypad</STRONG>, <STRONG>meta</STRONG>,
++ <STRONG>nodelay</STRONG>, <STRONG>notimeout</STRONG>, <STRONG>nl</STRONG>, <STRONG>nonl</STRONG>, <STRONG>raw</STRONG>, <STRONG>noraw</STRONG>, and <STRONG>typeahead</STRONG> return <STRONG>OK</STRONG> on
+ success and <STRONG>ERR</STRONG> on failure.
+
+ In <EM>ncurses</EM>, the functions in the previous paragraph return <STRONG>ERR</STRONG> if
+
+- <STRONG>o</STRONG> the library's <EM>TERMINAL</EM> structure for the device has not been
++ <STRONG>o</STRONG> the library's <EM>TERMINAL</EM> structure for the device has not been
+ initialized with <STRONG><A HREF="curs_initscr.3x.html">initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">newterm(3x)</A></STRONG>, or <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG>, or
+
+ <STRONG>o</STRONG> <EM>win</EM> is a null pointer (except with <STRONG>intrflush</STRONG> and <STRONG>meta</STRONG>, which ignore
+@@ -275,7 +274,7 @@
+
+ Further, <STRONG>halfdelay</STRONG> returns <STRONG>ERR</STRONG> if <EM>delay</EM> is outside the range 1..255.
+
+- See section "EXTENSIONS" below for the return values of <STRONG>is_cbreak</STRONG>,
++ See section "EXTENSIONS" below for the return values of <STRONG>is_cbreak</STRONG>,
+ <STRONG>is_echo</STRONG>, <STRONG>is_nl</STRONG>, and <STRONG>is_raw</STRONG>.
+
+
+@@ -283,29 +282,29 @@
+ <STRONG>echo</STRONG>, <STRONG>noecho</STRONG>, <STRONG>halfdelay</STRONG>, <STRONG>intrflush</STRONG>, <STRONG>meta</STRONG>, <STRONG>nl</STRONG>, <STRONG>nonl</STRONG>, <STRONG>nodelay</STRONG>, <STRONG>notimeout</STRONG>,
+ <STRONG>noqiflush</STRONG>, <STRONG>qiflush</STRONG>, <STRONG>timeout</STRONG>, and <STRONG>wtimeout</STRONG> may be implemented as macros.
+
+- <STRONG>noraw</STRONG> and <STRONG>nocbreak</STRONG> follow historical practice in that they attempt to
+- restore the terminal's canonical ("cooked") line discipline from raw
+- and cbreak, respectively. Mixing <STRONG>raw</STRONG>/<STRONG>noraw</STRONG> calls with <STRONG>cbreak</STRONG>/<STRONG>nocbreak</STRONG>
+- calls leads to terminal driver control states that are hard to predict
++ <STRONG>noraw</STRONG> and <STRONG>nocbreak</STRONG> follow historical practice in that they attempt to
++ restore the terminal's canonical ("cooked") line discipline from raw
++ and cbreak, respectively. Mixing <STRONG>raw</STRONG>/<STRONG>noraw</STRONG> calls with <STRONG>cbreak</STRONG>/<STRONG>nocbreak</STRONG>
++ calls leads to terminal driver control states that are hard to predict
+ or understand; doing so is not recommended.
+
+- <EM>curses</EM> documentation uses the terms "delay" and "timeout" freely to
+- describe two related but distinct aspects of input handling, at the
++ <EM>curses</EM> documentation uses the terms "delay" and "timeout" freely to
++ describe two related but distinct aspects of input handling, at the
+ risk of confusing the user. The functions <STRONG>halfdelay</STRONG>, <STRONG>nodelay</STRONG>, <STRONG>timeout</STRONG>,
+- and <STRONG>wtimeout</STRONG> configure whether the input character reading function
+- (<STRONG><A HREF="curs_getch.3x.html">getch(3x)</A></STRONG> or <STRONG><A HREF="curs_get_wch.3x.html">get_wch(3x)</A></STRONG>) waits for keyboard input to begin, and for
+- how long. <STRONG>keypad</STRONG> configures whether that function waits for further
++ and <STRONG>wtimeout</STRONG> configure whether the input character reading function
++ (<STRONG><A HREF="curs_getch.3x.html">getch(3x)</A></STRONG> or <STRONG><A HREF="curs_get_wch.3x.html">get_wch(3x)</A></STRONG>) waits for keyboard input to begin, and for
++ how long. <STRONG>keypad</STRONG> configures whether that function waits for further
+ input if the first character it reads is ESC. Calling <STRONG>notimeout</STRONG>, which
+- has nothing to do with <STRONG>timeout</STRONG> or <STRONG>wtimeout</STRONG>, makes this delay in
+- expectation of further keystrokes effectively infinite. X/Open Curses
+- affords no means of otherwise configuring the length of this second
++ has nothing to do with <STRONG>timeout</STRONG> or <STRONG>wtimeout</STRONG>, makes this delay in
++ expectation of further characters effectively infinite. X/Open Curses
++ affords no means of otherwise configuring the length of this second
+ delay, but an AIX and <EM>ncurses</EM> extension, <STRONG>ESCDELAY</STRONG>, is available both as
+- an environment variable and a global symbol permitting the application
++ an environment variable and a global symbol permitting the application
+ to do so; see <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> and <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>.
+
+
+ </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
+- <EM>ncurses</EM> provides four "is_" functions corresponding to <STRONG>cbreak</STRONG>, <STRONG>echo</STRONG>,
++ <EM>ncurses</EM> provides four "is_" functions corresponding to <STRONG>cbreak</STRONG>, <STRONG>echo</STRONG>,
+ <STRONG>nl</STRONG>, and <STRONG>raw</STRONG>, permitting their states to be queried by the application.
+
+ <STRONG>Query</STRONG> <STRONG>Set</STRONG> <STRONG>Reset</STRONG>
+@@ -321,7 +320,7 @@
+
+ <STRONG>0</STRONG> if the option is unset, or
+
+- <STRONG>-1</STRONG> if the library's <EM>TERMINAL</EM> structure for the device has not been
++ <STRONG>-1</STRONG> if the library's <EM>TERMINAL</EM> structure for the device has not been
+ initialized.
+
+
+@@ -329,52 +328,52 @@
+ Applications employing <EM>ncurses</EM> extensions should condition their use on
+ the visibility of the <STRONG>NCURSES_VERSION</STRONG> preprocessor macro.
+
+- Except as noted in section "EXTENSIONS" above, X/Open Curses Issue 4
++ Except as noted in section "EXTENSIONS" above, X/Open Curses Issue 4
+ describes these functions. It specifies no error conditions for them.
+
+- SVr4 describes a successful return value only as "an integer value
++ SVr4 describes a successful return value only as "an integer value
+ other than <EM>ERR</EM>".
+
+- <EM>ncurses</EM> follows X/Open Curses and the historical practice of System V
+- <EM>curses</EM>, clearing the terminal driver's "echo" flag when initializing
+- the screen. BSD <EM>curses</EM> did not, but its <EM>raw</EM> function turned it off as
+- a side effect. For best portability, call <EM>echo</EM> or <EM>noecho</EM> explicitly
+- just after initialization, even if your program retains the terminal's
++ <EM>ncurses</EM> follows X/Open Curses and the historical practice of System V
++ <EM>curses</EM>, clearing the terminal driver's "echo" flag when initializing
++ the screen. BSD <EM>curses</EM> did not, but its <EM>raw</EM> function turned it off as
++ a side effect. For best portability, call <EM>echo</EM> or <EM>noecho</EM> explicitly
++ just after initialization, even if your program retains the terminal's
+ canonical ("cooked") line discipline.
+
+- X/Open Curses is ambiguous regarding whether <EM>raw</EM> should disable the
+- carriage return and line feed translation feature controlled by <EM>nl</EM> and
+- <EM>nonl</EM>. BSD <EM>curses</EM> turned off these translations; System V <EM>curses</EM> did
+- not. <EM>ncurses</EM> does so, on the assumption that a programmer requesting
+- raw input wants a clean (ideally, 8-bit clean) connection that the
++ X/Open Curses is ambiguous regarding whether <EM>raw</EM> should disable the
++ carriage return and line feed translation feature controlled by <EM>nl</EM> and
++ <EM>nonl</EM>. BSD <EM>curses</EM> turned off these translations; System V <EM>curses</EM> did
++ not. <EM>ncurses</EM> does so, on the assumption that a programmer requesting
++ raw input wants a clean (ideally, 8-bit clean) connection that the
+ operating system will not alter.
+
+ When <STRONG>keypad</STRONG> is first enabled, <EM>ncurses</EM> loads the key definitions for the
+ current terminal type description. If that description includes
+- extended string capabilities, for example, by using the <STRONG>-x</STRONG> option of
++ extended string capabilities, for example, by using the <STRONG>-x</STRONG> option of
+ <STRONG><A HREF="tic.1m.html">tic(1)</A></STRONG>, then <EM>ncurses</EM> also defines keys for the capabilities whose names
+- begin with "k". Corresponding key codes are generated and (depending
+- on previous loads of terminal descriptions) may differ from one
+- execution of a program to the next. The generated key codes are
++ begin with "k". Corresponding key codes are generated and (depending
++ on previous loads of terminal descriptions) may differ from one
++ execution of a program to the next. The generated key codes are
+ recognized by <STRONG><A HREF="curs_util.3x.html">keyname(3x)</A></STRONG>, which then returns a name beginning with "k"
+- denoting the <EM>terminfo</EM> capability name rather than "K", used for <EM>curses</EM>
++ denoting the <EM>terminfo</EM> capability name rather than "K", used for <EM>curses</EM>
+ key names. On the other hand, an application can use <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG> to
+- bind a specific key to a string of the programmer's choice. This
+- feature enables an application to check for its presence with
++ bind a specific key to a string of the programmer's choice. This
++ feature enables an application to check for its presence with
+ <STRONG><A HREF="curs_terminfo.3x.html">tigetstr(3x)</A></STRONG>, and reassign the key code to match its own needs.
+
+ Low-level applications can use <STRONG><A HREF="curs_terminfo.3x.html">tigetstr(3x)</A></STRONG> to obtain the definition of
+- any string capability. <EM>curses</EM> applications use the input character
++ any string capability. <EM>curses</EM> applications use the input character
+ reading function to obtain key codes from input and rely upon the order
+- in which the string capabilities are loaded. Multiple key capability
+- strings can have the same value, but the input character reading
+- function can report only one key code. Most <EM>curses</EM> implementations
+- (including <EM>ncurses</EM>) load key definitions in the order they appear in
++ in which the string capabilities are loaded. Multiple key capability
++ strings can have the same value, but the input character reading
++ function can report only one key code. Most <EM>curses</EM> implementations
++ (including <EM>ncurses</EM>) load key definitions in the order they appear in
+ the <STRONG>strfnames</STRONG> array of string capability names; see <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>.
+- The last capability read using a particular definition determines the
+- key code to be reported. In <EM>ncurses</EM>, extended capabilities can be
+- interpreted as key definitions. These are loaded after the predefined
+- keys, and if a capability's value is the same as a previously loaded
++ The last capability read using a particular definition determines the
++ key code to be reported. In <EM>ncurses</EM>, extended capabilities can be
++ 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, the library uses the later definition.
+
+
+@@ -385,22 +384,23 @@
+ support it with <EM>cbreak</EM>, <EM>nocbreak</EM>, <EM>intrflush</EM>, <EM>keypad</EM>, <EM>meta</EM>, <EM>nodelay</EM>, and
+ <EM>typeahead</EM>.
+
+- SVr3 (1987) added <EM>halfdelay</EM>, <EM>notimeout</EM>, and <EM>wtimeout</EM>. <EM>qiflush</EM> and
+- <EM>noqiflush</EM> appeared in SVr3.1 (1987), at which point <EM>intrflush</EM> became a
+- wrapper for either of these functions, depending on the value of its
++ SVr3 (1987) added <EM>halfdelay</EM>, <EM>notimeout</EM>, and <EM>wtimeout</EM>. <EM>qiflush</EM> and
++ <EM>noqiflush</EM> appeared in SVr3.1 (1987), at which point <EM>intrflush</EM> became a
++ wrapper for either of these functions, depending on the value of its
+ Boolean argument. SVr3.1 also added <EM>timeout</EM>.
+
+ <EM>ncurses</EM> 6.5 (2024) introduced <EM>is</EM><STRONG>_</STRONG><EM>cbreak</EM>, <EM>is</EM><STRONG>_</STRONG><EM>echo</EM>, <EM>is</EM><STRONG>_</STRONG><EM>nl</EM>, and <EM>is</EM><STRONG>_</STRONG><EM>raw</EM>.
+
+- Formerly, <EM>ncurses</EM> used <EM>nl</EM> and <EM>nonl</EM> to control the conversion of
+- newlines to carriage return/line feed on output as well as input.
+- X/Open Curses documents the use of these functions only for input.
+- This difference arose from converting the <EM>pcurses</EM> source (1986), which
+- used <STRONG>ioctl(2)</STRONG> calls and the <EM>sgttyb</EM> structure, to <EM>termios</EM> (the POSIX
+- terminal API). In the former, both input and output were controlled
+- via a single option "CRMOD", while the latter separates these features.
+- Because that conversion interferes with output optimization, <EM>ncurses</EM>
+- 6.2 (2020) amended <EM>nl</EM> and <EM>nonl</EM> to eliminate their effect on output.
++ Formerly, <EM>ncurses</EM> used <EM>nl</EM> and <EM>nonl</EM> to control the conversion of
++ newlines to carriage return/line feed on output as well as input.
++ X/Open Curses documents the use of these functions only for input.
++ This difference arose from converting the <EM>pcurses</EM> source (1986), which
++ used <STRONG>ioctl(2)</STRONG> calls and the <EM>sgttyb</EM> structure, to <EM>termios</EM> (the POSIX
++ terminal API). In the former, both input and output conversions were
++ controlled via a single option "CRMOD", while the latter separates
++ these features. Because that conversion interferes with output
++ optimization, <EM>ncurses</EM> 6.2 (2020) amended <EM>nl</EM> and <EM>nonl</EM> to eliminate their
++ effect on output.
+
+
+ </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
+@@ -409,7 +409,7 @@
+
+
+
+-ncurses 6.5 2025-03-08 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
++ncurses 6.5 2025-03-15 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
+ </PRE>
+ <div class="nav">
+ <ul>
+Index: doc/html/man/ncurses.3x.html
+--- ncurses-6.5-20250308+/doc/html/man/ncurses.3x.html 2025-03-09 00:47:46.000000000 +0000
++++ ncurses-6.5-20250315/doc/html/man/ncurses.3x.html 2025-03-15 22:08:54.000000000 +0000
+@@ -61,7 +61,7 @@
+ displays with output optimized to minimize screen updates. <EM>ncurses</EM>
+ replaces the <EM>curses</EM> libraries from System V Release 4 Unix ("SVr4") and
+ 4.4BSD Unix, the development of which ceased in the 1990s. This
+- document describes <EM>ncurses</EM> version 6.5 (patch 20250308).
++ document describes <EM>ncurses</EM> version 6.5 (patch 20250315).
+
+ <EM>ncurses</EM> permits control of the terminal screen's contents; abstraction
+ and subdivision thereof with <EM>windows</EM> and <EM>pads</EM>; acquisition of keyboard
+Index: doc/html/man/resizeterm.3x.html
+--- ncurses-6.5-20250308+/doc/html/man/resizeterm.3x.html 2024-12-28 21:43:58.000000000 +0000
++++ ncurses-6.5-20250315/doc/html/man/resizeterm.3x.html 2025-03-15 22:08:54.000000000 +0000
+@@ -28,19 +28,19 @@
+ * authorization. *
+ ****************************************************************************
+ * Author: Thomas E. Dickey 1996-on
+- * @Id: resizeterm.3x,v 1.58 2024/12/28 21:18:35 tom Exp @
++ * @Id: resizeterm.3x,v 1.60 2025/03/15 21:12: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>resizeterm 3x 2024-12-28 ncurses 6.5 Library calls</TITLE>
++<TITLE>resizeterm 3x 2025-03-15 ncurses 6.5 Library calls</TITLE>
+ <link rel="author" href="mailto:bug-ncurses@gnu.org">
+
+ </HEAD>
+ <BODY>
+-<H1 class="no-header">resizeterm 3x 2024-12-28 ncurses 6.5 Library calls</H1>
++<H1 class="no-header">resizeterm 3x 2025-03-15 ncurses 6.5 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>
+
+@@ -73,10 +73,10 @@
+ existing windows. The added cells should match the current
+ attributes of the windows.
+
+- If the calling program has not set up a handler for <STRONG>SIGWINCH</STRONG> when it
+- initializes <EM>ncurses</EM> (e.g., using <STRONG><A HREF="curs_initscr.3x.html">initscr(3x)</A></STRONG> or <STRONG><A HREF="curs_initscr.3x.html">newterm(3x)</A></STRONG>), then
+- <EM>ncurses</EM> sets a handler for <STRONG>SIGWINCH</STRONG> which notifies the library when a
+- window-size event has occurred. The library checks for this
++ If the application has not set up a handler for <EM>SIGWINCH</EM> when it
++ initializes <EM>ncurses</EM> (by calling <STRONG><A HREF="curs_initscr.3x.html">initscr(3x)</A></STRONG> or <STRONG><A HREF="curs_initscr.3x.html">newterm(3x)</A></STRONG>), then
++ <EM>ncurses</EM> establishes a <EM>SIGWINCH</EM> handler that notifies the library when a
++ window-resizing event has occurred. The library checks for this
+ notification
+
+ <STRONG>o</STRONG> when reading input data,
+@@ -192,7 +192,7 @@
+
+
+
+-ncurses 6.5 2024-12-28 <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>
++ncurses 6.5 2025-03-15 <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>
+ </PRE>
+ <div class="nav">
+ <ul>
+Index: doc/html/man/terminfo.5.html
+--- ncurses-6.5-20250308+/doc/html/man/terminfo.5.html 2025-03-09 00:47:46.000000000 +0000
++++ ncurses-6.5-20250315/doc/html/man/terminfo.5.html 2025-03-15 22:08:55.000000000 +0000
+@@ -71,7 +71,7 @@
+ have, by specifying how to perform screen operations, and by specifying
+ padding requirements and initialization sequences.
+
+- This document describes <EM>ncurses</EM> version 6.5 (patch 20250308).
++ This document describes <EM>ncurses</EM> version 6.5 (patch 20250315).
+
+
+ </PRE><H3><a name="h3-terminfo-Entry-Syntax"><EM>terminfo</EM> Entry Syntax</a></H3><PRE>
+Index: man/curs_add_wch.3x
+Prereq: 1.110
+--- ncurses-6.5-20250308+/man/curs_add_wch.3x 2025-03-08 23:01:20.000000000 +0000
++++ ncurses-6.5-20250315/man/curs_add_wch.3x 2025-03-15 20:38:41.000000000 +0000
+@@ -28,8 +28,8 @@
+ .\" authorization. *
+ .\"***************************************************************************
+ .\"
+-.\" $Id: curs_add_wch.3x,v 1.110 2025/03/08 23:01:20 tom Exp $
+-.TH curs_add_wch 3X 2025-03-08 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
++.\" $Id: curs_add_wch.3x,v 1.112 2025/03/15 20:38:41 tom Exp $
++.TH curs_add_wch 3X 2025-03-15 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+ .ie \n(.g \{\
+ .ds `` \(lq
+ .ds '' \(rq
+@@ -144,6 +144,20 @@
+ from a
+ .I wchar_t
+ with \fB\%setcchar\fP(3X).
++A
++.I \%cchar_t
++can be copied from place to place using \fB\%win_wch\fP(3X) and
++.BR \%wadd_wch "."
++See \fB\%curs_attr\fP(3X) for values of predefined constants that can be
++usefully \*(``or\*(''ed with characters.
++A complex character whose only character component is a wide space,
++and whose only attribute is
++.BR \%WA_NORMAL ,
++is a
++.IR "blank character" ","
++and therefore combines with the window's background character;
++see \fB\%curs_bkgrnd\fP(3X).
++.PP
+ Much behavior depends on whether the wide characters in
+ .I wch
+ are spacing or non-spacing;
+@@ -233,20 +247,6 @@
+ Calling \fB\%win_wch\fP(3X) on the location of a nonprintable character
+ does not return the character itself,
+ but its \fB\%wunctrl\fP(3X) representation.
+-.PP
+-A
+-.I \%cchar_t
+-can be copied from place to place using \fB\%win_wch\fP(3X) and
+-.BR \%wadd_wch "."
+-See \fB\%curs_attr\fP(3X) for values of predefined constants that can be
+-usefully \*(``or\*(''ed with characters.
+-A complex character whose only character component is a wide space,
+-and whose only attribute is
+-.BR \%WA_NORMAL ,
+-is a
+-.IR "blank character" ","
+-and therefore combines with the background character;
+-see \fB\%curs_bkgrnd\fP(3X).
+ .SS wecho_wchar
+ .B \%echo_wchar
+ and
+@@ -275,13 +275,14 @@
+ .I \%ncurses
+ terms these
+ .I "forms-drawing characters."
+-The ACS default listed below is used if the
++.I curses
++uses the ACS default listed below if the terminal type lacks the
+ .B \%acs_chars
+ .RB \%( acsc )
+-.I \%term\%info
+-capability does not define a terminal-specific replacement for it,
++capability;
++that capability does not define a replacement for the character;
+ or if the terminal type and locale configuration
+-require Unicode to access these characters
++require Unicode to access these characters,
+ but the library is unable to use Unicode.
+ The \*(``acsc char\*('' column corresponds to how the characters are
+ specified in the
+@@ -481,9 +482,7 @@
+ .PP
+ In
+ .IR \%ncurses ,
+-they return
+-.B ERR
+-if
++these functions fail if
+ .bP
+ the
+ .I curses
+@@ -533,7 +532,7 @@
+ many publicly available
+ .I \%term\%info
+ entries include
+-.I \%acs_chars
++.B \%acs_chars
+ .RB \%( acsc )
+ capabilities in which their key characters
+ .RB ( pryz{|} )
+Index: man/curs_add_wchstr.3x
+Prereq: 1.55
+--- ncurses-6.5-20250308+/man/curs_add_wchstr.3x 2025-02-01 22:57:57.000000000 +0000
++++ ncurses-6.5-20250315/man/curs_add_wchstr.3x 2025-03-15 20:41:04.000000000 +0000
+@@ -27,8 +27,8 @@
+ .\" authorization. *
+ .\"***************************************************************************
+ .\"
+-.\" $Id: curs_add_wchstr.3x,v 1.55 2025/02/01 22:57:57 tom Exp $
+-.TH curs_add_wchstr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
++.\" $Id: curs_add_wchstr.3x,v 1.57 2025/03/15 20:41:04 tom Exp $
++.TH curs_add_wchstr 3X 2025-03-15 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+ .ie \n(.g \{\
+ .ds `` \(lq
+ .ds '' \(rq
+@@ -118,18 +118,21 @@
+ .PP
+ In
+ .IR \%ncurses ","
+-they return
+-.B ERR
+-if
++these functions fail if
+ .bP
+-.I win
+-is
+-.I NULL
+-or
++the
++.I curses
++screen has not been initialized,
+ .bP
+ .I wchstr
+-is
+-.IR NULL "."
++is a null pointer,
++or
++.bP
++(for functions taking a
++.I \%WINDOW
++pointer argument)
++.I win
++is a null pointer.
+ .PP
+ Functions prefixed with \*(``mv\*('' first perform cursor movement and
+ fail if the position
+Index: man/curs_addch.3x
+Prereq: 1.130
+--- ncurses-6.5-20250308+/man/curs_addch.3x 2025-03-08 23:01:20.000000000 +0000
++++ ncurses-6.5-20250315/man/curs_addch.3x 2025-03-15 20:40:50.000000000 +0000
+@@ -28,8 +28,8 @@
+ .\" authorization. *
+ .\"***************************************************************************
+ .\"
+-.\" $Id: curs_addch.3x,v 1.130 2025/03/08 23:01:20 tom Exp $
+-.TH curs_addch 3X 2025-03-08 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
++.\" $Id: curs_addch.3x,v 1.132 2025/03/15 20:40:50 tom Exp $
++.TH curs_addch 3X 2025-03-15 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+ .ie \n(.g \{\
+ .ds `` \(lq
+ .ds '' \(rq
+@@ -124,12 +124,31 @@
+ character
+ from a
+ .I char
+-by assignment.
++by assignment or typecast.
+ Subsection \*(``Video Attributes\*('' of \fB\%attron\fP(3X) describes
+ how to manipulate its attributes and color pair.
+ (A color pair selection is not honored unless initialized;
+ see \fB\%start_color\fP(3X).)
+ .PP
++The object or expression
++.I ch
++may contain attributes and/or a color pair identifier.
++(A
++.I \%chtype
++can be copied from place to place using \fB\%winch\fP(3X) and
++.BR \%waddch .)
++See \fB\%curs_attr\fP(3X) for values of predefined constants that can be
++usefully \*(``or\*(''ed with characters.
++A
++.I ch
++whose character component is a space,
++and whose only attribute is
++.BR \%A_NORMAL ,
++is a
++.IR "blank character" ","
++and therefore combines with the window's background character;
++see \fB\%curs_bkgd\fP(3X).
++.PP
+ If the cursor is not at the bottom of the scrolling region
+ and advancement occurs at the right margin,
+ the cursor automatically wraps to the beginning of the next line.
+@@ -186,25 +205,6 @@
+ Calling \fB\%winch\fP(3X) on the location of a nonprintable character
+ does not return the character itself,
+ but its \fB\%unctrl\fP(3X) representation.
+-.PP
+-The object or expression
+-.I ch
+-may contain attributes and/or a color pair identifier.
+-(A
+-.I \%chtype
+-can be copied from place to place using \fB\%winch\fP(3X) and
+-.BR \%waddch .)
+-See \fB\%curs_attr\fP(3X) for values of predefined constants that can be
+-usefully \*(``or\*(''ed with characters.
+-A
+-.I ch
+-whose character component is a space,
+-and whose only attribute is
+-.BR \%A_NORMAL ,
+-is a
+-.IR "blank character" ","
+-and therefore combines with the background character;
+-see \fB\%curs_bkgd\fP(3X).
+ .SS wechochar
+ .B \%echochar
+ and
+@@ -234,13 +234,14 @@
+ .I \%ncurses
+ terms these
+ .I "forms-drawing characters."
+-The ACS default listed below is used if the
++.I curses
++uses the ACS default listed below if the terminal type lacks the
+ .B \%acs_chars
+ .RB \%( acsc )
+-.I \%term\%info
+-capability does not define a terminal-specific replacement for it,
++capability;
++that capability does not define a replacement for the character;
+ or if the terminal type and locale configuration
+-require Unicode to access these characters
++require Unicode to access these characters,
+ but the library is unable to use Unicode.
+ The \*(``acsc char\*('' column corresponds to how the characters are
+ specified in the
+@@ -303,9 +304,7 @@
+ .PP
+ In
+ .IR \%ncurses ,
+-they return
+-.B ERR
+-if
++these functions fail if
+ .bP
+ the
+ .I curses
+@@ -371,7 +370,7 @@
+ many publicly available
+ .I \%term\%info
+ entries include
+-.I \%acs_chars
++.B \%acs_chars
+ .RB \%( acsc )
+ capabilities in which their key characters
+ .RB ( pryz{|} )
+Index: man/curs_addchstr.3x
+Prereq: 1.60
+--- ncurses-6.5-20250308+/man/curs_addchstr.3x 2025-02-01 22:50:42.000000000 +0000
++++ ncurses-6.5-20250315/man/curs_addchstr.3x 2025-03-15 20:41:04.000000000 +0000
+@@ -27,8 +27,8 @@
+ .\" authorization. *
+ .\"***************************************************************************
+ .\"
+-.\" $Id: curs_addchstr.3x,v 1.60 2025/02/01 22:50:42 tom Exp $
+-.TH curs_addchstr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
++.\" $Id: curs_addchstr.3x,v 1.62 2025/03/15 20:41:04 tom Exp $
++.TH curs_addchstr 3X 2025-03-15 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+ .ie \n(.g \{\
+ .ds `` \(lq
+ .ds '' \(rq
+@@ -116,18 +116,21 @@
+ .PP
+ In
+ .IR \%ncurses ","
+-they return
+-.B ERR
+-if
++these functions fail if
+ .bP
+-.I win
+-is
+-.I NULL
+-or
++the
++.I curses
++screen has not been initialized,
+ .bP
+ .I chstr
+-is
+-.IR NULL "."
++is a null pointer,
++or
++.bP
++(for functions taking a
++.I \%WINDOW
++pointer argument)
++.I win
++is a null pointer.
+ .PP
+ Functions prefixed with \*(``mv\*('' first perform cursor movement and
+ fail if the position
+Index: man/curs_addstr.3x
+Prereq: 1.67
+--- ncurses-6.5-20250308+/man/curs_addstr.3x 2025-02-01 22:48:11.000000000 +0000
++++ ncurses-6.5-20250315/man/curs_addstr.3x 2025-03-15 20:41:04.000000000 +0000
+@@ -27,8 +27,8 @@
+ .\" authorization. *
+ .\"***************************************************************************
+ .\"
+-.\" $Id: curs_addstr.3x,v 1.67 2025/02/01 22:48:11 tom Exp $
+-.TH curs_addstr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
++.\" $Id: curs_addstr.3x,v 1.69 2025/03/15 20:41:04 tom Exp $
++.TH curs_addstr 3X 2025-03-15 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+ .ie \n(.g \{\
+ .ds `` \(lq
+ .ds '' \(rq
+@@ -99,17 +99,20 @@
+ .PP
+ In
+ .IR \%ncurses ","
+-they return
+-.B ERR
+-if
++these functions fail if
+ .bP
+-.I win
+-is
+-.IR NULL ","
++the
++.I curses
++screen has not been initialized,
+ .bP
+ .I str
+-is
+-.IR NULL ","
++is a null pointer,
++.bP
++(for functions taking a
++.I \%WINDOW
++pointer argument)
++.I win
++is a null pointer,
+ or
+ .bP
+ an internal \fB\%waddch\fP(3X) call returns
+Index: man/curs_addwstr.3x
+Prereq: 1.58
+--- ncurses-6.5-20250308+/man/curs_addwstr.3x 2025-02-01 22:54:32.000000000 +0000
++++ ncurses-6.5-20250315/man/curs_addwstr.3x 2025-03-15 20:41:04.000000000 +0000
+@@ -27,8 +27,8 @@
+ .\" authorization. *
+ .\"***************************************************************************
+ .\"
+-.\" $Id: curs_addwstr.3x,v 1.58 2025/02/01 22:54:32 tom Exp $
+-.TH curs_addwstr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
++.\" $Id: curs_addwstr.3x,v 1.60 2025/03/15 20:41:04 tom Exp $
++.TH curs_addwstr 3X 2025-03-15 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+ .ie \n(.g \{\
+ .ds `` \(lq
+ .ds '' \(rq
+@@ -110,17 +110,20 @@
+ .PP
+ In
+ .IR \%ncurses ","
+-they return
+-.B ERR
+-if
++these functions fail if
+ .bP
+-.I win
+-is
+-.IR NULL ","
++the
++.I curses
++screen has not been initialized,
+ .bP
+ .I wstr
+-is
+-.IR NULL ","
++is a null pointer,
++.bP
++(for functions taking a
++.I \%WINDOW
++pointer argument)
++.I win
++is a null pointer,
+ or
+ .bP
+ an internal \fB\%wadd_wch\fP(3X) call returns
+Index: man/curs_getch.3x
+Prereq: 1.119
+--- ncurses-6.5-20250308+/man/curs_getch.3x 2025-02-15 19:35:55.000000000 +0000
++++ ncurses-6.5-20250315/man/curs_getch.3x 2025-03-15 22:04:20.000000000 +0000
+@@ -28,8 +28,8 @@
+ .\" authorization. *
+ .\"***************************************************************************
+ .\"
+-.\" $Id: curs_getch.3x,v 1.119 2025/02/15 19:35:55 tom Exp $
+-.TH curs_getch 3X 2025-02-15 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
++.\" $Id: curs_getch.3x,v 1.121 2025/03/15 22:04:20 tom Exp $
++.TH curs_getch 3X 2025-03-15 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+ .ie \n(.g \{\
+ .ds `` \(lq
+ .ds '' \(rq
+@@ -221,35 +221,55 @@
+ waiting to see if,
+ and how soon,
+ further input arrives.
+-When
+-.I curses
+-reads such an ambiguous character,
+-it sets a timer.
+-If the remainder of the sequence does not arrive within the designated
+-time,
++.bP
++If the escape sequence
++matches a string capability defining a function key
++for the terminal type
++(such as
++.B \%key_home
++.RB \%( khome )
++or
++.B \%key_up
++.RB \%( kuu1 )),
+ .B \%wgetch
+-returns the prefix character;
+-otherwise,
+-it returns the function key code corresponding to the unique sequence
++returns the function key code corresponding to the unique sequence
+ defined by the terminal.
++.bP
++If the escape sequence matches no function keys
++defined for the terminal type,
++.B \%wgetch
++returns the code of the last
++(most recent)
++character it has read.
++.bP
++If
++.B \%wgetch
++cannot decide the validity of the input as a function key
++because it has not read enough characters to disambiguate it,
++the function waits until it has this information or the
++.IR "escape delay" ","
++configured by the global variable
++.I \%ESCDELAY
++(an extension;
++see section \*(``EXTENSIONS\*('' below)
++or the environment variable of the same name
++(see section \*(``ENVIRONMENT\*('' of \fB\%ncurses\fP(3X)),
++also an extension,
++elapses.
++.PP
+ Consequently,
+ a user of a
+ .I curses
+-application may experience a delay after the escape key is pressed
++application that employs keypad mode
++may experience a pause or \*(``hang\*(''
++after the escape key is pressed
+ while
+ .I curses
+-disambiguates the input;
+-see section \*(``EXTENSIONS\*('' below.
++collects sufficient characters to disambiguate the input.
+ If the window is in \*(``no time-out\*('' mode,
+-the timer does not expire;
+-it is an infinite
+-(or very large)
+-value.
+-See \fB\%notimeout\fP(3X).
+-Because function key sequences usually begin with ESC,
+-the terminal may appear to hang in no time-out mode after the user
+-presses the escape key.
+-Generally,
++the escape delay is effectively infinite;
++see \fB\%notimeout\fP(3X).
++In the event of such a pause,
+ further typing \*(``awakens\*(''
+ .IR curses "."
+ .SS "Ungetting Characters"
+@@ -290,6 +310,7 @@
+ Symbol Key name
+ =
+ KEY_BREAK Break key
++.ne 4
+ KEY_DOWN Arrow keys
+ KEY_UP \^
+ KEY_LEFT \^
+@@ -709,6 +730,16 @@
+ .\" https://web.archive.org/web/20200923185647/https://man.netbsd.org/curses_input.3
+ had added them along with
+ .IR \%KEY_MOUSE "."
++.SH HISTORY
++4BSD (1980)
++introduced
++.I \%wgetch
++and its variants.
++.PP
++.I \%ncurses
++1.9.9g (1996)
++added
++.IR \%has_key "."
+ .SH SEE ALSO
+ ECMA-6 \*(``7-bit coded Character Set\*(''
+ \%<https://\*:ecma\-international\*:.org/\
+Index: man/curs_initscr.3x
+Prereq: 1.100
+--- ncurses-6.5-20250308+/man/curs_initscr.3x 2025-03-08 23:07:43.000000000 +0000
++++ ncurses-6.5-20250315/man/curs_initscr.3x 2025-03-15 21:11:24.000000000 +0000
+@@ -27,8 +27,8 @@
+ .\" authorization. *
+ .\"***************************************************************************
+ .\"
+-.\" $Id: curs_initscr.3x,v 1.100 2025/03/08 23:07:43 tom Exp $
+-.TH curs_initscr 3X 2025-03-08 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
++.\" $Id: curs_initscr.3x,v 1.102 2025/03/15 21:11:24 tom Exp $
++.TH curs_initscr 3X 2025-03-15 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+ .ie \n(.g \{\
+ .ds `` \(lq
+ .ds '' \(rq
+@@ -141,9 +141,9 @@
+ an input stream
+ .I inf
+ connected to the terminal.
+-It returns a variable of structure type
+-.I SCREEN
+-.BR * ","
++It returns a variable of
++.RI pointer-to- SCREEN
++type,
+ which should be saved for later use with
+ .B \%set_term
+ and
+Index: man/curs_inopts.3x
+Prereq: 1.100
+--- ncurses-6.5-20250308+/man/curs_inopts.3x 2025-03-08 23:09:30.000000000 +0000
++++ ncurses-6.5-20250315/man/curs_inopts.3x 2025-03-15 21:11:52.000000000 +0000
+@@ -28,8 +28,8 @@
+ .\" authorization. *
+ .\"***************************************************************************
+ .\"
+-.\" $Id: curs_inopts.3x,v 1.100 2025/03/08 23:09:30 tom Exp $
+-.TH curs_inopts 3X 2025-03-08 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
++.\" $Id: curs_inopts.3x,v 1.102 2025/03/15 21:11:52 tom Exp $
++.TH curs_inopts 3X 2025-03-15 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+ .ie \n(.g \{\
+ .ds `` \(lq
+ .ds '' \(rq
+@@ -264,7 +264,7 @@
+ then when an input character reading function reads ESC,
+ it waits for further input corresponding to an escape sequence
+ defined by the terminal type description.
+-If a valid sequence is entered,
++If a valid sequence populates the input stream,
+ the input character reading function
+ returns a value representing the function key,
+ such as
+@@ -372,10 +372,6 @@
+ .I curses
+ waits forever for subsequent keystrokes
+ until it determines the escape sequence to be valid or invalid.
+-To configure the timeout duration rather than disabling it,
+-see
+-.B \%wtimeout
+-below.
+ .\"
+ .SS "qiflush, noqiflush"
+ .\"
+@@ -624,7 +620,7 @@
+ .B \%timeout
+ or
+ .BR \%wtimeout ","
+-makes this delay in expectation of further keystrokes
++makes this delay in expectation of further characters
+ effectively infinite.
+ X/Open Curses affords no means of otherwise configuring
+ the length of this second delay,
+@@ -864,7 +860,7 @@
+ .I \%termios
+ (the POSIX terminal API).
+ In the former,
+-both input and output were controlled via a single option
++both input and output conversions were controlled via a single option
+ \*(``CRMOD\*('',
+ while the latter separates these features.
+ Because that conversion interferes with output optimization,
+Index: man/resizeterm.3x
+Prereq: 1.58
+--- ncurses-6.5-20250308+/man/resizeterm.3x 2024-12-28 21:18:35.000000000 +0000
++++ ncurses-6.5-20250315/man/resizeterm.3x 2025-03-15 21:12:18.000000000 +0000
+@@ -29,8 +29,8 @@
+ .\"
+ .\" Author: Thomas E. Dickey 1996-on
+ .\"
+-.\" $Id: resizeterm.3x,v 1.58 2024/12/28 21:18:35 tom Exp $
+-.TH resizeterm 3X 2024-12-28 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
++.\" $Id: resizeterm.3x,v 1.60 2025/03/15 21:12:18 tom Exp $
++.TH resizeterm 3X 2025-03-15 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+ .de bP
+ .ie n .IP \(bu 4
+ .el .IP \(bu 2
+@@ -62,11 +62,17 @@
+ 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 \fI\%ncurses\fP
+-(e.g., using \fB\%initscr\fP(3X) or \fB\%newterm\fP(3X)),
+-then \fI\%ncurses\fP sets a handler for \fB\%SIGWINCH\fP which notifies
+-the library when a window-size event has occurred.
++If the application has not set up a handler for
++.I \%SIGWINCH
++when it initializes
++.I \%ncurses
++(by calling \fB\%initscr\fP(3X) or \fB\%newterm\fP(3X)),
++then
++.I \%ncurses
++establishes a
++.I \%SIGWINCH
++handler that notifies the library
++when a window-resizing event has occurred.
+ The library checks for this notification
+ .bP
+ when reading input data,
+Index: package/debian-mingw/changelog
+--- ncurses-6.5-20250308+/package/debian-mingw/changelog 2025-03-08 11:56:38.000000000 +0000
++++ ncurses-6.5-20250315/package/debian-mingw/changelog 2025-03-15 11:18:45.000000000 +0000
+@@ -1,8 +1,8 @@
+-ncurses6td (6.5+20250308) unstable; urgency=low
++ncurses6td (6.5+20250315) unstable; urgency=low
+
+ * latest weekly patch
+
+- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 08 Mar 2025 06:56:38 -0500
++ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 15 Mar 2025 07:18:45 -0400
+
+ ncurses6 (5.9+20131005) unstable; urgency=low
+
+Index: package/debian-mingw64/changelog
+--- ncurses-6.5-20250308+/package/debian-mingw64/changelog 2025-03-08 11:56:38.000000000 +0000
++++ ncurses-6.5-20250315/package/debian-mingw64/changelog 2025-03-15 11:18:45.000000000 +0000
+@@ -1,8 +1,8 @@
+-ncurses6td (6.5+20250308) unstable; urgency=low
++ncurses6td (6.5+20250315) unstable; urgency=low
+
+ * latest weekly patch
+
+- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 08 Mar 2025 06:56:38 -0500
++ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 15 Mar 2025 07:18:45 -0400
+
+ ncurses6 (5.9+20131005) unstable; urgency=low
+
+Index: package/debian/changelog
+--- ncurses-6.5-20250308+/package/debian/changelog 2025-03-08 11:56:38.000000000 +0000
++++ ncurses-6.5-20250315/package/debian/changelog 2025-03-15 11:18:45.000000000 +0000
+@@ -1,8 +1,8 @@
+-ncurses6td (6.5+20250308) unstable; urgency=low
++ncurses6td (6.5+20250315) unstable; urgency=low
+
+ * latest weekly patch
+
+- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 08 Mar 2025 06:56:38 -0500
++ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 15 Mar 2025 07:18:45 -0400
+
+ ncurses6 (5.9+20120608) unstable; urgency=low
+
+Index: package/mingw-ncurses.nsi
+Prereq: 1.693
+--- ncurses-6.5-20250308+/package/mingw-ncurses.nsi 2025-03-08 11:56:38.000000000 +0000
++++ ncurses-6.5-20250315/package/mingw-ncurses.nsi 2025-03-15 11:18:45.000000000 +0000
+@@ -1,4 +1,4 @@
+-; $Id: mingw-ncurses.nsi,v 1.693 2025/03/08 11:56:38 tom Exp $
++; $Id: mingw-ncurses.nsi,v 1.694 2025/03/15 11:18:45 tom Exp $
+
+ ; TODO add examples
+ ; TODO bump ABI to 6
+@@ -10,7 +10,7 @@
+ !define VERSION_MAJOR "6"
+ !define VERSION_MINOR "5"
+ !define VERSION_YYYY "2025"
+-!define VERSION_MMDD "0308"
++!define VERSION_MMDD "0315"
+ !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
+
+ !define MY_ABI "5"
+Index: package/mingw-ncurses.spec
+--- ncurses-6.5-20250308+/package/mingw-ncurses.spec 2025-03-08 11:56:38.000000000 +0000
++++ ncurses-6.5-20250315/package/mingw-ncurses.spec 2025-03-15 11:18:45.000000000 +0000
+@@ -3,7 +3,7 @@
+ Summary: shared libraries for terminal handling
+ Name: mingw32-ncurses6
+ Version: 6.5
+-Release: 20250308
++Release: 20250315
+ License: X11
+ Group: Development/Libraries
+ URL: https://invisible-island.net/ncurses/
+Index: package/ncurses.spec
+--- ncurses-6.5-20250308+/package/ncurses.spec 2025-03-08 11:56:38.000000000 +0000
++++ ncurses-6.5-20250315/package/ncurses.spec 2025-03-15 11:18:45.000000000 +0000
+@@ -1,7 +1,7 @@
+ Summary: shared libraries for terminal handling
+ Name: ncurses6
+ Version: 6.5
+-Release: 20250308
++Release: 20250315
+ License: X11
+ Group: Development/Libraries
+ URL: https://invisible-island.net/ncurses/
+Index: package/ncursest.spec
+--- ncurses-6.5-20250308+/package/ncursest.spec 2025-03-08 11:56:38.000000000 +0000
++++ ncurses-6.5-20250315/package/ncursest.spec 2025-03-15 11:18:45.000000000 +0000
+@@ -1,7 +1,7 @@
+ Summary: Curses library with POSIX thread support.
+ Name: ncursest6
+ Version: 6.5
+-Release: 20250308
++Release: 20250315
+ License: X11
+ Group: Development/Libraries
+ Source: ncurses-%{version}-%{release}.tgz