ncurses 6.0 - patch 20170318
authorThomas E. Dickey <dickey@invisible-island.net>
Sat, 18 Mar 2017 23:27:36 +0000 (23:27 +0000)
committerThomas E. Dickey <dickey@invisible-island.net>
Sat, 18 Mar 2017 23:27:36 +0000 (23:27 +0000)
+ 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.

45 files changed:
MANIFEST
NEWS
VERSION
dist.mk
doc/html/man/adacurses6-config.1.html
doc/html/man/captoinfo.1m.html
doc/html/man/clear.1.html
doc/html/man/curs_color.3x.html
doc/html/man/curs_slk.3x.html
doc/html/man/form.3x.html
doc/html/man/infocmp.1m.html
doc/html/man/infotocap.1m.html
doc/html/man/legacy_coding.3x.html
doc/html/man/menu.3x.html
doc/html/man/ncurses.3x.html
doc/html/man/ncurses6-config.1.html
doc/html/man/new_pair.3x.html [new file with mode: 0644]
doc/html/man/panel.3x.html
doc/html/man/tabs.1.html
doc/html/man/terminfo.5.html
doc/html/man/tic.1m.html
doc/html/man/toe.1m.html
doc/html/man/tput.1.html
doc/html/man/tset.1.html
include/MKterm.h.awk.in
include/term_entry.h
include/tic.h
man/curs_color.3x
man/curs_slk.3x
man/legacy_coding.3x
man/man_db.renames
man/manhtml.aliases
man/manhtml.externs
man/new_pair.3x
ncurses/tinfo/read_entry.c
package/debian-mingw/changelog
package/debian-mingw64/changelog
package/debian/changelog
package/mingw-ncurses.nsi
package/mingw-ncurses.spec
package/ncurses.spec
progs/progs.priv.h
test/demo_termcap.c
test/demo_terminfo.c
test/list_keys.c

index bc547facb23b5a3b18ff0a4fe61d90f9873d7b32..bcc0bcf1c72fe54aec65fb641ca2bb5c1226b9f7 100644 (file)
--- a/MANIFEST
+++ b/MANIFEST
 ./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
diff --git a/NEWS b/NEWS
index dba8fd1384f077abd9828ddd61fb6b3daffa2e47..ef4cabd286ae491cc3c4fed08e45d2690db73ace 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -25,7 +25,7 @@
 -- 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
@@ -45,6 +45,19 @@ See the AUTHORS file for the corresponding full names.
 Changes through 1.9.9e did not credit all contributions;
 it is not possible to add this information.
 
+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
diff --git a/VERSION b/VERSION
index a1d35f56cc18c15e4db8a5f56e92c10f6962f0c3..977c7749e0725793bf5ee3b15415c9821504e091 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-5:0:9  6.0     20170311
+5:0:9  6.0     20170318
diff --git a/dist.mk b/dist.mk
index 64022e85a204149417ad9d77bbf0da121f8f56b7..cbf0192376e860881950bbb3c66b8e46f02573d2 100644 (file)
--- a/dist.mk
+++ b/dist.mk
@@ -25,7 +25,7 @@
 # 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
@@ -37,7 +37,7 @@ SHELL = /bin/sh
 # 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)
index e92fba9ab0f0bb92df77c879588d669e75094fc3..89ef2934971dcd22c5232bbb94ed96f6c078ec94 100644 (file)
@@ -40,7 +40,7 @@
 <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>
index 0ce8816a856633ed7e07b2603ff39538d3276da0..5a3f3b86635c9e6c9098d4ff58a8e0ce9aaa0d96 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
-       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>
index 6cab236abd29e78debde086dca95711f6ea93fce..4de388474b490d56f7587df00f1b5293850ee5a7 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
 
 
 
index cf446d172566445aa7beaf97177a39f72f78abee..843ada75166d51757100ad395a7083bc855ff9f3 100644 (file)
@@ -26,7 +26,7 @@
   * 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
@@ -49,8 +49,8 @@
 
 
 </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>&lt;curses.h&gt;</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>
 
index bb6758c1eed7166d07a0b1801da6d1cca892aa2a..40efdb9fb814092cd798dcf54d2c2d4e9496e217 100644 (file)
@@ -1,6 +1,6 @@
 <!-- 
   ****************************************************************************
-  * 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            *
@@ -26,7 +26,7 @@
   * 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>&lt;curses.h&gt;</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>
index c4942bfeaa0613fe0fc42629486ad70dcceb7b0c..c61b68bb8cfa3291d34b4c74b14a570e17d4167e 100644 (file)
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "form_" for
        detailed descriptions of the entry points.
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
 
 
 
index 6442c1a65dee434832bcd36eb79a20fbcc6e44c5..b56caa0065d79aeb413ee6b5a9f1185b771f97e4 100644 (file)
 
        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>
index afa4ec1aa6b64c4cdca7463b07dc9690893782e9..44c2cfdf17569df30858fc6be9e67432215cb087 100644 (file)
@@ -88,7 +88,7 @@
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index b721536bc31e70d366f0873fa1f4473155aa4298..d8792bfa41052075ba44c3535a48b9e969b75dfe 100644 (file)
@@ -1,6 +1,6 @@
 <!-- 
   ****************************************************************************
-  * 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            *
@@ -27,7 +27,7 @@
   * 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>
@@ -47,7 +47,7 @@
 
 
 </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>
index 1c07f627db477674aa95fb7f595bb6c5f35c1c53..584361d686c878717c7ce1e4bc6d5f19aaa2ad6e 100644 (file)
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "menu_" for
        detailed descriptions of the entry points.
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
 
 
 
index d280efe5467ec9377ed2d89b783c694b44e95b22..07fee5795b0563b80837fe0c50469208f0a16fcd 100644 (file)
@@ -27,7 +27,7 @@
   * 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>
@@ -60,7 +60,7 @@
        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>
index 51adb9abbc1dc07947c124c4f7d2f431698fb8a6..132455f19e35313d1a698b486194d5b8bf9b2069 100644 (file)
 </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).
 
 
 
diff --git a/doc/html/man/new_pair.3x.html b/doc/html/man/new_pair.3x.html
new file mode 100644 (file)
index 0000000..fa487ad
--- /dev/null
@@ -0,0 +1,200 @@
+<!-- 
+  ****************************************************************************
+  * 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>&lt;curses.h&gt;</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>
index 80cc830f5a05d59d58d24f88b5149eb705dd7823..da1bb8daa65e47d4d1357980513f3872dddcb38c 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
 
-       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>
index f86713d014af52714cd2e7d447ee5075da19f1e0..dc08e96665b9e24680b07c666d7223d7d2340b80 100644 (file)
 </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).
 
 
 
index 7ce1a22284ffc9fcda5997f408f87b6a4ada9ed0..a5f900a196bff0091379c191212f091147bffbe0 100644 (file)
@@ -31,7 +31,7 @@
   * 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
@@ -75,7 +75,7 @@
        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>
@@ -93,7 +93,7 @@
            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
index 03f4c6e656c5912d816133b687dbc8aeedf2fbea..f25e2442ff0b10d335877a8060eabed6b571834d 100644 (file)
        <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>
index 2100f4ca2faabb18a6d84ad2ea3e3816f10fc012..bcb2f5d8b046707742184f8a3df0c1d3135ce761 100644 (file)
        <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).
 
 
 
index 588b32a99997123e7666c2682f4ed99ac262a9a3..ae2ccc70c0bf110809409258422ec930831b0b53 100644 (file)
        <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).
 
 
 
index 45dc271b4b256330aab15f0f4be48f731c9d35ef..ccf46a1fc7730211d913957dfb7913aef13cd173 100644 (file)
        <STRONG>csh(1)</STRONG>,   <STRONG>sh(1)</STRONG>,   <STRONG>stty(1)</STRONG>,   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>,   <STRONG>tty(4)</STRONG>,
        <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG>ttys(5)</STRONG>, <STRONG>environ(7)</STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170304).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170318).
 
 
 
index 587ee52123884d97a98e3bc8273e1a8b37c75484..a030c2510fd075395751dbf4596adb346c14085c 100644 (file)
@@ -1,7 +1,7 @@
 # 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            *"
@@ -34,7 +34,7 @@ BEGIN         {
                    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"
@@ -124,7 +124,8 @@ BEGIN               {
                    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  ""
                }
 
@@ -194,14 +195,24 @@ END               {
                        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;"
@@ -247,18 +258,28 @@ END               {
                        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  ""
index 0223f400f1ca034b6fcefc76aff37262cf3e38f7..b47d915849d9339a212c3ed4269923963d4c9088 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * 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            *
@@ -32,7 +32,7 @@
  *     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
@@ -141,6 +141,11 @@ extern NCURSES_EXPORT_VAR(ENTRY *) _nc_tail;
                        _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);
@@ -150,13 +155,6 @@ extern NCURSES_EXPORT(void) _nc_wrap_entry (ENTRY *const, bool);
 
 /* 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 *);
@@ -185,6 +183,22 @@ extern NCURSES_IMPEXP void NCURSES_API (*_nc_check_termtype2)(TERMTYPE *, bool);
 
 /* 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
index fb713afdd280df31b36af150b0c1604bafcfe0ed..126515eaf696b147b38c4c218a5590680a4cbe85 100644 (file)
@@ -33,9 +33,8 @@
  ****************************************************************************/
 
 /*
- * $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
@@ -129,11 +128,6 @@ extern "C" {
 #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
@@ -150,49 +144,33 @@ extern NCURSES_EXPORT(const char *) _nc_visbuf2 (int, const char *);
 
 #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 */
@@ -201,10 +179,9 @@ struct name_table_entry
        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;
@@ -219,11 +196,6 @@ struct alias
        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)
 
 /*
@@ -258,6 +230,10 @@ extern NCURSES_EXPORT(const struct alias *) _nc_get_alias_table (bool);
 
 #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 *);
@@ -266,9 +242,12 @@ extern NCURSES_EXPORT(bool) _nc_is_file_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);
 
@@ -276,7 +255,6 @@ extern NCURSES_EXPORT(struct name_table_entry const *) _nc_find_type_entry
 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;
@@ -298,11 +276,8 @@ extern NCURSES_EXPORT(void) _nc_syserr_abort (const char *const,...) GCC_PRINTFL
 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);
@@ -311,6 +286,14 @@ extern NCURSES_EXPORT(char *) _nc_infotocap (const char *, const char *, int con
 /* 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
 
@@ -318,8 +301,13 @@ extern NCURSES_EXPORT_VAR(int) _nc_tparm_err;
 
 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;
@@ -333,6 +321,26 @@ extern NCURSES_EXPORT(void) _nc_last_db(void);
 /* 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
index d81eb299d9a6c85a45af73cb6caebcc50cd8db7f..47f596594b5edb61664870662ee2637962f42191 100644 (file)
@@ -26,7 +26,7 @@
 .\" 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
index 83de447bc1b7801acf024b469dbcb8c4c01e14d0..d1927a107a2927a09437966cfc84811b40b0a132 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" 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.
@@ -98,18 +100,19 @@ labels of up to eight characters each.
 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
@@ -126,11 +129,12 @@ 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.
 .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
@@ -150,11 +154,12 @@ left-justified, centered, or right-justified, respectively, within the
 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
@@ -163,6 +168,7 @@ after a \fBslk_clear\fR has been performed.
 .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.
@@ -170,6 +176,7 @@ They have an effect only if soft labels are simulated on the bottom line of
 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
@@ -181,7 +188,7 @@ integer value other than \fBERR\fR") upon successful completion.
 .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.
@@ -227,11 +234,22 @@ memory for the labels cannot be allocated.
 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
index 32ff783b690b7c1a11e20c74f1da012c7aea59fe..b3d7b41e7526fd11fda0784ea3b5846e940b0b3d 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" 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
index c8319d5a00abc70b072785727c9c4b17e23055d6..7c2e47e9e1570a0eba8aead1f462bf5470ef49f4 100644 (file)
@@ -25,7 +25,7 @@
 # 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:
@@ -166,7 +166,7 @@ tic.1m                              tic.1
 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:
index 688862e6f19af0e34a469bada980241ad68f3016..e31ad3f8850c62e14786d7cf7ffbae237fe0a152 100644 (file)
@@ -1,4 +1,4 @@
-# $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.              *
 #                                                                          *
@@ -27,6 +27,7 @@
 # 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)
@@ -40,6 +41,7 @@ infocmp(1)            infocmp(1M)
 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)
@@ -53,5 +55,6 @@ tigetstr(3X)          curs_terminfo(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)
index d26b6127a4452229024d48843f43e841e968055a..4800869499777dc341096064b9e545bb464961fe 100644 (file)
@@ -1,5 +1,33 @@
-# $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)
index 46c23b48f7d6fa31563fa246ae81f4d60b778d4d..8bd40202c7a1e43539c75e8b76371fc1043182ee 100644 (file)
@@ -28,7 +28,7 @@
 .\"
 .\" 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.
index fc360bb8e4d8a1ec96bac921100996ed6c3b274a..52255c05bf3f131525e3b69ec1661a3dc39d8bdd 100644 (file)
@@ -41,7 +41,7 @@
 
 #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))
 
@@ -180,7 +180,7 @@ _nc_read_termtype(TERMTYPE *ptr, char *buffer, int limit)
 
     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));
 
index 441101acd0e15ab0ffbcc2ec1ccb02d1e45ee100..0de6a4da3e1075eecaee47787e25ddf68a4bb8d4 100644 (file)
@@ -1,8 +1,8 @@
-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
 
index 441101acd0e15ab0ffbcc2ec1ccb02d1e45ee100..0de6a4da3e1075eecaee47787e25ddf68a4bb8d4 100644 (file)
@@ -1,8 +1,8 @@
-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
 
index d70431759fbf80df166ca4219b80be72a6303d21..ea3a2997de05b8508f74292124cb8ebfeae73a13 100644 (file)
@@ -1,8 +1,8 @@
-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
 
index 8dde281ca6debfdc8d1f55c482a89faded6b0ca9..b2b3acbbeef350e3bbf68b975835f67420994b00 100644 (file)
@@ -1,4 +1,4 @@
-; $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
@@ -10,7 +10,7 @@
 !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
index f824987523073f54bfa26da53b7bed06e1ec96e2..22f172666f2d8ea82c9ca6b4a2ec0fa48894fd52 100644 (file)
@@ -3,7 +3,7 @@
 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
index 67fd9f30e5b75f453898f5601dab925316dbcf1e..6156636c2036dd0895df9fc5b1afbb1ddb91bbda 100644 (file)
@@ -1,7 +1,7 @@
 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
index 786fe558506e917fd3fd9ec655a71b9940f5980e..a9d3d0489a676e75e6442bdab9ba63a4a31546dc 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * 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            *
@@ -30,7 +30,7 @@
  *  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
  *
@@ -118,6 +118,9 @@ extern char *optarg;
 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>
index c0db052ca9bce0daf00158fa816e90f9b6e5cd08..1a95b00f7a49827a9984c8e02155ec3103aa8161 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * 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            *
@@ -29,7 +29,7 @@
 /*
  * 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.
  */
@@ -359,7 +359,7 @@ demo_termcap(NCURSES_CONST char *name)
 #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)
index c1fffc7048f057277dd0295c8f5fa63dfffc1f8e..5028e0ce9d863267923dbdcbb68fb871b71049e1 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * 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            *
@@ -29,7 +29,7 @@
 /*
  * 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.
  */
@@ -363,7 +363,7 @@ demo_terminfo(char *name)
        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)
index 346878a5bac1c81446d06b3c66c54a6efa390309..759469500a40a92f97537dce4ad7795132819681 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * 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            *
@@ -26,7 +26,7 @@
  * 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
  *
@@ -288,7 +288,7 @@ list_keys(TERMINAL ** terms, int count)
        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);
        }
     }
@@ -309,7 +309,7 @@ list_keys(TERMINAL ** terms, int count)
        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);