./doc/html/man/mitem_visible.3x.html
./doc/html/man/ncurses.3x.html
./doc/html/man/ncurses6-config.1.html
+./doc/html/man/new_pair.3x.html
./doc/html/man/panel.3x.html
./doc/html/man/resizeterm.3x.html
./doc/html/man/tabs.1.html
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: NEWS,v 1.2772 2017/03/11 23:29:01 tom Exp $
+-- $Id: NEWS,v 1.2779 2017/03/18 19:17:44 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.
+20170318
+ + change TERMINAL structure in term.h to make it opaque. Some
+ applications misuse its members, e.g., directly modifying it
+ rather than using def_prog_mode().
+ + modify utility headers such as tic.h to make it clearer which are
+ externals that are used by tack.
+ + improve curs_slk.3x in particular its discussion of portability.
+ + fix cut/paste in legacy_encoding.3x
+ + add prototype for find_pair() to new_pair.3x (report by Branden
+ Robinson).
+ + fix a couple of broken links in generated man-html documentation.
+ + regenerate man-html documentation.
+
20170311
+ modify vt100 rs2 string to reset vt52 mode and scrolling regions
(report/analysis by Robert King) -TD
-5:0:9 6.0 20170311
+5:0:9 6.0 20170318
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: dist.mk,v 1.1151 2017/03/05 19:24:08 tom Exp $
+# $Id: dist.mk,v 1.1152 2017/03/12 09:25:40 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 = 0
-NCURSES_PATCH = 20170311
+NCURSES_PATCH = 20170318
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
<BODY>
<H1 class="no-header">ADACURSES 1 User Commands</H1>
<PRE>
-<STRONG><A HREF="ADACURSES.1.html">ADACURSES(1)</A></STRONG> User Commands <STRONG><A HREF="ADACURSES.1.html">ADACURSES(1)</A></STRONG>
+<STRONG>ADACURSES(1)</STRONG> User Commands <STRONG>ADACURSES(1)</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.0 (patch 20170304).
+ This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
- <STRONG><A HREF="ADACURSES.1.html">ADACURSES(1)</A></STRONG>
+ <STRONG>ADACURSES(1)</STRONG>
</PRE>
<div class="nav">
<ul>
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+ This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
</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.0 (patch 20170304).
+ This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_color.3x,v 1.46 2017/01/07 19:57:48 tom Exp @
+ * @Id: curs_color.3x,v 1.47 2017/03/13 21:49:37 tom Exp @
* .br
* .br
* .br
</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
- <STRONG>start_color</STRONG>, <STRONG>init_pair</STRONG>, <STRONG>init_color</STRONG>, <STRONG>has_colors</STRONG>,
- <STRONG>can_change_color</STRONG>, <STRONG>color_content</STRONG>, <STRONG>pair_content</STRONG>, <STRONG>COLOR_PAIR</STRONG>,
+ <STRONG>start_color</STRONG>, <STRONG>init_pair</STRONG>, <STRONG>init_color</STRONG>, <STRONG>color_content</STRONG>,
+ <STRONG>pair_content</STRONG>, <STRONG>has_colors</STRONG>, <STRONG>can_change_color</STRONG>, <STRONG>COLOR_PAIR</STRONG>,
<STRONG>PAIR_NUMBER</STRONG> - <STRONG>curses</STRONG> color manipulation routines
<STRONG>#include</STRONG> <STRONG><curses.h></STRONG>
<STRONG>int</STRONG> <STRONG>start_color(void);</STRONG>
+
<STRONG>int</STRONG> <STRONG>init_pair(short</STRONG> <STRONG>pair,</STRONG> <STRONG>short</STRONG> <STRONG>f,</STRONG> <STRONG>short</STRONG> <STRONG>b);</STRONG>
<STRONG>int</STRONG> <STRONG>init_color(short</STRONG> <STRONG>color,</STRONG> <STRONG>short</STRONG> <STRONG>r,</STRONG> <STRONG>short</STRONG> <STRONG>g,</STRONG> <STRONG>short</STRONG> <STRONG>b);</STRONG>
- <STRONG>bool</STRONG> <STRONG>has_colors(void);</STRONG>
- <STRONG>bool</STRONG> <STRONG>can_change_color(void);</STRONG>
-
<STRONG>int</STRONG> <STRONG>color_content(short</STRONG> <STRONG>color,</STRONG> <STRONG>short</STRONG> <STRONG>*r,</STRONG> <STRONG>short</STRONG> <STRONG>*g,</STRONG> <STRONG>short</STRONG>
<STRONG>*b);</STRONG>
<STRONG>int</STRONG> <STRONG>pair_content(short</STRONG> <STRONG>pair,</STRONG> <STRONG>short</STRONG> <STRONG>*f,</STRONG> <STRONG>short</STRONG> <STRONG>*b);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>has_colors(void);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>can_change_color(void);</STRONG>
+
<STRONG>int</STRONG> <STRONG>COLOR_PAIR(int</STRONG> <STRONG>n);</STRONG>
<STRONG>PAIR_NUMBER(</STRONG><EM>attrs</EM><STRONG>);</STRONG>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2016 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_slk.3x,v 1.23 2016/10/15 17:02:31 tom Exp @
+ * @Id: curs_slk.3x,v 1.29 2017/03/18 01:00:30 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<STRONG>#include</STRONG> <STRONG><curses.h></STRONG>
<STRONG>int</STRONG> <STRONG>slk_init(int</STRONG> <STRONG>fmt);</STRONG>
+
<STRONG>int</STRONG> <STRONG>slk_set(int</STRONG> <STRONG>labnum,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*label,</STRONG> <STRONG>int</STRONG> <STRONG>fmt);</STRONG>
+ <STRONG>int</STRONG> <STRONG>slk_wset(int</STRONG> <STRONG>labnum,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*label,</STRONG> <STRONG>int</STRONG> <STRONG>fmt);</STRONG>
+
+ <STRONG>char</STRONG> <STRONG>*slk_label(int</STRONG> <STRONG>labnum);</STRONG>
+
<STRONG>int</STRONG> <STRONG>slk_refresh(void);</STRONG>
<STRONG>int</STRONG> <STRONG>slk_noutrefresh(void);</STRONG>
- <STRONG>char</STRONG> <STRONG>*slk_label(int</STRONG> <STRONG>labnum);</STRONG>
<STRONG>int</STRONG> <STRONG>slk_clear(void);</STRONG>
<STRONG>int</STRONG> <STRONG>slk_restore(void);</STRONG>
<STRONG>int</STRONG> <STRONG>slk_touch(void);</STRONG>
+
<STRONG>int</STRONG> <STRONG>slk_attron(const</STRONG> <STRONG>chtype</STRONG> <STRONG>attrs);</STRONG>
<STRONG>int</STRONG> <STRONG>slk_attroff(const</STRONG> <STRONG>chtype</STRONG> <STRONG>attrs);</STRONG>
<STRONG>int</STRONG> <STRONG>slk_attrset(const</STRONG> <STRONG>chtype</STRONG> <STRONG>attrs);</STRONG>
<STRONG>int</STRONG> <STRONG>slk_attr_on(attr_t</STRONG> <STRONG>attrs,</STRONG> <STRONG>void*</STRONG> <STRONG>opts);</STRONG>
<STRONG>int</STRONG> <STRONG>slk_attr_off(const</STRONG> <STRONG>attr_t</STRONG> <STRONG>attrs,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG> <STRONG>opts);</STRONG>
- <STRONG>int</STRONG> <STRONG>slk_attr_set(const</STRONG> <STRONG>attr_t</STRONG> <STRONG>attrs,</STRONG> <STRONG>short</STRONG> <STRONG>color_pair,</STRONG>
- <STRONG>void*</STRONG> <STRONG>opts);</STRONG>
+ <STRONG>int</STRONG> <STRONG>slk_attr_set(const</STRONG> <STRONG>attr_t</STRONG> <STRONG>attrs,</STRONG> <STRONG>short</STRONG> <STRONG>pair,</STRONG> <STRONG>void*</STRONG>
+ <STRONG>opts);</STRONG>
+
<STRONG>attr_t</STRONG> <STRONG>slk_attr(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>slk_color(short</STRONG> <STRONG>color_pair);</STRONG>
- <STRONG>int</STRONG> <STRONG>slk_wset(int</STRONG> <STRONG>labnum,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*label,</STRONG> <STRONG>int</STRONG> <STRONG>fmt);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>slk_color(short</STRONG> <STRONG>pair);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
eight characters each. In addition to this, the ncurses
implementation supports a mode where it simulates 12 la-
bels of up to five characters each. This is useful for
- today's PC-like enduser devices. ncurses simulates this
- mode by taking over up to two lines at the bottom of the
- screen; it does not try to use any hardware support for
- this mode.
+ PC-like enduser devices. ncurses simulates this mode by
+ taking over up to two lines at the bottom of the screen;
+ it does not try to use any hardware support for this mode.
- The <STRONG>slk_init</STRONG> routine must be called before <STRONG>initscr</STRONG> or
+
+</PRE><H3><a name="h3-Initialization">Initialization</a></H3><PRE>
+ The <STRONG>slk_init</STRONG> routine must be called before <STRONG>initscr</STRONG> or
<STRONG>newterm</STRONG> is called. If <STRONG>initscr</STRONG> eventually uses a line from
<STRONG>stdscr</STRONG> to emulate the soft labels, then <EM>fmt</EM> determines how
the labels are arranged on the screen:
- <STRONG>0</STRONG> indicates a 3-2-3 arrangement of the labels.
+ <STRONG>0</STRONG> indicates a 3-2-3 arrangement of the labels.
+
+ <STRONG>1</STRONG> indicates a 4-4 arrangement
- <STRONG>1</STRONG> indicates a 4-4 arrangement
+ <STRONG>2</STRONG> indicates the PC-like 4-4-4 mode.
- <STRONG>2</STRONG> indicates the PC-like 4-4-4 mode.
+ <STRONG>3</STRONG> is again the PC-like 4-4-4 mode, but in addition an
+ index line is generated, helping the user to identi-
+ fy the key numbers easily.
- <STRONG>3</STRONG> is again the PC-like 4-4-4 mode, but in addition
- an index line is generated, helping the user to
- identify the key numbers easily.
- The <STRONG>slk_set</STRONG> routine (and the <STRONG>slk_wset</STRONG> routine for the
+</PRE><H3><a name="h3-Labels">Labels</a></H3><PRE>
+ The <STRONG>slk_set</STRONG> routine (and the <STRONG>slk_wset</STRONG> routine for the
wide-character library) has three parameters:
- <EM>labnum</EM>
- is the label number, from <STRONG>1</STRONG> to <STRONG>8</STRONG> (12 for <EM>fmt</EM>
- in <STRONG>slk_init</STRONG> is <STRONG>2</STRONG> or <STRONG>3</STRONG>);
+ <EM>labnum</EM>
+ is the label number, from <STRONG>1</STRONG> to <STRONG>8</STRONG> (12 for <EM>fmt</EM> in
+ <STRONG>slk_init</STRONG> is <STRONG>2</STRONG> or <STRONG>3</STRONG>);
+
+ <EM>label</EM>
+ is be the string to put on the label, up to eight
+ (five for <EM>fmt</EM> in <STRONG>slk_init</STRONG> is <STRONG>2</STRONG> or <STRONG>3</STRONG>) characters in
+ length. A null string or a null pointer sets up a
+ blank label.
- <EM>label</EM>
- is be the string to put on the label, up to
- eight (five for <EM>fmt</EM> in <STRONG>slk_init</STRONG> is <STRONG>2</STRONG> or <STRONG>3</STRONG>)
- characters in length. A null string or a null
- pointer sets up a blank label.
+ <EM>fmt</EM> is either <STRONG>0</STRONG>, <STRONG>1</STRONG>, or <STRONG>2</STRONG>, indicating whether the label
+ is to be left-justified, centered, or right-justi-
+ fied, respectively, within the label.
+
+ The <STRONG>slk_label</STRONG> routine returns the current label for label
+ number <EM>labnum</EM>, with leading and trailing blanks stripped.
- <EM>fmt</EM> is either <STRONG>0</STRONG>, <STRONG>1</STRONG>, or <STRONG>2</STRONG>, indicating whether the
- label is to be left-justified, centered, or
- right-justified, respectively, within the la-
- bel.
+</PRE><H3><a name="h3-Screen-updates">Screen updates</a></H3><PRE>
The <STRONG>slk_refresh</STRONG> and <STRONG>slk_noutrefresh</STRONG> routines correspond to
the <STRONG>wrefresh</STRONG> and <STRONG>wnoutrefresh</STRONG> routines.
- The <STRONG>slk_label</STRONG> routine returns the current label for label
- number <EM>labnum</EM>, with leading and trailing blanks stripped.
-
The <STRONG>slk_clear</STRONG> routine clears the soft labels from the
screen.
The <STRONG>slk_touch</STRONG> routine forces all the soft labels to be
output the next time a <STRONG>slk_noutrefresh</STRONG> is performed.
+
+</PRE><H3><a name="h3-Video-attributes">Video attributes</a></H3><PRE>
The <STRONG>slk_attron</STRONG>, <STRONG>slk_attrset</STRONG>, <STRONG>slk_attroff</STRONG> and <STRONG>slk_attr</STRONG> rou-
tines correspond to <STRONG>attron</STRONG>, <STRONG>attrset</STRONG>, <STRONG>attroff</STRONG> and <STRONG>attr_get</STRONG>.
They have an effect only if soft labels are simulated on
soft keys is A_STANDOUT (as in System V curses, which does
not document this fact).
+
+</PRE><H3><a name="h3-Colors">Colors</a></H3><PRE>
The <STRONG>slk_color</STRONG> routine corresponds to <STRONG>color_set</STRONG>. It has an
effect only if soft labels are simulated on the bottom
line of the screen.
X/Open defines no error conditions. In this implementa-
tion
- <STRONG>slk_attr</STRONG>
- returns the attribute used for the soft keys.
+ <STRONG>slk_attr</STRONG>
+ returns the attribute used for the soft keys.
- <STRONG>slk_attroff</STRONG>, <STRONG>slk_attron</STRONG>, <STRONG>slk_clear</STRONG>,
- <STRONG>slk_noutrefresh</STRONG>, <STRONG>slk_refresh</STRONG>, <STRONG>slk_touch</STRONG>
- return an error if the terminal or the soft-
- keys were not initialized.
+ <STRONG>slk_attroff</STRONG>, <STRONG>slk_attron</STRONG>, <STRONG>slk_clear</STRONG>, <STRONG>slk_noutrefresh</STRONG>,
+ <STRONG>slk_refresh</STRONG>, <STRONG>slk_touch</STRONG>
+ return an error if the terminal or the softkeys
+ were not initialized.
- <STRONG>slk_attrset</STRONG>
- returns an error if the terminal or the soft-
- keys were not initialized.
+ <STRONG>slk_attrset</STRONG>
+ returns an error if the terminal or the softkeys
+ were not initialized.
- <STRONG>slk_attr_set</STRONG>
- returns an error if the terminal or the soft-
- keys were not initialized, or the color pair
- is outside the range 0..COLOR_PAIRS-1, or opts
- is not null.
+ <STRONG>slk_attr_set</STRONG>
+ returns an error if the terminal or the softkeys
+ were not initialized, or the color pair is outside
+ the range 0..COLOR_PAIRS-1, or opts is not null.
- <STRONG>slk_color</STRONG>
- returns an error if the terminal or the soft-
- keys were not initialized, or the color pair
- is outside the range 0..COLOR_PAIRS-1.
+ <STRONG>slk_color</STRONG>
+ returns an error if the terminal or the softkeys
+ were not initialized, or the color pair is outside
+ the range 0..COLOR_PAIRS-1.
- <STRONG>slk_init</STRONG>
- returns an error if the format parameter is
- outside the range 0..3.
+ <STRONG>slk_init</STRONG>
+ returns an error if the format parameter is out-
+ side the range 0..3.
- <STRONG>slk_label</STRONG>
- returns <STRONG>NULL</STRONG> on error.
+ <STRONG>slk_label</STRONG>
+ returns <STRONG>NULL</STRONG> on error.
- <STRONG>slk_set</STRONG>
- returns an error if the terminal or the soft-
- keys were not initialized, or the <EM>labnum</EM> pa-
- rameter is outside the range of label counts,
- or if the format parameter is outside the
- range 0..2, or if memory for the labels cannot
- be allocated.
+ <STRONG>slk_set</STRONG>
+ returns an error if the terminal or the softkeys
+ were not initialized, or the <EM>labnum</EM> parameter is
+ outside the range of label counts, or if the for-
+ mat parameter is outside the range 0..2, or if
+ memory for the labels cannot be allocated.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- The XSI Curses standard, Issue 4, describes these func-
- tions. It changes the argument type of the attribute-ma-
- nipulation functions <STRONG>slk_attron</STRONG>, <STRONG>slk_attroff</STRONG>, <STRONG>slk_attrset</STRONG>
- to be <STRONG>attr_t</STRONG>, and adds <STRONG>const</STRONG> qualifiers. The format codes
- <STRONG>2</STRONG> and <STRONG>3</STRONG> for <STRONG>slk_init</STRONG> and the function <STRONG>slk_attr</STRONG> are specif-
- ic to ncurses.
+ The XSI Curses standard, Issue 4, described the soft-key
+ functions, with some differences from SVr4 curses:
+
+ <STRONG>o</STRONG> It added functions like the SVr4 the attribute-manipu-
+ lation functions <STRONG>slk_attron</STRONG>, <STRONG>slk_attroff</STRONG>, <STRONG>slk_attrset</STRONG>
+ which use <STRONG>attr_t</STRONG> parameters, along with a reserved
+ <EM>opts</EM> parameter.
+
+ One of these new functions (<STRONG>slk_attr_set</STRONG>) also has a
+ color-pair parameter.
+
+ <STRONG>o</STRONG> It added <STRONG>const</STRONG> qualifiers to parameters (unnecessari-
+ ly), and
+
+ <STRONG>o</STRONG> It added <STRONG>slk_color</STRONG>.
+
+ The format codes <STRONG>2</STRONG> and <STRONG>3</STRONG> for <STRONG>slk_init</STRONG> and the function
+ <STRONG>slk_attr</STRONG> are specific to ncurses.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<ul>
<li><a href="#h2-NAME">NAME</a></li>
<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
-<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
+<li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
+<ul>
+<li><a href="#h3-Initialization">Initialization</a></li>
+<li><a href="#h3-Labels">Labels</a></li>
+<li><a href="#h3-Screen-updates">Screen updates</a></li>
+<li><a href="#h3-Video-attributes">Video attributes</a></li>
+<li><a href="#h3-Colors">Colors</a></li>
+</ul>
+</li>
<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
<li><a href="#h2-NOTES">NOTES</a></li>
<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "form_" for
detailed descriptions of the entry points.
- This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+ This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
http://invisible-island.net/ncurses/tctest.html
- This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+ This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
</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.0 (patch 20170304).
+ This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
<!--
****************************************************************************
- * Copyright (c) 2005-2010,2016 Free Software Foundation, Inc. *
+ * Copyright (c) 2005-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
* authorization. *
****************************************************************************
* Author: Thomas E. Dickey
- * @Id: legacy_coding.3x,v 1.5 2016/10/15 17:02:31 tom Exp @
+ * @Id: legacy_coding.3x,v 1.6 2017/03/15 08:14:25 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
- <STRONG>use_legacy_coding</STRONG> - use terminal's default colors
+ <STRONG>use_legacy_coding</STRONG> - override locale-encoding checks
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</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.0 (patch 20170304).
+ This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: ncurses.3x,v 1.129 2017/02/18 16:50:46 tom Exp @
+ * @Id: ncurses.3x,v 1.130 2017/03/09 10:21:11 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
sonable optimization. This implementation is "new curses"
(ncurses) and is the approved replacement for 4.4BSD clas-
sic curses, which has been discontinued. This describes
- <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+ <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
The <STRONG>ncurses</STRONG> library emulates the curses library of System
V Release 4 UNIX, and XPG4 (X/Open Portability Guide)
addnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
addstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
addwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
+ alloc_pair <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>*
assume_default_colors <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
attr_get <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
attr_off <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
erasechar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
erasewchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
filter <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
+ find_pair <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>*
flash <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
flushinp <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
+
+ free_pair <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>*
get_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
get_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
-
getattrs <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
getbegx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
getbegy <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
is_keypad <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
is_leaveok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
is_linetouched <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
+
is_nodelay <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
is_notimeout <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
is_pad <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
-
is_scrollok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
is_subwin <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
is_syncok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
mvinwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
mvprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
mvscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
+
mvvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
mvvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
mvwadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
-
mvwadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
mvwadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
mvwaddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
printw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
putp <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
putwin <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
+
qiflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
raw <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
redrawwin <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
-
refresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
reset_prog_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
reset_shell_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
touchline <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
touchwin <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
tparm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
+
tputs <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
tputs <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
trace <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
-
typeahead <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
unctrl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
unget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
wgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
wgetdelay <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
wgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
+
wgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
wgetparent <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
wgetscrreg <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
-
wgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
whline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
whline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(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.0 (patch 20170304).
+ This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
--- /dev/null
+<!--
+ ****************************************************************************
+ * Copyright (c) 2017 Free Software Foundation, Inc. *
+ * *
+ * Permission is hereby granted, free of charge, to any person obtaining a *
+ * copy of this software and associated documentation files (the *
+ * "Software"), to deal in the Software without restriction, including *
+ * without limitation the rights to use, copy, modify, merge, publish, *
+ * distribute, distribute with modifications, sublicense, and/or sell *
+ * copies of the Software, and to permit persons to whom the Software is *
+ * furnished to do so, subject to the following conditions: *
+ * *
+ * The above copyright notice and this permission notice shall be included *
+ * in all copies or substantial portions of the Software. *
+ * *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+ * *
+ * Except as contained in this notice, the name(s) of the above copyright *
+ * holders shall not be used in advertising or otherwise to promote the *
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************
+ * Author: Thomas E. Dickey
+ * @Id: new_pair.3x,v 1.9 2017/03/13 21:21:34 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 http://invisible-island.net/scripts/readme.html#others_scripts">
+<TITLE>new_pair 3x</TITLE>
+<link rev=made href="mailto:bug-ncurses@gnu.org">
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+</HEAD>
+<BODY>
+<H1 class="no-header">new_pair 3x</H1>
+<PRE>
+<STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG> <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>
+
+
+
+
+</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
+ <STRONG>alloc_pair</STRONG>, <STRONG>find_pair</STRONG>, <STRONG>free_pair</STRONG> - new curses color-pair
+ functions
+
+
+</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
+ <STRONG>#include</STRONG> <STRONG><curses.h></STRONG>
+
+ <STRONG>int</STRONG> <STRONG>alloc_pair(int</STRONG> <STRONG>fg,</STRONG> <STRONG>int</STRONG> <STRONG>bg);</STRONG>
+ <STRONG>int</STRONG> <STRONG>find_pair(int</STRONG> <STRONG>fg,</STRONG> <STRONG>int</STRONG> <STRONG>bg);</STRONG>
+ <STRONG>int</STRONG> <STRONG>free_pair(int</STRONG> <STRONG>pair);</STRONG>
+
+
+</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
+ These functions are an extension to the curses library.
+ They permit an application to dynamically allocate a color
+ pair using the foreground/background colors rather than
+ assign a fixed color pair number, and return an unused
+ pair to the pool.
+
+ The number of colors may be related to the number of pos-
+ sible color pairs for a given terminal, or it may not:
+
+ <STRONG>o</STRONG> While almost all terminals allow setting the color
+ <EM>attributes</EM> independently, it is unlikely that your
+ terminal allows you to modify the attributes of a
+ given character cell without rewriting it. That is,
+ the foreground and background colors are applied as a
+ pair.
+
+ <STRONG>o</STRONG> Color pairs are the curses library's way of managing a
+ color palette on a terminal. If the library does not
+ keep track of the <EM>combinations</EM> of colors which are
+ displayed, it will be inefficient.
+
+ <STRONG>o</STRONG> For simple terminal emulators with only a few dozen
+ color combinations, it is convenient to use the maxi-
+ mum number of combinations as the limit on color
+ pairs:
+
+ <STRONG>COLORS</STRONG> <EM>*</EM> <STRONG>COLORS</STRONG>
+
+ <STRONG>o</STRONG> Terminals which support <EM>default</EM> <EM>colors</EM> distinct from
+ "ANSI colors" add to the possible combinations, pro-
+ ducing this total:
+
+ <EM>(</EM> <STRONG>COLORS</STRONG> <EM>+</EM> <EM>1</EM> <EM>)</EM> <EM>*</EM> <EM>(</EM> <STRONG>COLORS</STRONG> <EM>+</EM> <EM>1</EM> <EM>)</EM>
+
+ <STRONG>o</STRONG> An application might use up to a few dozen color pairs
+ to implement a predefined color scheme.
+
+ Beyond that lies in the realm of programs using the
+ foreground and background colors for "ASCII art" (or
+ some other non-textual application).
+
+ Also beyond those few dozen pairs, the required size
+ for a table to represent the combinations grows
+ rapidly with an increasing number of colors.
+
+ These functions allow a developer to let the screen
+ library manage color pairs.
+
+
+</PRE><H3><a name="h3-alloc_pair">alloc_pair</a></H3><PRE>
+ The <STRONG>alloc_pair</STRONG> function accepts parameters for foreground
+ and background color, and checks if that color combination
+ is already associated with a color pair.
+
+ <STRONG>o</STRONG> If the combination already exists, <STRONG>alloc_pair</STRONG> returns
+ the existing pair.
+
+ <STRONG>o</STRONG> If the combination does not exist, <STRONG>alloc_pair</STRONG> allo-
+ cates a new color pair and returns that.
+
+ <STRONG>o</STRONG> If the table fills up, <STRONG>alloc_pair</STRONG> discards the least-
+ recently allocated entry using <STRONG>free_pair</STRONG> and allocates
+ a new color pair.
+
+ All of the color pairs are allocated from a table of pos-
+ sible color pairs. The size of the table is determined by
+ the terminfo <EM>pairs</EM> capability. The table is shared with
+ <STRONG>init_pair</STRONG>; in fact <STRONG>alloc_pair</STRONG> calls <STRONG>init_pair</STRONG> after updat-
+ ing the ncurses library's fast index to the colors versus
+ color pairs.
+
+
+</PRE><H3><a name="h3-find_pair">find_pair</a></H3><PRE>
+ The <STRONG>find_pair</STRONG> function accepts parameters for foreground
+ and background color, and checks if that color combination
+ is already associated with a color pair, returning the
+ pair number if it has been allocated. Otherwise it
+ returns -1.
+
+
+</PRE><H3><a name="h3-free_pair">free_pair</a></H3><PRE>
+ Marks the given color pair as unused, i.e., like color
+ pair 0.
+
+
+</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
+ The <STRONG>alloc_pair</STRONG> function returns a color pair number in the
+ range 1 through <STRONG>COLOR_PAIRS</STRONG>-1, unless it encounters an
+ error updating its fast index to the color pair values,
+ preventing it from allocating a color pair. In that case,
+ it returns -1.
+
+ The <STRONG>find_pair</STRONG> function returns a color pair number if the
+ given color combination has been associated with a color
+ pair, or -1 if not.
+
+ Likewise, <STRONG>free_pair</STRONG> returns <STRONG>OK</STRONG> unless it encounters an
+ error updating the fast index or if no such color pair is
+ in use.
+
+
+</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
+ These routines are specific to ncurses. They were not
+ supported on Version 7, BSD or System V implementations.
+ It is recommended that any code depending on them be con-
+ ditioned using NCURSES_VERSION.
+
+
+</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
+ <STRONG><A HREF="init_pair.3x.html">init_pair(3x)</A></STRONG>.
+
+
+</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
+ Thomas Dickey.
+
+
+
+ <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>
+</PRE>
+<div class="nav">
+<ul>
+<li><a href="#h2-NAME">NAME</a></li>
+<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
+<li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
+<ul>
+<li><a href="#h3-alloc_pair">alloc_pair</a></li>
+<li><a href="#h3-find_pair">find_pair</a></li>
+<li><a href="#h3-free_pair">free_pair</a></li>
+</ul>
+</li>
+<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
+<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
+<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
+<li><a href="#h2-AUTHOR">AUTHOR</a></li>
+</ul>
+</div>
+</BODY>
+</HTML>
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
- This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+ This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
</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="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+ This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: terminfo.head,v 1.30 2017/03/05 00:24:35 tom Exp @
+ * @Id: terminfo.head,v 1.31 2017/03/06 09:58:14 tom Exp @
* Head of terminfo man page ends here
* @Id: terminfo.tail,v 1.78 2017/03/04 23:52:35 tom Exp @
* Beginning of terminfo.tail file
nals by giving a set of capabilities which they have, by
specifying how to perform screen operations, and by speci-
fying padding requirements and initialization sequences.
- This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+ This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
</PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE>
be used for formatting entries for readability. These
are removed from parsed entries.
- The <STRONG>infocmp</STRONG> <STRONG>-f</STRONG> and <STRONG>-W</STRONG> options relies on this to format
+ The <STRONG>infocmp</STRONG> <STRONG>-f</STRONG> and <STRONG>-W</STRONG> options rely on this to format
if-then-else expressions, or to enforce maximum line-
width. The resulting formatted terminal description
can be read by <STRONG>tic</STRONG>.
The first name given is the most common abbreviation
for the terminal (its primary name), the last name
given should be a long name fully identifying the ter-
- minal (see <STRONG><A HREF="longname.3x.html">longname(3x)</A></STRONG>), and all others are treated
+ minal (see <STRONG><A HREF="curs_termattrs.3x.html">longname(3x)</A></STRONG>), and all others are treated
as synonyms (aliases) for the primary terminal name.
X/Open Curses advises that all names but the last
<STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>,
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="term.5.html">term(5)</A></STRONG>. <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+ This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
</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><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+ This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
<STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>, <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>,
<STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+ This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
<STRONG>csh(1)</STRONG>, <STRONG>sh(1)</STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG>tty(4)</STRONG>,
<STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG>ttys(5)</STRONG>, <STRONG>environ(7)</STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+ This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
# vile:awkmode
BEGIN {
print "/****************************************************************************"
- print " * Copyright (c) 1998-2011,2013 Free Software Foundation, Inc. *"
+ print " * Copyright (c) 1998-2013,2017 Free Software Foundation, Inc. *"
print " * *"
print " * Permission is hereby granted, free of charge, to any person obtaining a *"
print " * copy of this software and associated documentation files (the *"
print "/* and: Thomas E. Dickey 1995-on */"
print "/****************************************************************************/"
print ""
- print "/* $Id: MKterm.h.awk.in,v 1.62 2013/08/17 19:21:56 tom Exp $ */"
+ print "/* $Id: MKterm.h.awk.in,v 1.65 2017/03/18 20:05:53 tom Exp $ */"
print ""
print "/*"
print "** term.h -- Definition of struct term"
print ""
print "#define NAMESIZE 256"
print ""
- print "#define CUR cur_term->type."
+ print "/* The cast works because TERMTYPE is the first data in TERMINAL */"
+ print "#define CUR ((TERMTYPE *)(cur_term))->"
print ""
}
print ""
print "} TERMTYPE;"
print ""
+ print "/*"
+ print " * The only reason these structures are visible is for read-only use."
+ print " * Programs which modify the data are not, never were, portable across"
+ print " * curses implementations."
+ print " */"
+ print "#ifdef NCURSES_INTERNALS"
print "typedef struct term { /* describe an actual terminal */"
print " TERMTYPE type; /* terminal type description */"
print " short Filedes; /* file description being written to */"
- print " TTY Ottyb, /* original state of the terminal */"
- print " Nttyb; /* current state of the terminal */"
+ print " TTY Ottyb; /* original state of the terminal */"
+ print " TTY Nttyb; /* current state of the terminal */"
print " int _baudrate; /* used to compute padding */"
- print " char * _termname; /* used for termname() */"
+ print " char * _termname; /* used for termname() */"
print "} TERMINAL;"
+ print "#else"
+ print "typedef struct term TERMINAL;"
+ print "#endif /* NCURSES_INTERNALS */"
+ print ""
print ""
print "#if @BROKEN_LINKER@ && !@cf_cv_enable_reentrant@"
print "extern NCURSES_EXPORT_VAR(TERMINAL *) cur_term;"
print ""
print "#endif"
print ""
- print "/* internals */"
+ print "/*"
+ print " * These entrypoints are used only by the ncurses utilities such as tic."
+ print " */"
+ print "#ifdef NCURSES_INTERNALS"
+ print ""
print "extern NCURSES_EXPORT(int) _nc_set_tty_mode (TTY *buf);"
- print "extern NCURSES_EXPORT(int) _nc_get_tty_mode (TTY *buf);"
- print "extern NCURSES_EXPORT(int) _nc_read_entry (const char * const, char * const, TERMTYPE *const);"
print "extern NCURSES_EXPORT(int) _nc_read_file_entry (const char *const, TERMTYPE *);"
print "extern NCURSES_EXPORT(void) _nc_init_termtype (TERMTYPE *const);"
print "extern NCURSES_EXPORT(int) _nc_read_termtype (TERMTYPE *, char *, int);"
print "extern NCURSES_EXPORT(char *) _nc_first_name (const char *const);"
print "extern NCURSES_EXPORT(int) _nc_name_match (const char *const, const char *const, const char *const);"
+ print ""
+ print "#endif /* NCURSES_INTERNALS */"
+ print ""
+ print ""
+ print "/*"
+ print " * These entrypoints are used by tack."
+ print " */"
print "extern NCURSES_EXPORT(const TERMTYPE *) _nc_fallback (const char *);"
+ print "extern NCURSES_EXPORT(int) _nc_read_entry (const char * const, char * const, TERMTYPE *const);"
print ""
- print "/* entry points */"
+ print "/* Normal entry points */"
print "extern NCURSES_EXPORT(TERMINAL *) set_curterm (TERMINAL *);"
print "extern NCURSES_EXPORT(int) del_curterm (TERMINAL *);"
print ""
/****************************************************************************
- * Copyright (c) 1998-2014,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
* and: Thomas E. Dickey 1998-on *
****************************************************************************/
-/* $Id: term_entry.h,v 1.47 2015/08/30 00:41:20 tom Exp $ */
+/* $Id: term_entry.h,v 1.49 2017/03/18 18:52:12 tom Exp $ */
/*
* term_entry.h -- interface to entry-manipulation code
_nc_warning(#p " but no " #q); \
}
+/*
+ * These entrypoints are used only by the ncurses utilities such as tic.
+ */
+#ifdef NCURSES_INTERNALS
+
/* alloc_entry.c: elementary allocation code */
extern NCURSES_EXPORT(ENTRY *) _nc_copy_entry (ENTRY *oldp);
extern NCURSES_EXPORT(char *) _nc_save_str (const char *const);
/* alloc_ttype.c: elementary allocation code */
extern NCURSES_EXPORT(void) _nc_align_termtype (TERMTYPE *, TERMTYPE *);
-extern NCURSES_EXPORT(void) _nc_copy_termtype (TERMTYPE *, const TERMTYPE *);
-
-/* free_ttype.c: elementary allocation code */
-extern NCURSES_EXPORT(void) _nc_free_termtype (TERMTYPE *);
-
-/* lib_acs.c */
-extern NCURSES_EXPORT(void) _nc_init_acs (void); /* corresponds to traditional 'init_acs()' */
/* lib_termcap.c: trim sgr0 string for termcap users */
extern NCURSES_EXPORT(char *) _nc_trim_sgr0 (TERMTYPE *);
/* trace_xnames.c */
extern NCURSES_EXPORT(void) _nc_trace_xnames (TERMTYPE *);
+
+#endif /* NCURSES_INTERNALS */
+
+/*
+ * These entrypoints are used by tack.
+ */
+
+/* alloc_ttype.c: elementary allocation code */
+extern NCURSES_EXPORT(void) _nc_copy_termtype (TERMTYPE *, const TERMTYPE *);
+
+/* lib_acs.c */
+extern NCURSES_EXPORT(void) _nc_init_acs (void); /* corresponds to traditional 'init_acs()' */
+
+/* free_ttype.c: elementary allocation code */
+extern NCURSES_EXPORT(void) _nc_free_termtype (TERMTYPE *);
+
/* *INDENT-ON* */
#ifdef __cplusplus
****************************************************************************/
/*
- * $Id: tic.h,v 1.70 2017/02/04 01:48:53 tom Exp $
- * tic.h - Global variables and structures for the terminfo
- * compiler.
+ * $Id: tic.h,v 1.73 2017/03/18 17:14:19 tom Exp $
+ * tic.h - Global variables and structures for the terminfo compiler.
*/
#ifndef __TIC_H
#define DEBUG(n, a) /*nothing*/
#endif
-extern NCURSES_EXPORT_VAR(unsigned) _nc_tracing;
-extern NCURSES_EXPORT(void) _nc_tracef (char *, ...) GCC_PRINTFLIKE(1,2);
-extern NCURSES_EXPORT(const char *) _nc_visbuf (const char *);
-extern NCURSES_EXPORT(const char *) _nc_visbuf2 (int, const char *);
-
/*
* These are the types of tokens returned by the scanner. The first
* three are also used in the hash table of capability names. The scanner
#define NO_PUSHBACK -1 /* used in pushtype to indicate no pushback */
- /*
- * The global structure in which the specific parts of a
- * scanned token are returned.
- *
- */
+/*
+ * The global structure in which the specific parts of a
+ * scanned token are returned.
+ */
struct token
{
- char *tk_name; /* name of capability */
+ char *tk_name; /* name of capability */
int tk_valnumber; /* value of capability (if a number) */
char *tk_valstring; /* value of capability (if a string) */
};
-extern NCURSES_EXPORT_VAR(struct token) _nc_curr_token;
-
- /*
- * Offsets to string capabilities, with the corresponding functionkey
- * codes.
- */
+/*
+ * Offsets to string capabilities, with the corresponding functionkey codes.
+ */
struct tinfo_fkeys {
unsigned offset;
chtype code;
};
-#if BROKEN_LINKER
-
-#define _nc_tinfo_fkeys _nc_tinfo_fkeysf()
-extern NCURSES_EXPORT(const struct tinfo_fkeys *) _nc_tinfo_fkeysf (void);
-
-#else
-
-extern NCURSES_EXPORT_VAR(const struct tinfo_fkeys) _nc_tinfo_fkeys[];
-
-#endif
-
typedef short HashValue;
- /*
- * The file comp_captab.c contains an array of these structures, one
- * per possible capability. These are indexed by a hash table array of
- * pointers to the same structures for use by the parser.
- */
-
+/*
+ * The file comp_captab.c contains an array of these structures, one per
+ * possible capability. These are indexed by a hash table array of pointers to
+ * the same structures for use by the parser.
+ */
struct name_table_entry
{
const char *nte_name; /* name to hash on */
HashValue nte_link; /* index in table of next hash, or -1 */
};
- /*
- * Use this structure to hide differences between terminfo and termcap
- * tables.
- */
+/*
+ * Use this structure to hide differences between terminfo and termcap tables.
+ */
typedef struct {
unsigned table_size;
const HashValue *table_data;
const char *source;
};
-extern NCURSES_EXPORT(const struct name_table_entry *) _nc_get_table (bool);
-extern NCURSES_EXPORT(const HashData *) _nc_get_hash_info (bool);
-extern NCURSES_EXPORT(const HashValue *) _nc_get_hash_table (bool);
-extern NCURSES_EXPORT(const struct alias *) _nc_get_alias_table (bool);
-
#define NOTFOUND ((struct name_table_entry *) 0)
/*
#ifdef NCURSES_TERM_ENTRY_H_incl
+/*
+ * These entrypoints are used only by the ncurses utilities such as tic.
+ */
+#ifdef NCURSES_INTERNALS
/* access.c */
extern NCURSES_EXPORT(unsigned) _nc_pathlast (const char *);
extern NCURSES_EXPORT(bool) _nc_is_abs_path (const char *);
extern NCURSES_EXPORT(char *) _nc_basename (char *);
extern NCURSES_EXPORT(char *) _nc_rootname (char *);
+/* comp_captab.c */
+extern NCURSES_EXPORT(const struct name_table_entry *) _nc_get_table (bool);
+extern NCURSES_EXPORT(const HashData *) _nc_get_hash_info (bool);
+extern NCURSES_EXPORT(const struct alias *) _nc_get_alias_table (bool);
+
/* comp_hash.c: name lookup */
-extern NCURSES_EXPORT(struct name_table_entry const *) _nc_find_entry
- (const char *, const HashValue *);
extern NCURSES_EXPORT(struct name_table_entry const *) _nc_find_type_entry
(const char *, int, bool);
extern NCURSES_EXPORT(int) _nc_get_token (bool);
extern NCURSES_EXPORT(void) _nc_panic_mode (char);
extern NCURSES_EXPORT(void) _nc_push_token (int);
-extern NCURSES_EXPORT(void) _nc_reset_input (FILE *, char *);
extern NCURSES_EXPORT_VAR(int) _nc_curr_col;
extern NCURSES_EXPORT_VAR(int) _nc_curr_line;
extern NCURSES_EXPORT_VAR(int) _nc_syntax;
extern NCURSES_EXPORT(void) _nc_warning (const char *const,...) GCC_PRINTFLIKE(1,2);
extern NCURSES_EXPORT_VAR(bool) _nc_suppress_warnings;
-/* comp_expand.c: expand string into readable form */
-extern NCURSES_EXPORT(char *) _nc_tic_expand (const char *, bool, int);
-
-/* comp_scan.c: decode string from readable form */
-extern NCURSES_EXPORT(int) _nc_trans_string (char *, char *);
+/* comp_scan.c */
+extern NCURSES_EXPORT_VAR(struct token) _nc_curr_token;
/* captoinfo.c: capability conversion */
extern NCURSES_EXPORT(char *) _nc_captoinfo (const char *, const char *, int const);
/* home_terminfo.c */
extern NCURSES_EXPORT(char *) _nc_home_terminfo (void);
+/* init_keytry.c */
+#if BROKEN_LINKER
+#define _nc_tinfo_fkeys _nc_tinfo_fkeysf()
+extern NCURSES_EXPORT(const struct tinfo_fkeys *) _nc_tinfo_fkeysf (void);
+#else
+extern NCURSES_EXPORT_VAR(const struct tinfo_fkeys) _nc_tinfo_fkeys[];
+#endif
+
/* lib_tparm.c */
#define NUM_PARM 9
extern NCURSES_EXPORT(int) _nc_tparm_analyze(const char *, char **, int *);
+/* lib_trace.c */
+extern NCURSES_EXPORT_VAR(unsigned) _nc_tracing;
+extern NCURSES_EXPORT(const char *) _nc_visbuf (const char *);
+extern NCURSES_EXPORT(const char *) _nc_visbuf2 (int, const char *);
+
/* lib_tputs.c */
-extern NCURSES_EXPORT_VAR(int) _nc_nulls_sent; /* Add one for every null sent */
+extern NCURSES_EXPORT_VAR(int) _nc_nulls_sent; /* Add one for every null sent */
/* comp_main.c: compiler main */
extern const char * _nc_progname;
/* write_entry.c */
extern NCURSES_EXPORT(int) _nc_tic_written (void);
+#endif /* NCURSES_INTERNALS */
+
+/*
+ * These entrypoints are used by tack.
+ */
+
+/* comp_hash.c: name lookup */
+extern NCURSES_EXPORT(struct name_table_entry const *) _nc_find_entry
+ (const char *, const HashValue *);
+extern NCURSES_EXPORT(const HashValue *) _nc_get_hash_table (bool);
+
+/* comp_scan.c: lexical analysis */
+extern NCURSES_EXPORT(void) _nc_reset_input (FILE *, char *);
+
+/* comp_expand.c: expand string into readable form */
+extern NCURSES_EXPORT(char *) _nc_tic_expand (const char *, bool, int);
+
+/* comp_scan.c: decode string from readable form */
+extern NCURSES_EXPORT(int) _nc_trans_string (char *, char *);
+
#endif /* NCURSES_TERM_ENTRY_H_incl */
#ifdef __cplusplus
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_color.3x,v 1.46 2017/01/07 19:57:48 tom Exp $
+.\" $Id: curs_color.3x,v 1.47 2017/03/13 21:49:37 tom Exp $
.TH curs_color 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
\fBinit_pair\fR,
\fBinit_color\fR,
.\" .br
-\fBhas_colors\fR,
-\fBcan_change_color\fR,
-.\" .br
\fBcolor_content\fR,
\fBpair_content\fR,
.\" .br
+\fBhas_colors\fR,
+\fBcan_change_color\fR,
+.\" .br
\fBCOLOR_PAIR\fR,
\fBPAIR_NUMBER\fR \- \fBcurses\fR color manipulation routines
.ad
\fB#include <curses.h>\fR
.sp
\fBint start_color(void);\fR
-.br
+.sp
\fBint init_pair(short pair, short f, short b);\fR
.br
\fBint init_color(short color, short r, short g, short b);\fR
.sp
-\fBbool has_colors(void);\fR
-.br
-\fBbool can_change_color(void);\fR
-.sp
\fBint color_content(short color, short *r, short *g, short *b);\fR
.br
\fBint pair_content(short pair, short *f, short *b);\fR
.sp
+\fBbool has_colors(void);\fR
+.br
+\fBbool can_change_color(void);\fR
+.sp
\fBint COLOR_PAIR(int n);\fR
.br
\fBPAIR_NUMBER(\fR\fIattrs\fR\fB);\fP
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2016 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
.\" copy of this software and associated documentation files (the *
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_slk.3x,v 1.23 2016/10/15 17:02:31 tom Exp $
+.\" $Id: curs_slk.3x,v 1.29 2017/03/18 01:00:30 tom Exp $
.TH curs_slk 3X ""
+.de bP
+.IP \(bu 4
+..
.na
.hy 0
.SH NAME
\fB#include <curses.h>\fR
.sp
\fBint slk_init(int fmt);\fR
-.br
+.sp
\fBint slk_set(int labnum, const char *label, int fmt);\fR
.br
+\fBint slk_wset(int labnum, const wchar_t *label, int fmt);\fR
+.sp
+\fBchar *slk_label(int labnum);\fR
+.sp
\fBint slk_refresh(void);\fR
.br
\fBint slk_noutrefresh(void);\fR
.br
-\fBchar *slk_label(int labnum);\fR
-.br
\fBint slk_clear(void);\fR
.br
\fBint slk_restore(void);\fR
.br
\fBint slk_touch(void);\fR
-.br
+.sp
\fBint slk_attron(const chtype attrs);\fR
.br
\fBint slk_attroff(const chtype attrs);\fR
.br
\fBint slk_attr_off(const attr_t attrs, void * opts);\fR
.br
-\fBint slk_attr_set(const attr_t attrs, short color_pair, void* opts);\fR
-.br
+\fBint slk_attr_set(const attr_t attrs, short pair, void* opts);\fR
+.sp
\fBattr_t slk_attr(void);\fR
-.br
-\fBint slk_color(short color_pair);\fR
-.br
-\fBint slk_wset(int labnum, const wchar_t *label, int fmt);\fR
-.br
+.sp
+\fBint slk_color(short pair);\fR
.SH DESCRIPTION
The slk* functions manipulate the set of soft function-key labels that exist on
many terminals.
In addition to this, the ncurses
implementation supports a mode where it simulates 12 labels of up to five
characters each.
-This is useful for today's PC-like enduser devices.
+This is useful for PC-like enduser devices.
ncurses simulates this mode by taking over up to two lines at
the bottom of the screen;
it does not try to use any hardware support for this
mode.
+.SS Initialization
.PP
The \fBslk_init\fR routine must be called before \fBinitscr\fR or \fBnewterm\fR
is called.
If \fBinitscr\fR eventually uses a line from \fBstdscr\fR to
emulate the soft labels,
then \fIfmt\fR determines how the labels are arranged on the screen:
-.RS
+.RS 3
.TP 3
.B 0
indicates a 3\-2\-3 arrangement of
but in addition an index line is generated, helping the user to
identify the key numbers easily.
.RE
+.SS Labels
.PP
The \fBslk_set\fR routine
(and the \fBslk_wset\fR routine for the wide-character library)
has three parameters:
-.RS
+.RS 3
.TP 5
.I labnum
is the label number, from \fB1\fR to \fB8\fR
label.
.RE
.PP
-The \fBslk_refresh\fR and \fBslk_noutrefresh\fR routines correspond to
-the \fBwrefresh\fR and \fBwnoutrefresh\fR routines.
-.PP
The \fBslk_label\fR routine returns the current label for label number
\fIlabnum\fR, with leading and trailing blanks stripped.
+.SS Screen updates
+.PP
+The \fBslk_refresh\fR and \fBslk_noutrefresh\fR routines correspond to
+the \fBwrefresh\fR and \fBwnoutrefresh\fR routines.
.PP
The \fBslk_clear\fR routine clears the soft labels from the screen.
.PP
.PP
The \fBslk_touch\fR routine forces all the soft labels to be output
the next time a \fBslk_noutrefresh\fR is performed.
+.SS Video attributes
.PP
The \fBslk_attron\fR, \fBslk_attrset\fR, \fBslk_attroff\fR and \fBslk_attr\fR
routines correspond to \fBattron\fR, \fBattrset\fR, \fBattroff\fR and \fBattr_get\fR.
the screen.
The default highlight for soft keys is A_STANDOUT (as in
System V curses, which does not document this fact).
+.SS Colors
.PP
The \fBslk_color\fR routine corresponds to \fBcolor_set\fR.
It has an effect only
.PP
X/Open defines no error conditions.
In this implementation
-.RS
+.RS 3
.TP 5
\fBslk_attr\fR
returns the attribute used for the soft keys.
Most applications would use \fBslk_noutrefresh\fR because a
\fBwrefresh\fR is likely to follow soon.
.SH PORTABILITY
-The XSI Curses standard, Issue 4, describes these functions.
-It changes the
-argument type of the attribute-manipulation functions \fBslk_attron\fR,
-\fBslk_attroff\fR, \fBslk_attrset\fR to be \fBattr_t\fR, and adds \fBconst\fR
-qualifiers.
+The XSI Curses standard, Issue 4, described the soft-key functions,
+with some differences from SVr4 curses:
+.bP
+It
+added functions like the SVr4
+the attribute-manipulation functions \fBslk_attron\fR,
+\fBslk_attroff\fR, \fBslk_attrset\fR
+which use \fBattr_t\fR parameters,
+along with a reserved \fIopts\fP parameter.
+.IP
+One of these new functions (\fBslk_attr_set\fP) also has a color-pair parameter.
+.bP
+It added \fBconst\fR qualifiers to parameters (unnecessarily), and
+.bP
+It added \fBslk_color\fP.
+.PP
The format codes \fB2\fR and \fB3\fR for \fBslk_init\fR and the
function \fBslk_attr\fR are specific to ncurses.
.SH SEE ALSO
.\"***************************************************************************
-.\" Copyright (c) 2005-2010,2016 Free Software Foundation, Inc. *
+.\" Copyright (c) 2005-2016,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
.\" copy of this software and associated documentation files (the *
.\"
.\" Author: Thomas E. Dickey
.\"
-.\" $Id: legacy_coding.3x,v 1.5 2016/10/15 17:02:31 tom Exp $
+.\" $Id: legacy_coding.3x,v 1.6 2017/03/15 08:14:25 tom Exp $
.TH legacy_coding 3X ""
.SH NAME
-\fBuse_legacy_coding\fR \- use terminal's default colors
+\fBuse_legacy_coding\fR \- override locale-encoding checks
.SH SYNOPSIS
\fB#include <curses.h>\fP
.sp
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: man_db.renames,v 1.49 2017/03/12 00:43:15 tom Exp $
+# $Id: man_db.renames,v 1.50 2017/03/12 09:34:29 tom Exp $
# Manual-page renamings for the man_db program
#
# Files:
toe.1m toe.1
tput.1 tput.1
tset.1 tset.1
-vprintf.3s vprintf.3
+vprintf.3 vprintf.3
wresize.3x wresize.3ncurses
#
# Other:
-# $Id: manhtml.aliases,v 1.9 2017/03/05 00:55:53 tom Exp $
+# $Id: manhtml.aliases,v 1.11 2017/03/17 23:51:03 tom Exp $
#***************************************************************************
# Copyright (c) 2013-2016,2017 Free Software Foundation, Inc. *
# *
# authorization. *
#***************************************************************************
# Items in this list will be linked to the corresponding manpages by man2html
+assume_default_colors(3X) default_colors(3X)
addch(3X) curs_addch(3X)
curs_set(3X) curs_kernel(3X)
delscreen(3X) curs_initscr(3X)
initscr(3X) curs_initscr(3X)
is_scrollok(3X) curs_opaque(3X)
keypad(3X) curs_inopts(3X)
+longname(3X) curs_termattrs(3X)
meta(3X) curs_inopts(3X)
newterm(3X) curs_initscr(3X)
refresh(3X) curs_refresh(3X)
tparm(3X) curs_terminfo(3X)
tputs(3X) curs_terminfo(3X)
use_env(3X) curs_util(3X)
+use_default_colors(3X) default_colors(3X)
vidputs(3X) curs_terminfo(3X)
wgetch(3X) curs_getch(3X)
-# $Id: manhtml.externs,v 1.3 2013/12/21 22:11:29 tom Exp $
+# $Id: manhtml.externs,v 1.4 2017/03/12 09:36:37 tom Exp $
# Items in this list will not be linked by man2html
+#***************************************************************************
+# Copyright (c) 2013,2017 Free Software Foundation, Inc. *
+# *
+# Permission is hereby granted, free of charge, to any person obtaining a *
+# copy of this software and associated documentation files (the *
+# "Software"), to deal in the Software without restriction, including *
+# without limitation the rights to use, copy, modify, merge, publish, *
+# distribute, distribute with modifications, sublicense, and/or sell *
+# copies of the Software, and to permit persons to whom the Software is *
+# furnished to do so, subject to the following conditions: *
+# *
+# The above copyright notice and this permission notice shall be included *
+# in all copies or substantial portions of the Software. *
+# *
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+# IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+# THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+# *
+# Except as contained in this notice, the name(s) of the above copyright *
+# holders shall not be used in advertising or otherwise to promote the *
+# sale, use or other dealings in this Software without prior written *
+# authorization. *
+#***************************************************************************
+ADACURSES(1)
conflict(1)
csh(1)
ded(1)
.\"
.\" Author: Thomas E. Dickey
.\"
-.\" $Id: new_pair.3x,v 1.8 2017/03/09 09:59:11 tom Exp $
+.\" $Id: new_pair.3x,v 1.9 2017/03/13 21:21:34 tom Exp $
.TH new_pair 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
..
.SH NAME
\fBalloc_pair\fP,
+\fBfind_pair\fP,
\fBfree_pair\fP \- new curses color-pair functions
.SH SYNOPSIS
\fB#include <curses.h>\fP
.sp
\fBint alloc_pair(int fg, int bg);\fP
.br
+\fBint find_pair(int fg, int bg);\fP
+.br
\fBint free_pair(int pair);\fP
.SH DESCRIPTION
These functions are an extension to the curses library.
#include <tic.h>
-MODULE_ID("$Id: read_entry.c,v 1.141 2017/02/18 23:39:22 tom Exp $")
+MODULE_ID("$Id: read_entry.c,v 1.142 2017/03/16 08:19:06 tom Exp $")
#define TYPE_CALLOC(type,elts) typeCalloc(type, (unsigned)(elts))
TR(TRACE_DATABASE,
(T_CALLED("_nc_read_termtype(ptr=%p, buffer=%p, limit=%d)"),
- ptr, buffer, limit));
+ (void *) ptr, buffer, limit));
TR(TRACE_DATABASE, ("READ termtype header @%d", offset));
-ncurses6 (6.0+20170311) unstable; urgency=low
+ncurses6 (6.0+20170318) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sun, 05 Mar 2017 14:24:08 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sun, 12 Mar 2017 05:25:40 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.0+20170311) unstable; urgency=low
+ncurses6 (6.0+20170318) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sun, 05 Mar 2017 14:24:08 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sun, 12 Mar 2017 05:25:40 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.0+20170311) unstable; urgency=low
+ncurses6 (6.0+20170318) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sun, 05 Mar 2017 14:24:08 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sun, 12 Mar 2017 05:25:40 -0400
ncurses6 (5.9-20120608) unstable; urgency=low
-; $Id: mingw-ncurses.nsi,v 1.202 2017/03/05 19:24:08 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.203 2017/03/12 09:25:40 tom Exp $\r
\r
; TODO add examples\r
; TODO bump ABI to 6\r
!define VERSION_MAJOR "6"\r
!define VERSION_MINOR "0"\r
!define VERSION_YYYY "2017"\r
-!define VERSION_MMDD "0311"\r
+!define VERSION_MMDD "0318"\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.0
-Release: 20170311
+Release: 20170318
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.0
-Release: 20170311
+Release: 20170318
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
/****************************************************************************
- * Copyright (c) 1998-2014,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
* Author: Thomas E. Dickey 1997-on *
****************************************************************************/
/*
- * $Id: progs.priv.h,v 1.41 2015/05/23 23:53:55 tom Exp $
+ * $Id: progs.priv.h,v 1.42 2017/03/18 18:08:25 tom Exp $
*
* progs.priv.h
*
extern int optind;
#endif /* HAVE_GETOPT_H */
+#define NCURSES_INTERNALS 1
+#define NCURSES_OPAQUE 0
+
#include <curses.h>
#include <term_entry.h>
#include <nc_termios.h>
/****************************************************************************
- * Copyright (c) 2005-2015,2016 Free Software Foundation, Inc. *
+ * Copyright (c) 2005-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
/*
* Author: Thomas E. Dickey
*
- * $Id: demo_termcap.c,v 1.51 2016/09/10 21:22:39 tom Exp $
+ * $Id: demo_termcap.c,v 1.52 2017/03/18 22:03:07 tom Exp $
*
* A simple demo of the termcap interface.
*/
#ifdef NCURSES_VERSION
if (x_opt && (my_blob == 0) && y_opt) {
#if NCURSES_XNAMES
- TERMTYPE *term = &(cur_term->type);
+ TERMTYPE *term = (TERMTYPE *) cur_term;
if (term != 0
&& ((NUM_BOOLEANS(term) != BOOLCOUNT)
|| (NUM_NUMBERS(term) != NUMCOUNT)
/****************************************************************************
- * Copyright (c) 2009-2015,2016 Free Software Foundation, Inc. *
+ * Copyright (c) 2009-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
/*
* Author: Thomas E. Dickey
*
- * $Id: demo_terminfo.c,v 1.44 2016/09/10 21:22:49 tom Exp $
+ * $Id: demo_terminfo.c,v 1.45 2017/03/18 22:03:07 tom Exp $
*
* A simple demo of the terminfo interface.
*/
int mod;
if (y_opt) {
#if NCURSES_XNAMES
- TERMTYPE *term = &(cur_term->type);
+ TERMTYPE *term = (TERMTYPE *) cur_term;
if (term != 0
&& ((NUM_BOOLEANS(term) != BOOLCOUNT)
|| (NUM_NUMBERS(term) != NUMCOUNT)
/****************************************************************************
- * Copyright (c) 2016 Free Software Foundation, Inc. *
+ * Copyright (c) 2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
* authorization. *
****************************************************************************/
/*
- * $Id: list_keys.c,v 1.17 2016/09/10 21:24:44 tom Exp $
+ * $Id: list_keys.c,v 1.18 2017/03/18 22:03:07 tom Exp $
*
* Author: Thomas E Dickey
*
TERMTYPE *term;
for (k = 0; k < count; ++k) {
set_curterm(terms[k]);
- term = &(cur_term->type);
+ term = (TERMTYPE *) cur_term;
total += (size_t) (NUM_STRINGS(term) - STRCOUNT);
}
}
int m, n;
for (k = 0; k < count; ++k) {
set_curterm(terms[k]);
- term = &(cur_term->type);
+ term = (TERMTYPE *) cur_term;
for (n = STRCOUNT; n < NUM_STRINGS(term); ++n) {
bool found = FALSE;
const char *estr = ExtStrname(term, (int) n, strnames);