]> ncurses.scripts.mit.edu Git - ncurses.git/commitdiff
ncurses 6.3 - patch 20220219
authorThomas E. Dickey <dickey@invisible-island.net>
Sun, 20 Feb 2022 02:01:54 +0000 (02:01 +0000)
committerThomas E. Dickey <dickey@invisible-island.net>
Sun, 20 Feb 2022 02:01:54 +0000 (02:01 +0000)
+ expanded description in man/resizeterm.3x
+ additional workaround for ImageMagick in test/picsmap.c

30 files changed:
NEWS
VERSION
dist.mk
doc/html/man/adacurses6-config.1.html
doc/html/man/captoinfo.1m.html
doc/html/man/clear.1.html
doc/html/man/form.3x.html
doc/html/man/infocmp.1m.html
doc/html/man/infotocap.1m.html
doc/html/man/menu.3x.html
doc/html/man/ncurses.3x.html
doc/html/man/ncurses6-config.1.html
doc/html/man/panel.3x.html
doc/html/man/resizeterm.3x.html
doc/html/man/tabs.1.html
doc/html/man/terminfo.5.html
doc/html/man/tic.1m.html
doc/html/man/toe.1m.html
doc/html/man/tput.1.html
doc/html/man/tset.1.html
man/manhtml.aliases
man/resizeterm.3x
package/debian-mingw/changelog
package/debian-mingw64/changelog
package/debian/changelog
package/mingw-ncurses.nsi
package/mingw-ncurses.spec
package/ncurses.spec
package/ncursest.spec
test/picsmap.c

diff --git a/NEWS b/NEWS
index bbb46b233529753d8af76bde78a47847985218a7..fdcd6760fabd2ff63a1b7efb24146fca5ab3b932 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -26,7 +26,7 @@
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
--- $Id: NEWS,v 1.3778 2022/02/12 20:15:29 tom Exp $
+-- $Id: NEWS,v 1.3780 2022/02/20 00:40:32 tom Exp $
 -------------------------------------------------------------------------------
 
 This is a log of changes that ncurses has gone through since Zeyd started
 -------------------------------------------------------------------------------
 
 This is a log of changes that ncurses has gone through since Zeyd started
@@ -46,6 +46,10 @@ See the AUTHORS file for the corresponding full names.
 Changes through 1.9.9e did not credit all contributions;
 it is not possible to add this information.
 
 Changes through 1.9.9e did not credit all contributions;
 it is not possible to add this information.
 
+20220219
+       + expanded description in man/resizeterm.3x
+       + additional workaround for ImageMagick in test/picsmap.c
+
 20220212
        + improve font-formatting in other manpages, for consistency.
        + correct/improve font-formatting in curs_wgetch.3x (patch by Benno
 20220212
        + improve font-formatting in other manpages, for consistency.
        + correct/improve font-formatting in curs_wgetch.3x (patch by Benno
diff --git a/VERSION b/VERSION
index e6418ad626c839aa3295a665ef0c52fd1c51c38d..a18db84873858f1346e397ce37f4176bb76d85d4 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-5:0:10 6.3     20220212
+5:0:10 6.3     20220219
diff --git a/dist.mk b/dist.mk
index 9d3414c79507384f8d293a384e399ea11b084d29..daffca7144636d791822045743ef61f2bafb2c3b 100644 (file)
--- a/dist.mk
+++ b/dist.mk
@@ -26,7 +26,7 @@
 # use or other dealings in this Software without prior written               #
 # authorization.                                                             #
 ##############################################################################
 # use or other dealings in this Software without prior written               #
 # authorization.                                                             #
 ##############################################################################
-# $Id: dist.mk,v 1.1466 2022/02/12 15:31:08 tom Exp $
+# $Id: dist.mk,v 1.1467 2022/02/19 12:13:47 tom Exp $
 # Makefile for creating ncurses distributions.
 #
 # This only needs to be used directly as a makefile by developers, but
 # Makefile for creating ncurses distributions.
 #
 # This only needs to be used directly as a makefile by developers, but
@@ -38,7 +38,7 @@ SHELL = /bin/sh
 # These define the major/minor/patch versions of ncurses.
 NCURSES_MAJOR = 6
 NCURSES_MINOR = 3
 # These define the major/minor/patch versions of ncurses.
 NCURSES_MAJOR = 6
 NCURSES_MINOR = 3
-NCURSES_PATCH = 20220212
+NCURSES_PATCH = 20220219
 
 # We don't append the patch to the version, since this only applies to releases
 VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
 
 # We don't append the patch to the version, since this only applies to releases
 VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
index fd9596a63027fa8879faf9017932a7c80d775178..54d42cec13de98a7fd9463060968d65e00ae4590 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
 
 
 
 
 
index 59bca6c2dcdabe1e3f2820f4f641e8cb0e6d8976..6def79d93f13b39df3d3f461d1d92948039fcc8a 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index a659b18f09c88d9e9353570c5c3d26aeebdc1706..ec1981b9f637ad96b8348425186559e1c015ff59 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG>xterm(1)</STRONG>.
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG>xterm(1)</STRONG>.
 
-       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
 
 
 
 
 
index 02942dca496efc7b16bac4fd60232b7c083fda02..134482784db5688924c249b09cf722777bc09acc 100644 (file)
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names  begin  "form_"  for  detailed
        descriptions of the entry points.
 
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names  begin  "form_"  for  detailed
        descriptions of the entry points.
 
-       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
 
 
 
 
 
index b4c63e830523a80cf4123fce7c30e6350f3131d6..bddcc60d2286f76104ddba89b634449c7a700f14 100644 (file)
 
        https://invisible-island.net/ncurses/tctest.html
 
 
        https://invisible-island.net/ncurses/tctest.html
 
-       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index 6f2bb8a888de391a01fd06214a7f8668f5689335..9c9e434f469fc77b7c2e3a0888e39a0815e478d5 100644 (file)
@@ -91,7 +91,7 @@
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index 92c694d099b6e733be2c3c55354261e5751b9657..2e098219e97cc6ba17ba50256e12e15230a9c9d0 100644 (file)
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names  begin  "menu_"  for  detailed
        descriptions of the entry points.
 
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names  begin  "menu_"  for  detailed
        descriptions of the entry points.
 
-       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
 
 
 
 
 
index a7f133026a051f755963e4d606ddb1854ce6d474..17afb0d2b76bd95273457582e109b96d7b717343 100644 (file)
@@ -60,7 +60,7 @@
        method of updating  character  screens  with  reasonable  optimization.
        This  implementation  is  "new  curses"  (ncurses)  and is the approved
        replacement for 4.4BSD classic curses,  which  has  been  discontinued.
        method of updating  character  screens  with  reasonable  optimization.
        This  implementation  is  "new  curses"  (ncurses)  and is the approved
        replacement for 4.4BSD classic curses,  which  has  been  discontinued.
-       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
        The  <STRONG>ncurses</STRONG>  library emulates the curses library of System V Release 4
        UNIX, and XPG4 (X/Open Portability Guide) curses  (also  known  as  XSI
 
        The  <STRONG>ncurses</STRONG>  library emulates the curses library of System V Release 4
        UNIX, and XPG4 (X/Open Portability Guide) curses  (also  known  as  XSI
index c7354ee5531cbba643cc25be83a490a1282628da..d2d90e1a37e55e347773f626c8c6bd2309edb9dd 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
 
 
 
 
 
index 4de975b5c93e592b9d4fdfabb7498a640dee0f9f..e02e5a7a464cb690adbf574ed2de1e2a24cfd0c3 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
 
-       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index d190848e7f08d1ce2b3ebce4ec9ccde604836c89..ebf6c55ccfd626380e62edcd4d469d83cc33c4c6 100644 (file)
@@ -28,7 +28,7 @@
   * authorization.                                                           *
   ****************************************************************************
   * Author: Thomas E. Dickey 1996-on
   * authorization.                                                           *
   ****************************************************************************
   * Author: Thomas E. Dickey 1996-on
-  * @Id: resizeterm.3x,v 1.31 2022/02/12 20:07:29 tom Exp @
+  * @Id: resizeterm.3x,v 1.32 2022/02/20 00:32:18 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
        This is an extension to the curses library.  It provides callers with a
        hook  into  the  <STRONG>ncurses</STRONG>  data  to resize windows, primarily for use by
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
        This is an extension to the curses library.  It provides callers with a
        hook  into  the  <STRONG>ncurses</STRONG>  data  to resize windows, primarily for use by
-       programs running in an X Window terminal (e.g., xterm).
+       programs running in  an  X  Window  terminal  (e.g.,  xterm)  when  the
+       terminal's screen size is changed by the user:
 
 
+       <STRONG>o</STRONG>   Curses  windows  cannot extend outside the screen.  If the terminal
+           is shrunk, curses windows must be shrunk to fit.
+
+       <STRONG>o</STRONG>   If the terminal is stretched, rows and/or columns can be  added  to
+           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  <STRONG>ncurses</STRONG>  (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
+       <STRONG>ncurses</STRONG> sets a handler for <STRONG>SIGWINCH</STRONG> which notifies the library  when  a
+       window-size   event   has   occurred.   The  library  checks  for  this
+       notification
+
+       <STRONG>o</STRONG>   when reading input data,
+
+       <STRONG>o</STRONG>   when implicitly resuming program mode (e.g., between <STRONG><A HREF="curs_initscr.3x.html">endwin(3x)</A></STRONG> and
+           <STRONG><A HREF="curs_refresh.3x.html">wrefresh(3x)</A></STRONG>), and
+
+       <STRONG>o</STRONG>   when explicitly resuming program mode in <STRONG><A HREF="curs_terminfo.3x.html">restartterm(3x)</A></STRONG>.
+
+       When the library has found that the terminal's window-size has changed,
+       it calls <STRONG>resizeterm</STRONG> to update its data structures.
+
+       An application which establishes its  own  <STRONG>SIGWINCH</STRONG>  handler  can  call
+       <STRONG>resizeterm</STRONG>,  but  in  that case, the library will not see <STRONG>SIGWINCH</STRONG>, and
+       proper layout will rely upon the application.
+
+
+</PRE><H2><a name="h2-FUNCTIONS">FUNCTIONS</a></H2><PRE>
 
 </PRE><H3><a name="h3-resizeterm">resizeterm</a></H3><PRE>
 
 </PRE><H3><a name="h3-resizeterm">resizeterm</a></H3><PRE>
-       The function <STRONG>resizeterm</STRONG> resizes the standard and current windows to the
-       specified  dimensions,  and  adjusts other bookkeeping data used by the
-       <STRONG>ncurses</STRONG> library that record the window dimensions such as the <STRONG>LINES</STRONG> and
-       <STRONG>COLS</STRONG> variables.
+       The function <STRONG>resizeterm</STRONG> resizes the standard and current windows (i.e.,
+       <STRONG>stdscr</STRONG>  and  <STRONG>curscr</STRONG>)  to  the  specified  dimensions, and adjusts other
+       bookkeeping data used by the <STRONG>ncurses</STRONG> library  that  record  the  window
+       dimensions such as the <STRONG>LINES</STRONG> and <STRONG>COLS</STRONG> variables.
 
 
 </PRE><H3><a name="h3-resize_term">resize_term</a></H3><PRE>
 
 
 </PRE><H3><a name="h3-resize_term">resize_term</a></H3><PRE>
-       Most  of the work is done by the inner function <STRONG>resize_term</STRONG>.  The outer
-       function <STRONG>resizeterm</STRONG> adds bookkeeping for the <STRONG>SIGWINCH</STRONG> handler, as  well
-       as repainting the soft-key area (see <STRONG><A HREF="curs_slk.3x.html">slk_touch(3x)</A></STRONG>).
+       Most  of  the  work  for  <STRONG>resizeterm</STRONG>  is  done  by  the  inner function
+       <STRONG>resize_term</STRONG>.  The outer function <STRONG>resizeterm</STRONG> adds  bookkeeping  for  the
+       <STRONG>SIGWINCH</STRONG>  handler,  as  well  as  repainting  the  soft-key  area  (see
+       <STRONG><A HREF="curs_slk.3x.html">slk_touch(3x)</A></STRONG>).
+
+       The <STRONG>resize_term</STRONG> function attempts to resize all  windows.   This  helps
+       with simple applications.  However:
 
 
-       When  resizing  the windows, <STRONG>resize_term</STRONG> blank-fills the areas that are
-       extended.  The calling application should  fill  in  these  areas  with
-       appropriate data.
+       <STRONG>o</STRONG>   It is not possible to automatically resize pads.
 
 
-       The  <STRONG>resize_term</STRONG> function attempts to resize all windows.  However, due
-       to the calling convention of pads, it is not possible to  resize  these
-       without additional interaction with the application.
+       <STRONG>o</STRONG>   Applications  which  have  complicated  layouts  should  check  for
+           <STRONG>KEY_RESIZE</STRONG> returned from <STRONG>wgetch</STRONG>, and  adjust  their  layout,  e.g.,
+           using <STRONG>wresize</STRONG> and <STRONG>mvwin</STRONG>, or by recreating the windows.
 
        When  resizing  windows,  <STRONG>resize_term</STRONG>  recursively  adjusts subwindows,
        keeping them within the updated parent window's limits.  If a top-level
 
        When  resizing  windows,  <STRONG>resize_term</STRONG>  recursively  adjusts subwindows,
        keeping them within the updated parent window's limits.  If a top-level
 
        <STRONG>o</STRONG>   on receipt of a <STRONG>SIGWINCH</STRONG>, the handler sets a flag
 
 
        <STRONG>o</STRONG>   on receipt of a <STRONG>SIGWINCH</STRONG>, the handler sets a flag
 
-       <STRONG>o</STRONG>   which is tested in <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG> and <STRONG>doupdate</STRONG>,
+       <STRONG>o</STRONG>   which is tested in <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">doupdate(3x)</A></STRONG> and <STRONG><A HREF="curs_terminfo.3x.html">restartterm(3x)</A></STRONG>,
 
        <STRONG>o</STRONG>   in turn, calling the <STRONG>resizeterm</STRONG> function,
 
 
        <STRONG>o</STRONG>   in turn, calling the <STRONG>resizeterm</STRONG> function,
 
 <ul>
 <li><a href="#h2-NAME">NAME</a></li>
 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
 <ul>
 <li><a href="#h2-NAME">NAME</a></li>
 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
-<li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
+<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
+<li><a href="#h2-FUNCTIONS">FUNCTIONS</a>
 <ul>
 <li><a href="#h3-resizeterm">resizeterm</a></li>
 <li><a href="#h3-resize_term">resize_term</a></li>
 <ul>
 <li><a href="#h3-resizeterm">resizeterm</a></li>
 <li><a href="#h3-resize_term">resize_term</a></li>
index 4a05c27ff72f8f8f5de0a4587cb8706923940194..0e798394d7940e486975b503aa6bd2e2baf8878c 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
 
-       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
 
 
 
 
 
index 405adc8927bc75211aa3ba9fdd4a6079b112942a..31cfa81913ef374d1331053f6c46a9bfb082b9ef 100644 (file)
        have, by specifying how to perform screen operations, and by specifying
        padding requirements and initialization sequences.
 
        have, by specifying how to perform screen operations, and by specifying
        padding requirements and initialization sequences.
 
-       This manual describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This manual describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
 
 </PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE>
 
 
 </PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE>
index 3b4d16f7f407103e17f3270f3b91d534a983c00c..e62002e43d9fa2ae3d22e560205715e84602ba28 100644 (file)
        <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>,   <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>,   <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>,   <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>,   <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
        <STRONG><A HREF="term.5.html">term(5)</A></STRONG>.  <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.  <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
 
        <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>,   <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>,   <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>,   <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>,   <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
        <STRONG><A HREF="term.5.html">term(5)</A></STRONG>.  <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.  <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
 
-       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index 3c446449418aeaf18d1c5fd7944769585be72278..ef828092005c6a98f5a41bb328290fdfd339adc0 100644 (file)
        <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>,   <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>,   <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>,   <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>,   <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
        <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
 
        <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>,   <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>,   <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>,   <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>,   <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
        <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
 
-       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
 
 
 
 
 
index 5c13290c5cdcfce065988bfcb9a5f0ceac890401..a27c6efa618c01de8f85a80de246f2e5d9d3d2ee 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>, <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>, <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
 
-       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
 
 
 
 
 
index b1c84bf468daddddf71292f6495412b427ab5404..50edca1e3858b1b77dfb8e10c1516f0aa4b5d33b 100644 (file)
        <STRONG>csh(1)</STRONG>,   <STRONG>sh(1)</STRONG>,   <STRONG>stty(1)</STRONG>,   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>,  <STRONG>tty(4)</STRONG>,  <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>,
        <STRONG>ttys(5)</STRONG>, <STRONG>environ(7)</STRONG>
 
        <STRONG>csh(1)</STRONG>,   <STRONG>sh(1)</STRONG>,   <STRONG>stty(1)</STRONG>,   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>,  <STRONG>tty(4)</STRONG>,  <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>,
        <STRONG>ttys(5)</STRONG>, <STRONG>environ(7)</STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220212).
+       This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220219).
 
 
 
 
 
 
index a9f18ca70693c3931991febb4865409a33e92b21..9f33e273f0a3c753f51a6ef120b7adede4a77073 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: manhtml.aliases,v 1.19 2020/12/12 14:45:55 tom Exp $
+# $Id: manhtml.aliases,v 1.20 2022/02/20 00:39:41 tom Exp $
 #***************************************************************************
 #***************************************************************************
-# Copyright 2019,2020 Thomas E. Dickey                                     *
+# Copyright 2019-2020,2022 Thomas E. Dickey                                *
 # Copyright 2013,2017 Free Software Foundation, Inc.                       *
 #                                                                          *
 # Permission is hereby granted, free of charge, to any person obtaining a  *
 # Copyright 2013,2017 Free Software Foundation, Inc.                       *
 #                                                                          *
 # Permission is hereby granted, free of charge, to any person obtaining a  *
@@ -50,6 +50,7 @@ mvwin(3X)             curs_window(3X)
 newterm(3X)            curs_initscr(3X)
 refresh(3X)            curs_refresh(3X)
 reset_shell_mode(3X)   curs_kernel(3X)
 newterm(3X)            curs_initscr(3X)
 refresh(3X)            curs_refresh(3X)
 reset_shell_mode(3X)   curs_kernel(3X)
+restartterm(3X)                curs_terminfo(3X)
 set_term(3X)           curs_initscr(3X)
 setcchar(3X)           curs_getcchar(3X)
 setupterm(3X)          curs_terminfo(3X)
 set_term(3X)           curs_initscr(3X)
 setcchar(3X)           curs_getcchar(3X)
 setupterm(3X)          curs_terminfo(3X)
index fed95a1a919ab2a1def337e7d105a9b9fd946871..37094d80cac3bfbeda78f1855c20ca228b6a29f6 100644 (file)
@@ -29,7 +29,7 @@
 .\"
 .\" Author: Thomas E. Dickey 1996-on
 .\"
 .\"
 .\" Author: Thomas E. Dickey 1996-on
 .\"
-.\" $Id: resizeterm.3x,v 1.31 2022/02/12 20:07:29 tom Exp $
+.\" $Id: resizeterm.3x,v 1.32 2022/02/20 00:32:18 tom Exp $
 .TH resizeterm 3X ""
 .de bP
 .ie n  .IP \(bu 4
 .TH resizeterm 3X ""
 .de bP
 .ie n  .IP \(bu 4
 .PP
 This is an extension to the curses library.
 It provides callers with a hook into the \fBncurses\fP data to resize windows,
 .PP
 This is an extension to the curses library.
 It provides callers with a hook into the \fBncurses\fP data to resize windows,
-primarily for use by programs running in an X Window terminal (e.g., xterm).
+primarily for use by programs running in an X Window terminal (e.g., xterm)
+when the terminal's screen size is changed by the user:
+.bP
+Curses windows cannot extend outside the screen.
+If the terminal is shrunk, curses windows must be shrunk to fit.
+.bP
+If the terminal is stretched,
+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 \fBSIGWINCH\fP
+when it initializes \fBncurses\fP
+(e.g., using \fBinitscr\fP(3X) or \fBnewterm\fP(3X)),
+then \fBncurses\fP sets a handler for \fBSIGWINCH\fP which notifies
+the library when a window-size event has occurred.
+The library checks for this notification
+.bP
+when reading input data,
+.bP
+when implicitly resuming program mode
+(e.g., between \fBendwin\fP(3X) and \fBwrefresh\fP(3X)),
+and
+.bP
+when explicitly resuming program mode in \fBrestartterm\fP(3X).
+.PP
+When the library has found that the terminal's window-size has
+changed, it calls \fBresizeterm\fP to update its data structures.
+.PP
+An application which establishes its own \fBSIGWINCH\fP handler
+can call \fBresizeterm\fP, but in that case, the library will not
+see \fBSIGWINCH\fP, and proper layout will rely upon the application.
+.SH FUNCTIONS
 .SS resizeterm
 .PP
 The function \fBresizeterm\fP resizes the standard and current windows
 .SS resizeterm
 .PP
 The function \fBresizeterm\fP resizes the standard and current windows
+(i.e., \fBstdscr\fP and \fBcurscr\fP)
 to the specified dimensions, and adjusts other bookkeeping data used by
 the \fBncurses\fP library that record the window dimensions
 such as the \fBLINES\fP and \fBCOLS\fP variables.
 .SS resize_term
 .PP
 to the specified dimensions, and adjusts other bookkeeping data used by
 the \fBncurses\fP library that record the window dimensions
 such as the \fBLINES\fP and \fBCOLS\fP variables.
 .SS resize_term
 .PP
-Most of the work is done by the inner function \fBresize_term\fP.
+Most of the work for \fBresizeterm\fP is
+done by the inner function \fBresize_term\fP.
 The outer function \fBresizeterm\fP adds bookkeeping
 for the \fBSIGWINCH\fP handler,
 as well as repainting the soft-key area (see \fBslk_touch\fP(3X)).
 .PP
 The outer function \fBresizeterm\fP adds bookkeeping
 for the \fBSIGWINCH\fP handler,
 as well as repainting the soft-key area (see \fBslk_touch\fP(3X)).
 .PP
-When resizing the windows,
-\fBresize_term\fP blank-fills the areas that are extended.
-The calling application should fill in these areas with appropriate data.
-.PP
 The \fBresize_term\fP function attempts to resize all windows.
 The \fBresize_term\fP function attempts to resize all windows.
-However, due to the calling convention of pads,
-it is not possible to resize these
-without additional interaction with the application.
+This helps with simple applications.
+However:
+.bP
+It is not possible to automatically resize pads.
+.bP
+Applications which have complicated layouts should check for
+\fBKEY_RESIZE\fP returned from \fBwgetch\fP,
+and adjust their layout, e.g., using \fBwresize\fP and \fBmvwin\fP,
+or by recreating the windows.
 .PP
 When resizing windows, \fBresize_term\fP recursively adjusts subwindows,
 keeping them within the updated parent window's limits.
 .PP
 When resizing windows, \fBresize_term\fP recursively adjusts subwindows,
 keeping them within the updated parent window's limits.
@@ -101,7 +136,10 @@ If ncurses is configured to supply its own \fBSIGWINCH\fP handler,
 .bP
 on receipt of a \fBSIGWINCH\fP, the handler sets a flag
 .bP
 .bP
 on receipt of a \fBSIGWINCH\fP, the handler sets a flag
 .bP
-which is tested in \fBwgetch\fP(3X) and \fBdoupdate\fP,
+which is tested in
+\fBwgetch\fP(3X),
+\fBdoupdate\fP(3X) and
+\fBrestartterm\fP(3X),
 .bP
 in turn, calling the \fBresizeterm\fP function,
 .bP
 .bP
 in turn, calling the \fBresizeterm\fP function,
 .bP
index 2475252e861d2fd0206219744f50429afa1c09db..7add8c3038e8b6cc01c0353e9f2fbd35fb00e108 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.3+20220212) unstable; urgency=low
+ncurses6 (6.3+20220219) unstable; urgency=low
 
   * latest weekly patch
 
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 12 Feb 2022 10:31:08 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 19 Feb 2022 07:13:47 -0500
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
index 2475252e861d2fd0206219744f50429afa1c09db..7add8c3038e8b6cc01c0353e9f2fbd35fb00e108 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.3+20220212) unstable; urgency=low
+ncurses6 (6.3+20220219) unstable; urgency=low
 
   * latest weekly patch
 
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 12 Feb 2022 10:31:08 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 19 Feb 2022 07:13:47 -0500
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
index d4eb2727ba2ea2bd7323eb24704f43ad5400c2d0..61628fe45e9e41b0a196465242aec519138046c6 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.3+20220212) unstable; urgency=low
+ncurses6 (6.3+20220219) unstable; urgency=low
 
   * latest weekly patch
 
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 12 Feb 2022 10:31:08 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 19 Feb 2022 07:13:47 -0500
 
 ncurses6 (5.9-20120608) unstable; urgency=low
 
 
 ncurses6 (5.9-20120608) unstable; urgency=low
 
index 2801deae9596f5f0a4410a1b65b523c341890e77..04d35fc397d18d97d8e9f5a5c48cf5d4a930dc92 100644 (file)
@@ -1,4 +1,4 @@
-; $Id: mingw-ncurses.nsi,v 1.506 2022/02/12 15:31:08 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.507 2022/02/19 12:13:47 tom Exp $\r
 \r
 ; TODO add examples\r
 ; TODO bump ABI to 6\r
 \r
 ; TODO add examples\r
 ; TODO bump ABI to 6\r
@@ -10,7 +10,7 @@
 !define VERSION_MAJOR "6"\r
 !define VERSION_MINOR "3"\r
 !define VERSION_YYYY  "2022"\r
 !define VERSION_MAJOR "6"\r
 !define VERSION_MINOR "3"\r
 !define VERSION_YYYY  "2022"\r
-!define VERSION_MMDD  "0212"\r
+!define VERSION_MMDD  "0219"\r
 !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}\r
 \r
 !define MY_ABI   "5"\r
 !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}\r
 \r
 !define MY_ABI   "5"\r
index 30be10c0d686ed60e033ddea18227297ce1961ef..7403aed9fabd9941e5e3a5fab10bf396d33c0dc6 100644 (file)
@@ -3,7 +3,7 @@
 Summary: shared libraries for terminal handling
 Name: mingw32-ncurses6
 Version: 6.3
 Summary: shared libraries for terminal handling
 Name: mingw32-ncurses6
 Version: 6.3
-Release: 20220212
+Release: 20220219
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index 8dfd735079c71c86310208205193569b9a7cfa7b..71d106db0debf60a0a682828cc1ba038324bae02 100644 (file)
@@ -1,7 +1,7 @@
 Summary: shared libraries for terminal handling
 Name: ncurses6
 Version: 6.3
 Summary: shared libraries for terminal handling
 Name: ncurses6
 Version: 6.3
-Release: 20220212
+Release: 20220219
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index 0e111bee92f1bd9d0e3eea54d3e053da3cc4d4fa..f707476a2a3bb9c1050f4cf8c4b60f1d5cfd9181 100644 (file)
@@ -1,7 +1,7 @@
 Summary: Curses library with POSIX thread support.
 Name: ncursest6
 Version: 6.3
 Summary: Curses library with POSIX thread support.
 Name: ncursest6
 Version: 6.3
-Release: 20220212
+Release: 20220219
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index 09b46ee9cb0b26cbd7f1294ac1411785d36dbc55..1702639ea4daf4f89f2cdedd92b7dd9dd0829b6f 100644 (file)
@@ -27,7 +27,7 @@
  * authorization.                                                           *
  ****************************************************************************/
 /*
  * authorization.                                                           *
  ****************************************************************************/
 /*
- * $Id: picsmap.c,v 1.142 2022/02/06 01:44:34 tom Exp $
+ * $Id: picsmap.c,v 1.144 2022/02/19 21:30:04 tom Exp $
  *
  * Author: Thomas E. Dickey
  *
  *
  * Author: Thomas E. Dickey
  *
@@ -1383,7 +1383,6 @@ parse_img(const char *filename)
                char *t;
                char *s = t = strchr(buffer, '#');
                bool matched = FALSE;
                char *t;
                char *s = t = strchr(buffer, '#');
                bool matched = FALSE;
-               bool blurred = FALSE;
 
                if (s != 0) {
                    /* after the "#RGB", there are differences - just ignore */
 
                if (s != 0) {
                    /* after the "#RGB", there are differences - just ignore */
@@ -1391,6 +1390,7 @@ parse_img(const char *filename)
                        ++s;
                    *++s = '\0';
                }
                        ++s;
                    *++s = '\0';
                }
+
                if (match_c(buffer,
                            "%d,%d: (%d,%d,%d,%d) #%x ",
                            &col, &row,
                if (match_c(buffer,
                            "%d,%d: (%d,%d,%d,%d) #%x ",
                            &col, &row,
@@ -1401,25 +1401,33 @@ parse_img(const char *filename)
                                   "%d,%d: (%f%%,%f%%,%f%%,%d) #%x ",
                                   &col, &row,
                                   &rf, &gf, &bf, &nocolor,
                                   "%d,%d: (%f%%,%f%%,%f%%,%d) #%x ",
                                   &col, &row,
                                   &rf, &gf, &bf, &nocolor,
+                                  &check) ||
+                          match_c(buffer,
+                                  "%d,%d: (%f%%,%f%%,%f%%) #%x ",
+                                  &col, &row,
+                                  &rf, &gf, &bf,
                                   &check)) {
                    matched = TRUE;
                                   &check)) {
                    matched = TRUE;
-                   blurred = TRUE;     /* 6.9.11 scaling is broken... */
+
 #define fp_fix(n) (int) (MaxRGB * (((n) > 100.0 ? 100.0 : (n)) / 100.0))
 #define fp_fix(n) (int) (MaxRGB * (((n) > 100.0 ? 100.0 : (n)) / 100.0))
+
                    r = fp_fix(rf);
                    g = fp_fix(gf);
                    b = fp_fix(bf);
                }
                    r = fp_fix(rf);
                    g = fp_fix(gf);
                    b = fp_fix(bf);
                }
+               if ((s - t) > 8)        /* 6 hex digits vs 8 */
+                   check /= 256;
                if (matched) {
                    int which, c;
                if (matched) {
                    int which, c;
+                   int want_r = (check >> 16) & 0xff;
+                   int want_g = (check >> 8) & 0xff;
+                   int want_b = (check >> 0) & 0xff;
+
+#define fp_err(tst,ref) ((tst > MaxRGB) || ((tst - ref)*(tst - ref)) > 4)
 
 
-                   if ((s - t) > 8)    /* 6 hex digits vs 8 */
-                       check /= 256;
-                   if (blurred) {
-                       /* revisit this when ImageMagick is fixed */
-                   } else if (r > MaxRGB ||
-                              g > MaxRGB ||
-                              b > MaxRGB ||
-                              check != (unsigned) ((r << 16) | (g << 8) | b)) {
+                   if (fp_err(r, want_r) ||
+                       fp_err(g, want_g) ||
+                       fp_err(b, want_b)) {
                        okay = FALSE;
                        break;
                    }
                        okay = FALSE;
                        break;
                    }