-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: INSTALL,v 1.216 2020/02/02 23:34:34 tom Exp $
+-- $Id: INSTALL,v 1.217 2020/02/15 13:39:30 tom Exp $
---------------------------------------------------------------------
How to install Ncurses/Terminfo on your system
---------------------------------------------------------------------
you may encounter when building a system with different versions of
ncurses:
+ 6.2 (Feb 12, 2020)
+ Interface changes:
+
+ + the terminal database must be compiled with ncurses 6.2 tic;
+ older versions of tic/infocmp will not work. Aside from that,
+ the compiled database will work with older applications.
+
+ + "*.pc" and "ncurses*-config" files give the same information.
+
+ + vwprintw and vwscanw are deprecated.
+
+ Added extensions:
+
+ + These make it simpler to substitute a debug-configuration of the
+ library for non-debug:
+ curses_trace
+ exit_curses
+ exit_terminfo
+
+ Added internal functions (other than "_sp" variants):
+
+ + These provide fast-lookup of common user-defined capabilities:
+ _nc_find_user_entry
+ _nc_get_userdefs_table
+ _nc_get_hash_user
+
+ + This is added to work around compiler-warnings:
+ _nc_fmt_funcptr
+
+ Removed internal functions:
+
+ + _nc_import_termtype
+
+ Modified internal functions:
+
+ + _nc_reserve_pairs no longer returns a value
+
6.1 (Jan 27, 2018)
Interface changes:
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: NEWS,v 1.3446 2020/02/12 02:21:21 tom Exp $
+-- $Id: NEWS,v 1.3450 2020/02/15 18:56:00 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started
Changes through 1.9.9e did not credit all contributions;
it is not possible to add this information.
+20200215
+ + improve manual page for panel library, extending the portability
+ section as well as documenting error-returns.
+ + show tic's version when installing terminal database in run_tic.sh
+ + correct check for gcc vs other compilers used in ncurses 6.0, from
+ FreeBSD patch by Kyle Evans (cf: 20150725).
+ + add notes for 6.2 to INSTALL.
+
20200212 6.2 release for upload to ftp.gnu.org
+ update release notes
+ minor build-fixes, mostly to test-package scripts
-5:0:10 6.2 20200212
+5:0:10 6.2 20200215
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: dist.mk,v 1.1334 2020/02/09 21:49:08 tom Exp $
+# $Id: dist.mk,v 1.1335 2020/02/15 09:30:48 tom Exp $
# Makefile for creating ncurses distributions.
#
# This only needs to be used directly as a makefile by developers, but
# These define the major/minor/patch versions of ncurses.
NCURSES_MAJOR = 6
NCURSES_MINOR = 2
-NCURSES_PATCH = 20200212
+NCURSES_PATCH = 20200215
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "form_" for detailed
descriptions of the entry points.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
https://invisible-island.net/ncurses/tctest.html
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "menu_" for detailed
descriptions of the entry points.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
method of updating character screens with reasonable optimization.
This implementation is "new curses" (ncurses) and is the approved
replacement for 4.4BSD classic curses, which has been discontinued.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
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
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: panel.3x,v 1.28 2020/02/02 23:34:34 tom Exp @
+ * @Id: panel.3x,v 1.39 2020/02/15 21:06:40 tom Exp @
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<STRONG>cc</STRONG> <STRONG>[flags]</STRONG> <STRONG>sourcefiles</STRONG> <STRONG>-lpanel</STRONG> <STRONG>-lncurses</STRONG>
- <STRONG>PANEL</STRONG> <STRONG>*new_panel(WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>bottom_panel(PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>int</STRONG> <STRONG>top_panel(PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>int</STRONG> <STRONG>show_panel(PANEL</STRONG> <STRONG>*pan);</STRONG>
+ <STRONG>PANEL</STRONG> <STRONG>*new_panel(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>bottom_panel(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>top_panel(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>show_panel(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
<STRONG>void</STRONG> <STRONG>update_panels(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>hide_panel(PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>WINDOW</STRONG> <STRONG>*panel_window(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>int</STRONG> <STRONG>replace_panel(PANEL</STRONG> <STRONG>*pan,</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*window);</STRONG>
- <STRONG>int</STRONG> <STRONG>move_panel(PANEL</STRONG> <STRONG>*pan,</STRONG> <STRONG>int</STRONG> <STRONG>starty,</STRONG> <STRONG>int</STRONG> <STRONG>startx);</STRONG>
- <STRONG>int</STRONG> <STRONG>panel_hidden(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>PANEL</STRONG> <STRONG>*panel_above(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>PANEL</STRONG> <STRONG>*panel_below(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>int</STRONG> <STRONG>set_panel_userptr(PANEL</STRONG> <STRONG>*pan,</STRONG> <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*ptr);</STRONG>
- <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*panel_userptr(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>int</STRONG> <STRONG>del_panel(PANEL</STRONG> <STRONG>*pan);</STRONG>
+ <STRONG>int</STRONG> <STRONG>hide_panel(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+
+ <STRONG>WINDOW</STRONG> <STRONG>*panel_window(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>replace_panel(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>,</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>window</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>move_panel(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>starty</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>startx</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>panel_hidden(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+
+ <STRONG>PANEL</STRONG> <STRONG>*panel_above(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+ <STRONG>PANEL</STRONG> <STRONG>*panel_below(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_panel_userptr(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>ptr</EM><STRONG>);</STRONG>
+ <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*panel_userptr(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>del_panel(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+
+ /* ncurses-extensions */
+ <STRONG>PANEL</STRONG> <STRONG>*ground_panel(SCREEN</STRONG> <STRONG>*</STRONG><EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>PANEL</STRONG> <STRONG>*ceiling_panel(SCREEN</STRONG> <STRONG>*</STRONG><EM>sp</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
</PRE><H2><a name="h2-FUNCTIONS">FUNCTIONS</a></H2><PRE>
- <STRONG>new_panel(win)</STRONG>
- allocates a <STRONG>PANEL</STRONG> structure, associates it with <STRONG>win</STRONG>, places
- the panel on the top of the stack (causes it to be displayed
- above any other panel) and returns a pointer to the new panel.
-
- <STRONG>update_panels</STRONG>
- refreshes the <EM>virtual</EM> <EM>screen</EM> to reflect the relations between
- the panels in the stack, but does not call <STRONG>doupdate</STRONG> to refresh
- the <EM>physical</EM> <EM>screen</EM>. Use this function and not <STRONG>wrefresh</STRONG> or
- <STRONG>wnoutrefresh</STRONG>. <STRONG>update_panels</STRONG> may be called more than once before
- a call to <STRONG>doupdate</STRONG>, but <STRONG>doupdate</STRONG> is the function responsible for
- updating the <EM>physical</EM> <EM>screen</EM>.
-
- <STRONG>del_panel(pan)</STRONG>
- removes the given panel from the stack and deallocates the
- <STRONG>PANEL</STRONG> structure (but not its associated window).
-
- <STRONG>hide_panel(pan)</STRONG>
- removes the given panel from the panel stack and thus hides it
- from view. The <STRONG>PANEL</STRONG> structure is not lost, merely removed from
- the stack.
-
- <STRONG>panel_hidden(pan)</STRONG>
- returns <STRONG>TRUE</STRONG> if the panel is in the panel stack, <STRONG>FALSE</STRONG> if it is
- not. If the panel is a null pointer, return <STRONG>ERR</STRONG>.
-
- <STRONG>show_panel(pan)</STRONG>
- makes a hidden panel visible by placing it on top of the panels
- in the panel stack. See COMPATIBILITY below.
-
- <STRONG>top_panel(pan)</STRONG>
- puts the given visible panel on top of all panels in the stack.
- See COMPATIBILITY below.
-
- <STRONG>bottom_panel(pan)</STRONG>
- puts panel at the bottom of all panels.
-
- <STRONG>move_panel(pan,starty,startx)</STRONG>
- moves the given panel window so that its upper-left corner is at
- <STRONG>starty</STRONG>, <STRONG>startx</STRONG>. It does not change the position of the panel in
- the stack. Be sure to use this function, not <STRONG>mvwin</STRONG>, to move a
- panel window.
-
- <STRONG>replace_panel(pan,window)</STRONG>
- replaces the current window of panel with <STRONG>window</STRONG> (useful, for
- example if you want to resize a panel; if you're using <STRONG>ncurses</STRONG>,
- you can call <STRONG>replace_panel</STRONG> on the output of <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>). It
- does not change the position of the panel in the stack.
-
- <STRONG>panel_above(pan)</STRONG>
- returns a pointer to the panel above pan. If the panel argument
- is <STRONG>(PANEL</STRONG> <STRONG>*)0</STRONG>, it returns a pointer to the bottom panel in the
- stack.
-
- <STRONG>panel_below(pan)</STRONG>
- returns a pointer to the panel just below pan. If the panel
- argument is <STRONG>(PANEL</STRONG> <STRONG>*)0</STRONG>, it returns a pointer to the top panel in
- the stack.
-
- <STRONG>set_panel_userptr(pan,ptr)</STRONG>
- sets the panel's user pointer.
-
- <STRONG>panel_userptr(pan)</STRONG>
- returns the user pointer for a given panel.
-
- <STRONG>panel_window(pan)</STRONG>
- returns a pointer to the window of the given panel.
+
+</PRE><H3><a name="h3-bottom_panel">bottom_panel</a></H3><PRE>
+ <STRONG>bottom_panel(</STRONG><EM>pan</EM><STRONG>)</STRONG> puts panel <EM>pan</EM> at the bottom of all panels.
+
+
+</PRE><H3><a name="h3-ceiling_panel">ceiling_panel</a></H3><PRE>
+ <STRONG>ceiling_panel(</STRONG><EM>sp</EM><STRONG>)</STRONG> acts like <STRONG>panel_below(NULL)</STRONG>, for the given <STRONG>SCREEN</STRONG> <EM>sp</EM>.
+
+
+</PRE><H3><a name="h3-del_panel">del_panel</a></H3><PRE>
+ <STRONG>del_panel(</STRONG><EM>pan</EM><STRONG>)</STRONG> removes the given panel <EM>pan</EM> from the stack and deallo-
+ cates the <STRONG>PANEL</STRONG> structure (but not its associated window).
+
+
+</PRE><H3><a name="h3-ground_panel">ground_panel</a></H3><PRE>
+ <STRONG>ground_panel(</STRONG><EM>sp</EM><STRONG>)</STRONG> acts like <STRONG>panel_above(NULL)</STRONG>, for the given <STRONG>SCREEN</STRONG> <EM>sp</EM>.
+
+
+</PRE><H3><a name="h3-hide_panel">hide_panel</a></H3><PRE>
+ <STRONG>hide_panel(</STRONG><EM>pan</EM><STRONG>)</STRONG> removes the given panel <EM>pan</EM> from the panel stack and
+ thus hides it from view. The <STRONG>PANEL</STRONG> structure is not lost, merely
+ removed from the stack.
+
+
+</PRE><H3><a name="h3-move_panel">move_panel</a></H3><PRE>
+ <STRONG>move_panel(</STRONG><EM>pan</EM><STRONG>,</STRONG><EM>starty</EM><STRONG>,</STRONG><EM>startx</EM><STRONG>)</STRONG> moves the given panel <EM>pan</EM>'s window so
+ that its upper-left corner is at <EM>starty</EM>, <EM>startx</EM>. It does not change
+ the position of the panel in the stack. Be sure to use this function,
+ not <STRONG><A HREF="curs_window.3x.html">mvwin(3x)</A></STRONG>, to move a panel window.
+
+
+</PRE><H3><a name="h3-new_panel">new_panel</a></H3><PRE>
+ <STRONG>new_panel(</STRONG><EM>win</EM><STRONG>)</STRONG> allocates a <STRONG>PANEL</STRONG> structure, associates it with <EM>win</EM>,
+ places the panel on the top of the stack (causes it to be displayed
+ above any other panel) and returns a pointer to the new panel.
+
+
+</PRE><H3><a name="h3-panel_above">panel_above</a></H3><PRE>
+ <STRONG>panel_above(</STRONG><EM>pan</EM><STRONG>)</STRONG> returns a pointer to the panel above <EM>pan</EM>. If the
+ panel argument is <STRONG>(PANEL</STRONG> <STRONG>*)0</STRONG>, it returns a pointer to the bottom panel
+ in the stack.
+
+
+</PRE><H3><a name="h3-panel_below">panel_below</a></H3><PRE>
+ <STRONG>panel_below(</STRONG><EM>pan</EM><STRONG>)</STRONG> returns a pointer to the panel just below <EM>pan</EM>. If the
+ panel argument is <STRONG>(PANEL</STRONG> <STRONG>*)0</STRONG>, it returns a pointer to the top panel in
+ the stack.
+
+
+</PRE><H3><a name="h3-panel_hidden">panel_hidden</a></H3><PRE>
+ <STRONG>panel_hidden(</STRONG><EM>pan</EM><STRONG>)</STRONG> returns <STRONG>TRUE</STRONG> if the panel <EM>pan</EM> is in the panel stack,
+ <STRONG>FALSE</STRONG> if it is not. If the panel is a null pointer, return <STRONG>ERR</STRONG>.
+
+
+</PRE><H3><a name="h3-panel_userptr">panel_userptr</a></H3><PRE>
+ <STRONG>panel_userptr(</STRONG><EM>pan</EM><STRONG>)</STRONG> returns the user pointer for a given panel <EM>pan</EM>.
+
+
+</PRE><H3><a name="h3-panel_window">panel_window</a></H3><PRE>
+ <STRONG>panel_window(</STRONG><EM>pan</EM><STRONG>)</STRONG> returns a pointer to the window of the given panel
+ <EM>pan</EM>.
+
+
+</PRE><H3><a name="h3-replace_panel">replace_panel</a></H3><PRE>
+ <STRONG>replace_panel(</STRONG><EM>pan</EM><STRONG>,</STRONG><EM>window</EM><STRONG>)</STRONG> replaces the current window of panel <EM>pan</EM> with
+ <EM>window</EM> This is useful, for example if you want to resize a panel. In
+ <STRONG>ncurses</STRONG>, you can call <STRONG>replace_panel</STRONG> to resize a panel using a window
+ resized with <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>. It does not change the position of the panel
+ in the stack.
+
+
+</PRE><H3><a name="h3-set_panel_userptr">set_panel_userptr</a></H3><PRE>
+ <STRONG>set_panel_userptr(</STRONG><EM>pan</EM><STRONG>,</STRONG><EM>ptr</EM><STRONG>)</STRONG> sets the panel's user pointer.
+
+
+</PRE><H3><a name="h3-show_panel">show_panel</a></H3><PRE>
+ <STRONG>show_panel(</STRONG><EM>pan</EM><STRONG>)</STRONG> makes a hidden panel visible by placing it on top of
+ the panels in the panel stack. See <STRONG>COMPATIBILITY</STRONG> below.
+
+
+</PRE><H3><a name="h3-top_panel">top_panel</a></H3><PRE>
+ <STRONG>top_panel(</STRONG><EM>pan</EM><STRONG>)</STRONG> puts the given visible panel <EM>pan</EM> on top of all panels in
+ the stack. See <STRONG>COMPATIBILITY</STRONG> below.
+
+
+</PRE><H3><a name="h3-update_panels">update_panels</a></H3><PRE>
+ <STRONG>update_panels()</STRONG> refreshes the <EM>virtual</EM> <EM>screen</EM> to reflect the relations
+ between the panels in the stack, but does not call <STRONG><A HREF="curs_refresh.3x.html">doupdate(3x)</A></STRONG> to
+ refresh the <EM>physical</EM> <EM>screen</EM>. Use this function and not <STRONG><A HREF="curs_refresh.3x.html">wrefresh(3x)</A></STRONG> or
+ <STRONG><A HREF="curs_refresh.3x.html">wnoutrefresh(3x)</A></STRONG>.
+
+ <STRONG>update_panels</STRONG> may be called more than once before a call to <STRONG>doupdate</STRONG>,
+ but <STRONG>doupdate</STRONG> is the function responsible for updating the <EM>physical</EM>
+ <EM>screen</EM>.
</PRE><H2><a name="h2-DIAGNOSTICS">DIAGNOSTICS</a></H2><PRE>
Each routine that returns an int value returns <STRONG>OK</STRONG> if it executes suc-
cessfully and <STRONG>ERR</STRONG> if not.
+ Except as noted, the <EM>pan</EM> and <EM>window</EM> parameters must be non-null. If
+ those are null, an error is returned.
+
+ The <STRONG>move_panel</STRONG> function uses <STRONG><A HREF="curs_window.3x.html">mvwin(3x)</A></STRONG>, and will return an error if
+ <STRONG>mvwin</STRONG> returns an error.
+
</PRE><H2><a name="h2-COMPATIBILITY">COMPATIBILITY</a></H2><PRE>
Reasonable care has been taken to ensure compatibility with the
It is not part of X/Open Curses.
- Aside from ncurses, only systems based on SVr4 source code, e.g.,
- Solaris provide this library.
+ A few implementations exist:
+
+ <STRONG>o</STRONG> Systems based on SVr4 source code, e.g., Solaris, provide this
+ library.
+
+ <STRONG>o</STRONG> <STRONG>ncurses</STRONG> (since version 0.6 in 1993) and <STRONG>PDCurses</STRONG> (since version 2.2
+ in 1995) provide a panel library whose common ancestor was a public
+ domain implementation by Warren Tucker published in <EM>u386mon</EM> 2.20
+ (1990).
+
+ According to Tucker, the SystemV panel library was first released
+ in SVr3.2 (1988), and his implementation helped with a port to
+ SVr3.1 (1987).
+
+ Several developers have improved each of these; they are no longer
+ the same as Tucker's implementation.
+
+ <STRONG>o</STRONG> NetBSD 8 (2018) has a panel library begun by Valery Ushakov in
+ 2015. This is based on the AT&T documentation.
</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
- Originally written by Warren Tucker <wht@n4hgf.mt-park.ga.us>, primar-
- ily to assist in porting u386mon to systems without a native panels
- library. Repackaged for ncurses by Zeyd ben-Halim.
+ Originally written by Warren Tucker <wht@n4hgf.mt-park.ga.us>, primar-
+ ily to assist in porting <EM>u386mon</EM> to systems without a native panels
+ library.
+
+ Repackaged for ncurses by Zeyd ben-Halim.
+
+ Juergen Pfeifer and Thomas E. Dickey revised/improved the library.
<li><a href="#h2-NAME">NAME</a></li>
<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
-<li><a href="#h2-FUNCTIONS">FUNCTIONS</a></li>
+<li><a href="#h2-FUNCTIONS">FUNCTIONS</a>
+<ul>
+<li><a href="#h3-bottom_panel">bottom_panel</a></li>
+<li><a href="#h3-ceiling_panel">ceiling_panel</a></li>
+<li><a href="#h3-del_panel">del_panel</a></li>
+<li><a href="#h3-ground_panel">ground_panel</a></li>
+<li><a href="#h3-hide_panel">hide_panel</a></li>
+<li><a href="#h3-move_panel">move_panel</a></li>
+<li><a href="#h3-new_panel">new_panel</a></li>
+<li><a href="#h3-panel_above">panel_above</a></li>
+<li><a href="#h3-panel_below">panel_below</a></li>
+<li><a href="#h3-panel_hidden">panel_hidden</a></li>
+<li><a href="#h3-panel_userptr">panel_userptr</a></li>
+<li><a href="#h3-panel_window">panel_window</a></li>
+<li><a href="#h3-replace_panel">replace_panel</a></li>
+<li><a href="#h3-set_panel_userptr">set_panel_userptr</a></li>
+<li><a href="#h3-show_panel">show_panel</a></li>
+<li><a href="#h3-top_panel">top_panel</a></li>
+<li><a href="#h3-update_panels">update_panels</a></li>
+</ul>
+</li>
<li><a href="#h2-DIAGNOSTICS">DIAGNOSTICS</a></li>
<li><a href="#h2-COMPATIBILITY">COMPATIBILITY</a></li>
<li><a href="#h2-NOTE">NOTE</a></li>
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
have, by specifying how to perform screen operations, and by specifying
padding requirements and initialization sequences.
- This manual describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This manual describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
</PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE>
<STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
<STRONG><A HREF="term.5.html">term(5)</A></STRONG>. <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
<STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG>ter-</STRONG>
<STRONG><A HREF="terminfo.5.html">minfo(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>, <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
<STRONG>csh(1)</STRONG>, <STRONG>sh(1)</STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG>tty(4)</STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>,
<STRONG>ttys(5)</STRONG>, <STRONG>environ(7)</STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200215).
-# $Id: manhtml.aliases,v 1.14 2020/02/02 23:34:34 tom Exp $
+# $Id: manhtml.aliases,v 1.16 2020/02/15 21:02:48 tom Exp $
#***************************************************************************
# Copyright 2019,2020 Thomas E. Dickey *
# Copyright 2013,2017 Free Software Foundation, Inc. *
longname(3X) curs_termattrs(3X)
meta(3X) curs_inopts(3X)
mvcur(3X) curs_terminfo(3X)
+mvwin(3X) curs_window(3X)
newterm(3X) curs_initscr(3X)
refresh(3X) curs_refresh(3X)
reset_shell_mode(3X) curs_kernel(3X)
use_extended_names(3X) curs_extend(3X)
vidputs(3X) curs_terminfo(3X)
wgetch(3X) curs_getch(3X)
+wnoutrefresh(3X) curs_refresh(3X)
+wrefresh(3X) curs_refresh(3X)
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: panel.3x,v 1.28 2020/02/02 23:34:34 tom Exp $
+.\" $Id: panel.3x,v 1.39 2020/02/15 21:06:40 tom Exp $
.TH panel 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.ie \n(.g .ds '' \(rq
.el .ds '' ''
+.de bP
+.ie n .IP \(bu 4
+.el .IP \(bu 2
+..
.SH NAME
panel \- panel stack extension for curses
.SH SYNOPSIS
.P
\fBcc [flags] sourcefiles \-lpanel \-lncurses\fR
.P
-\fBPANEL *new_panel(WINDOW *win);\fR
+\fBPANEL *new_panel(WINDOW *\fIwin\fB);\fR
+.sp
+\fBint bottom_panel(PANEL *\fIpan\fB);\fR
.br
-\fBint bottom_panel(PANEL *pan);\fR
+\fBint top_panel(PANEL *\fIpan\fB);\fR
.br
-\fBint top_panel(PANEL *pan);\fR
-.br
-\fBint show_panel(PANEL *pan);\fR
+\fBint show_panel(PANEL *\fIpan\fB);\fR
.br
\fBvoid update_panels(void);\fR
.br
-\fBint hide_panel(PANEL *pan);\fR
-.br
-\fBWINDOW *panel_window(const PANEL *pan);\fR
+\fBint hide_panel(PANEL *\fIpan\fB);\fR
+.sp
+\fBWINDOW *panel_window(const PANEL *\fIpan\fB);\fR
.br
-\fBint replace_panel(PANEL *pan, WINDOW *window);\fR
+\fBint replace_panel(PANEL *\fIpan\fB, WINDOW *\fIwindow\fB);\fR
.br
-\fBint move_panel(PANEL *pan, int starty, int startx);\fR
+\fBint move_panel(PANEL *\fIpan\fB, int \fIstarty\fB, int \fIstartx\fB);\fR
.br
-\fBint panel_hidden(const PANEL *pan);\fR
+\fBint panel_hidden(const PANEL *\fIpan\fB);\fR
+.sp
+\fBPANEL *panel_above(const PANEL *\fIpan\fB);\fR
.br
-\fBPANEL *panel_above(const PANEL *pan);\fR
+\fBPANEL *panel_below(const PANEL *\fIpan\fB);\fR
+.sp
+\fBint set_panel_userptr(PANEL *\fIpan\fB, const void *\fIptr\fB);\fR
.br
-\fBPANEL *panel_below(const PANEL *pan);\fR
+\fBconst void *panel_userptr(const PANEL *\fIpan\fB);\fR
+.sp
+\fBint del_panel(PANEL *\fIpan\fB);\fR
+.sp
+/* ncurses-extensions */
.br
-\fBint set_panel_userptr(PANEL *pan, const void *ptr);\fR
+\fBPANEL *ground_panel(SCREEN *\fIsp\fB);\fR
.br
-\fBconst void *panel_userptr(const PANEL *pan);\fR
-.br
-\fBint del_panel(PANEL *pan);\fR
+\fBPANEL *ceiling_panel(SCREEN *\fIsp\fB);\fR
.br
.SH DESCRIPTION
Panels are \fBcurses\fR(3X) windows with the added feature of
Panel routines are a functional layer added to \fBcurses\fR(3X), make only
high-level curses calls, and work anywhere terminfo curses does.
.SH FUNCTIONS
-.TP
-.B new_panel(win)
-allocates a \fBPANEL\fR structure, associates it with
-\fBwin\fR, places the panel on the top of the stack (causes it
-to be displayed above any other panel) and returns a
-pointer to the new panel.
-.TP
-.B update_panels
-refreshes the \fIvirtual screen\fP to reflect the relations between the
-panels in the stack, but does not call \fBdoupdate\fP to refresh the
-\fIphysical screen\fP.
-Use this function and not \fBwrefresh\fP or \fBwnoutrefresh\fP.
-.B update_panels
-may be called more than once before a call to
-\fBdoupdate\fP, but \fBdoupdate\fP is the function responsible for updating
-the \fIphysical screen\fP.
-.TP
-.B del_panel(pan)
-removes the given panel from the stack and deallocates the
+.\" ---------
+.SS bottom_panel
+\fBbottom_panel(\fIpan\fB)\fR
+puts panel \fIpan\fP at the bottom of all panels.
+.\" ---------
+.SS ceiling_panel
+\fBceiling_panel(\fIsp\fB)\fR
+acts like \fBpanel_below(NULL)\fP, for the given \fBSCREEN\fP \fIsp\fP.
+.\" ---------
+.SS del_panel
+\fBdel_panel(\fIpan\fB)\fR
+removes the given panel \fIpan\fP from the stack and deallocates the
\fBPANEL\fR structure (but not its associated window).
-.TP
-.B hide_panel(pan)
-removes the given panel from the panel stack and thus hides it from
-view.
+.\" ---------
+.SS ground_panel
+\fBground_panel(\fIsp\fB)\fR
+acts like \fBpanel_above(NULL)\fP, for the given \fBSCREEN\fP \fIsp\fP.
+.\" ---------
+.SS hide_panel
+\fBhide_panel(\fIpan\fB)\fR
+removes the given panel \fIpan\fP from the panel stack
+and thus hides it from view.
The \fBPANEL\fR structure is not lost, merely removed from the stack.
-.TP
-.B panel_hidden(pan)
-returns \fBTRUE\fP if the panel is in the panel stack,
-\fBFALSE\fP if it is not.
-If the panel is a null pointer, return \fBERR\fP.
-.TP
-.B show_panel(pan)
-makes a hidden panel visible by placing it on top of the panels in the
-panel stack.
-See COMPATIBILITY below.
-.TP
-.B top_panel(pan)
-puts the given visible panel on top of all panels in the stack.
-See
-COMPATIBILITY below.
-.TP
-.B bottom_panel(pan)
-puts panel at the bottom of all panels.
-.TP
-.B move_panel(pan,starty,startx)
-moves the given panel window so that its upper-left corner is at
-\fBstarty\fR, \fBstartx\fR.
-It does not change the position of the
-panel in the stack.
-Be sure to use this function, not \fBmvwin\fR,
-to move a panel window.
-.TP
-.B replace_panel(pan,window)
-replaces the current window of panel with \fBwindow\fR (useful, for
-example if you want to resize a panel; if you're using \fBncurses\fR,
-you can call \fBreplace_panel\fR on the output of \fBwresize\fR(3X)).
+.\" ---------
+.SS move_panel
+\fBmove_panel(\fIpan\fB,\fIstarty\fB,\fIstartx\fB)\fR
+moves the given panel \fIpan\fP's window so that its upper-left corner is at
+\fIstarty\fR, \fIstartx\fR.
It does not change the position of the panel in the stack.
-.TP
-.B panel_above(pan)
-returns a pointer to the panel above pan.
+Be sure to use this function, not \fBmvwin\fR(3X), to move a panel window.
+.\" ---------
+.SS new_panel
+\fBnew_panel(\fIwin\fB)\fR allocates a \fBPANEL\fR structure,
+associates it with \fIwin\fR, places the panel on the top of the stack
+(causes it to be displayed above any other panel) and returns a
+pointer to the new panel.
+.\" ---------
+.SS panel_above
+\fBpanel_above(\fIpan\fB)\fR
+returns a pointer to the panel above \fIpan\fP.
If the panel argument is
\fB(PANEL *)0\fR, it returns a pointer to the bottom panel in the stack.
-.TP
-.B panel_below(pan)
-returns a pointer to the panel just below pan.
+.\" ---------
+.SS panel_below
+\fBpanel_below(\fIpan\fB)\fR
+returns a pointer to the panel just below \fIpan\fP.
If the panel argument
is \fB(PANEL *)0\fR, it returns a pointer to the top panel in the stack.
-.TP
-.B set_panel_userptr(pan,ptr)
+.\" ---------
+.SS panel_hidden
+\fBpanel_hidden(\fIpan\fB)\fR
+returns \fBTRUE\fP if the panel \fIpan\fP is in the panel stack,
+\fBFALSE\fP if it is not.
+If the panel is a null pointer, return \fBERR\fP.
+.\" ---------
+.SS panel_userptr
+\fBpanel_userptr(\fIpan\fB)\fR
+returns the user pointer for a given panel \fIpan\fP.
+.\" ---------
+.SS panel_window
+\fBpanel_window(\fIpan\fB)\fR
+returns a pointer to the window of the given panel \fIpan\fP.
+.\" ---------
+.SS replace_panel
+\fBreplace_panel(\fIpan\fB,\fIwindow\fB)\fR
+replaces the current window of panel \fIpan\fP with \fIwindow\fR
+This is useful, for example if you want to resize a panel.
+In \fBncurses\fR, you can call \fBreplace_panel\fR
+to resize a panel using a window resized with \fBwresize\fR(3X).
+It does not change the position of the panel in the stack.
+.\" ---------
+.SS set_panel_userptr
+\fBset_panel_userptr(\fIpan\fB,\fIptr\fB)\fR
sets the panel's user pointer.
-.TP
-.B panel_userptr(pan)
-returns the user pointer for a given panel.
-.TP
-.B panel_window(pan)
-returns a pointer to the window of the given panel.
+.\" ---------
+.SS show_panel
+\fBshow_panel(\fIpan\fB)\fR
+makes a hidden panel visible by placing it on top of the panels in the
+panel stack.
+See \fBCOMPATIBILITY\fP below.
+.\" ---------
+.SS top_panel
+\fBtop_panel(\fIpan\fB)\fR
+puts the given visible panel \fIpan\fP on top of all panels in the stack.
+See \fBCOMPATIBILITY\fP below.
+.\" ---------
+.SS update_panels
+\fBupdate_panels()\fR
+refreshes the \fIvirtual screen\fP to reflect the relations between the
+panels in the stack, but does not call \fBdoupdate\fP(3X) to refresh the
+\fIphysical screen\fP.
+Use this function and not \fBwrefresh\fP(3X) or \fBwnoutrefresh\fP(3X).
+.PP
+\fBupdate_panels\fP may be called more than once before a call to
+\fBdoupdate\fP, but \fBdoupdate\fP is the function responsible for updating
+the \fIphysical screen\fP.
.SH DIAGNOSTICS
Each routine that returns a pointer returns \fBNULL\fR if an error
occurs.
Each routine that returns an int value returns \fBOK\fR if it
executes successfully and \fBERR\fR if not.
+.PP
+Except as noted, the \fIpan\fP and \fIwindow\fP parameters must be non-null.
+If those are null, an error is returned.
+.PP
+The \fBmove_panel\fP function uses \fBmvwin\fP(3X),
+and will return an error if \fBmvwin\fP returns an error.
.SH COMPATIBILITY
Reasonable care has been taken to ensure compatibility
with the native panel facility introduced in System V (inspection of
.PP
It is not part of X/Open Curses.
.PP
-Aside from ncurses, only systems based on SVr4 source code,
-e.g., Solaris provide this library.
+A few implementations exist:
+.bP
+Systems based on SVr4 source code,
+e.g., Solaris, provide this library.
+.bP
+\fBncurses\fP (since version 0.6 in 1993)
+and \fBPDCurses\fP (since version 2.2 in 1995)
+provide a panel library whose common ancestor
+was a public domain implementation by Warren Tucker
+published in \fIu386mon\fP 2.20 (1990).
+.IP
+According to Tucker, the SystemV panel library
+was first released in SVr3.2 (1988),
+and his implementation helped with a port to SVr3.1 (1987).
+.IP
+Several developers have improved each of these;
+they are no longer the same as Tucker's implementation.
+.bP
+NetBSD 8 (2018)
+has a panel library begun by Valery Ushakov in 2015.
+This is based on the AT&T documentation.
.SH FILES
.P
panel.h
This describes \fBncurses\fR
version @NCURSES_MAJOR@.@NCURSES_MINOR@ (patch @NCURSES_PATCH@).
.SH AUTHOR
+.PP
Originally written by Warren Tucker <wht@n4hgf.mt-park.ga.us>,
-primarily to assist in porting u386mon to systems without a native
+primarily to assist in porting \fIu386mon\fP to systems without a native
panels library.
+.PP
Repackaged for ncurses by Zeyd ben-Halim.
+.PP
+Juergen Pfeifer and Thomas E. Dickey revised/improved the library.
#!@SHELL@
-# $Id: run_tic.in,v 1.37 2020/02/02 23:34:34 tom Exp $
+# $Id: run_tic.in,v 1.38 2020/02/15 15:30:53 tom Exp $
##############################################################################
# Copyright 2019,2020 Thomas E. Dickey #
# Copyright 2000-2012,2017 Free Software Foundation, Inc. #
document, and install the terminfo without the -x option.
EOF
+$TIC_PATH -V
if ( $TIC_PATH -x -s -o "$TERMINFO" $source )
then
echo "** built new $TERMINFO"
document, and install the terminfo without the -x option.
EOF
+$TIC_PATH -V
if ( $TIC_PATH -s -o "$TERMINFO" $source )
then
echo "** built new $TERMINFO"
#
# MKlib_gen.sh -- generate sources from curses.h macro definitions
#
-# ($Id: MKlib_gen.sh,v 1.63 2020/02/02 23:34:34 tom Exp $)
+# ($Id: MKlib_gen.sh,v 1.64 2020/02/15 14:58:02 tom Exp $)
#
##############################################################################
# Copyright 2018,2020 Thomas E. Dickey #
# determine if we are using gcc, and if so, what version because the proposed
# solution uses a nonstandard option.
PRG=`echo "$1" | $AWK '{ sub(/^[ ]*/,""); sub(/[ ].*$/, ""); print; }' || exit 0`
-FSF=`"$PRG" --version 2>/dev/null || exit 0 | fgrep "Free Software Foundation" | head -n 1`
+FSF=`("$PRG" --version 2>/dev/null || exit 0) | fgrep "Free Software Foundation" | head -n 1`
ALL=`"$PRG" -dumpversion 2>/dev/null || exit 0`
ONE=`echo "$ALL" | sed -e 's/\..*$//'`
if test -n "$FSF" && test -n "$ALL" && test -n "$ONE" ; then
-ncurses6 (6.2+20200212) unstable; urgency=low
+ncurses6 (6.2+20200215) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sun, 09 Feb 2020 18:35:50 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 15 Feb 2020 04:30:48 -0500
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.2+20200212) unstable; urgency=low
+ncurses6 (6.2+20200215) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sun, 09 Feb 2020 18:35:50 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 15 Feb 2020 04:30:48 -0500
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.2+20200212) unstable; urgency=low
+ncurses6 (6.2+20200215) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sun, 09 Feb 2020 18:35:50 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 15 Feb 2020 04:30:48 -0500
ncurses6 (5.9-20120608) unstable; urgency=low
-; $Id: mingw-ncurses.nsi,v 1.377 2020/02/09 23:35:50 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.378 2020/02/15 09:30:48 tom Exp $\r
\r
; TODO add examples\r
; TODO bump ABI to 6\r
!define VERSION_MAJOR "6"\r
!define VERSION_MINOR "2"\r
!define VERSION_YYYY "2020"\r
-!define VERSION_MMDD "0212"\r
+!define VERSION_MMDD "0215"\r
!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}\r
\r
!define MY_ABI "5"\r
Summary: shared libraries for terminal handling
Name: mingw32-ncurses6
Version: 6.2
-Release: 20200212
+Release: 20200215
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.2
-Release: 20200212
+Release: 20200215
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: Curses library with POSIX thread support.
Name: ncursest6
Version: 6.2
-Release: 20200212
+Release: 20200215
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz