-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: NEWS,v 1.3162 2018/07/21 21:42:07 tom Exp $
+-- $Id: NEWS,v 1.3165 2018/07/28 23:24:55 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.
+20180728
+ + improve documentation regarding feature-test macros in curses.h
+ + improve documentation regarding the virtual and physical screens.
+ + formatting fixes for manpages, regenerate man-html documentation.
+
20180721
+ build-fixes for gcc8.
+ corrected acsc for wy50 -TD
-5:0:10 6.1 20180721
+5:0:10 6.1 20180728
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: dist.mk,v 1.1233 2018/07/21 13:45:51 tom Exp $
+# $Id: dist.mk,v 1.1234 2018/07/28 13:24:09 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 = 1
-NCURSES_PATCH = 20180721
+NCURSES_PATCH = 20180728
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180519).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2016 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2016,2018 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: captoinfo.1m,v 1.26 2016/10/15 17:26:09 tom Exp @
+ * @Id: captoinfo.1m,v 1.27 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
- <STRONG>captoinfo</STRONG> [<STRONG>-v</STRONG><EM>n</EM> <EM>width</EM>] [<STRONG>-V</STRONG>] [<STRONG>-1</STRONG>] [<STRONG>-w</STRONG> <EM>width</EM>] <EM>file</EM> . . .
+ <STRONG>captoinfo</STRONG> [<STRONG>-v</STRONG><EM>n</EM> <EM>width</EM>] [<STRONG>-V</STRONG>] [<STRONG>-1</STRONG>] [<STRONG>-w</STRONG> <EM>width</EM>] <EM>file</EM> ...
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
</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.1 (patch 20180519).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: clear.1,v 1.20 2018/05/19 21:03:03 tom Exp @
+ * @Id: clear.1,v 1.22 2018/07/28 21:45:40 tom Exp @
* these would be fallbacks for DS/DE,
* but groff changed the meaning of the macros.
-->
</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.1 (patch 20180519).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_addch.3x,v 1.45 2018/05/19 21:03:18 tom Exp @
+ * @Id: curs_addch.3x,v 1.46 2018/07/28 21:02:35 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_attr.3x,v 1.62 2017/12/16 20:16:07 tom Exp @
+ * @Id: curs_attr.3x,v 1.64 2018/07/28 22:15:59 tom Exp @
* ---------------------------------------------------------------------------
* attr_get
* .br
However, if the value does not fit, then the <STRONG>COLOR_PAIR</STRONG> macro uses only
the bits that fit. For example, because in ncurses <STRONG>A_COLOR</STRONG> has eight
- (8) bits, then <STRONG>COLOR_PAIR(259)</STRONG> is 4 (259-255).
+ (8) bits, then <STRONG>COLOR_PAIR(</STRONG><EM>259</EM><STRONG>)</STRONG> is 4 (i.e., 259 is 4 more than the limit
+ 255).
- The <STRONG>PAIR_NUMBER</STRONG> macro extracts a pair number from an <STRONG>int</STRONG> (or <STRONG>chtype</STRONG>).
- For example, the <EM>input</EM> and <EM>output</EM> values in these statements would be
+ The <STRONG>PAIR_NUMBER</STRONG> macro extracts a pair number from an <STRONG>int</STRONG> (or <STRONG>chtype</STRONG>).
+ For example, the <EM>input</EM> and <EM>output</EM> values in these statements would be
the same:
int value = A_BOLD | COLOR_PAIR(<EM>input</EM>);
int <EM>output</EM> = PAIR_NUMBER(value);
- The <STRONG>attrset</STRONG> routine is a legacy feature predating SVr4 curses but kept
+ The <STRONG>attrset</STRONG> routine is a legacy feature predating SVr4 curses but kept
in X/Open Curses for the same reason that SVr4 curses kept it: compati-
bility.
- The remaining <STRONG>attr</STRONG>* functions operate exactly like the corresponding
- <STRONG>attr_</STRONG>* functions, except that they take arguments of type <STRONG>int</STRONG> rather
+ The remaining <STRONG>attr</STRONG>* functions operate exactly like the corresponding
+ <STRONG>attr_</STRONG>* functions, except that they take arguments of type <STRONG>int</STRONG> rather
than <STRONG>attr_t</STRONG>.
- There is no corresponding <STRONG>attrget</STRONG> function as such in X/Open Curses,
+ There is no corresponding <STRONG>attrget</STRONG> function as such in X/Open Curses,
although ncurses provides <STRONG>getattrs</STRONG> (see <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>).
</PRE><H3><a name="h3-Change-character-rendition">Change character rendition</a></H3><PRE>
- The routine <STRONG>chgat</STRONG> changes the attributes of a given number of charac-
- ters starting at the current cursor location of <STRONG>stdscr</STRONG>. It does not
- update the cursor and does not perform wrapping. A character count of
- -1 or greater than the remaining window width means to change at-
- tributes all the way to the end of the current line. The <STRONG>wchgat</STRONG> func-
- tion generalizes this to any window; the <STRONG>mvwchgat</STRONG> function does a cur-
+ The routine <STRONG>chgat</STRONG> changes the attributes of a given number of charac-
+ ters starting at the current cursor location of <STRONG>stdscr</STRONG>. It does not
+ update the cursor and does not perform wrapping. A character count of
+ -1 or greater than the remaining window width means to change at-
+ tributes all the way to the end of the current line. The <STRONG>wchgat</STRONG> func-
+ tion generalizes this to any window; the <STRONG>mvwchgat</STRONG> function does a cur-
sor move before acting.
- In these functions, the color <EM>pair</EM> argument is a color-pair index (as
+ In these functions, the color <EM>pair</EM> argument is a color-pair index (as
in the first argument of <STRONG>init_pair</STRONG>, see <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>).
</PRE><H3><a name="h3-Change-window-color">Change window color</a></H3><PRE>
The routine <STRONG>color_set</STRONG> sets the current color of the given window to the
- foreground/background combination described by the color <EM>pair</EM> parame-
+ foreground/background combination described by the color <EM>pair</EM> parame-
ter.
</PRE><H3><a name="h3-Standout">Standout</a></H3><PRE>
- The routine <STRONG>standout</STRONG> is the same as <STRONG>attron(A_STANDOUT)</STRONG>. The routine
- <STRONG>standend</STRONG> is the same as <STRONG>attrset(A_NORMAL)</STRONG> or <STRONG>attrset(0)</STRONG>, that is, it
+ The routine <STRONG>standout</STRONG> is the same as <STRONG>attron(A_STANDOUT)</STRONG>. The routine
+ <STRONG>standend</STRONG> is the same as <STRONG>attrset(A_NORMAL)</STRONG> or <STRONG>attrset(0)</STRONG>, that is, it
turns off all attributes.
X/Open does not mark these "restricted", because
<STRONG>o</STRONG> they have well established legacy use, and
- <STRONG>o</STRONG> there is no ambiguity about the way the attributes might be com-
+ <STRONG>o</STRONG> there is no ambiguity about the way the attributes might be com-
bined with a color pair.
</PRE><H2><a name="h2-VIDEO-ATTRIBUTES">VIDEO ATTRIBUTES</a></H2><PRE>
The following video attributes, defined in <STRONG><curses.h></STRONG>, can be passed to
- the routines <STRONG>attron</STRONG>, <STRONG>attroff</STRONG>, and <STRONG>attrset</STRONG>, or OR'd with the characters
+ the routines <STRONG>attron</STRONG>, <STRONG>attroff</STRONG>, and <STRONG>attrset</STRONG>, or OR'd with the characters
passed to <STRONG>addch</STRONG> (see <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>).
<EM>Name</EM> <EM>Description</EM>
<STRONG>A_CHARTEXT</STRONG> Bit-mask to extract a character
<STRONG>A_COLOR</STRONG> Bit-mask to extract a color (legacy routines)
- These video attributes are supported by <STRONG>attr_on</STRONG> and related functions
+ These video attributes are supported by <STRONG>attr_on</STRONG> and related functions
(which also support the attributes recognized by <STRONG>attron</STRONG>, etc.):
<EM>Name</EM> <EM>Description</EM>
<STRONG>WA_TOP</STRONG> Top highlight
<STRONG>WA_VERTICAL</STRONG> Vertical highlight
- The return values of many of these routines are not meaningful (they
- are implemented as macro-expanded assignments and simply return their
- argument). The SVr4 manual page claims (falsely) that these routines
+ The return values of many of these routines are not meaningful (they
+ are implemented as macro-expanded assignments and simply return their
+ argument). The SVr4 manual page claims (falsely) that these routines
always return <STRONG>1</STRONG>.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
These functions may be macros:
- <STRONG>attroff</STRONG>, <STRONG>wattroff</STRONG>, <STRONG>attron</STRONG>, <STRONG>wattron</STRONG>, <STRONG>attrset</STRONG>, <STRONG>wattrset</STRONG>, <STRONG>standend</STRONG>
+ <STRONG>attroff</STRONG>, <STRONG>wattroff</STRONG>, <STRONG>attron</STRONG>, <STRONG>wattron</STRONG>, <STRONG>attrset</STRONG>, <STRONG>wattrset</STRONG>, <STRONG>standend</STRONG>
and <STRONG>standout</STRONG>.
- Color pair values can only be OR'd with attributes if the pair number
+ Color pair values can only be OR'd with attributes if the pair number
is less than 256. The alternate functions such as <STRONG>color_set</STRONG> can pass a
color pair value directly. However, ncurses ABI 4 and 5 simply OR this
- value within the alternate functions. You must use ncurses ABI 6 to
+ value within the alternate functions. You must use ncurses ABI 6 to
support more than 256 color pairs.
</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
- X/Open Curses is largely based on SVr4 curses, adding support for
- "wide-characters" (not specific to Unicode). Some of the X/Open dif-
- ferences from SVr4 curses address the way video attributes can be ap-
- plied to wide-characters. But aside from that, <STRONG>attrset</STRONG> and <STRONG>attr_set</STRONG>
- are similar. SVr4 curses provided the basic features for manipulating
- video attributes. However, earlier versions of curses provided a part
+ X/Open Curses is largely based on SVr4 curses, adding support for
+ "wide-characters" (not specific to Unicode). Some of the X/Open dif-
+ ferences from SVr4 curses address the way video attributes can be ap-
+ plied to wide-characters. But aside from that, <STRONG>attrset</STRONG> and <STRONG>attr_set</STRONG>
+ are similar. SVr4 curses provided the basic features for manipulating
+ video attributes. However, earlier versions of curses provided a part
of these features.
- As seen in 2.8BSD, curses assumed 7-bit characters, using the eighth
- bit of a byte to represent the <EM>standout</EM> feature (often implemented as
- bold and/or reverse video). The BSD curses library provided functions
- <STRONG>standout</STRONG> and <STRONG>standend</STRONG> which were carried along into X/Open Curses due
+ As seen in 2.8BSD, curses assumed 7-bit characters, using the eighth
+ bit of a byte to represent the <EM>standout</EM> feature (often implemented as
+ bold and/or reverse video). The BSD curses library provided functions
+ <STRONG>standout</STRONG> and <STRONG>standend</STRONG> which were carried along into X/Open Curses due
to their pervasive use in legacy applications.
- Some terminals in the 1980s could support a variety of video at-
- tributes, although the BSD curses library could do nothing with those.
+ Some terminals in the 1980s could support a variety of video at-
+ tributes, although the BSD curses library could do nothing with those.
System V (1983) provided an improved curses library. It defined the <STRONG>A_</STRONG>
- symbols for use by applications to manipulate the other attributes.
+ symbols for use by applications to manipulate the other attributes.
There are few useful references for the chronology.
- Goodheart's book <EM>UNIX</EM> <EM>Curses</EM> <EM>Explained</EM> (1991) describes SVr3 (1987),
+ Goodheart's book <EM>UNIX</EM> <EM>Curses</EM> <EM>Explained</EM> (1991) describes SVr3 (1987),
commenting on several functions:
- <STRONG>o</STRONG> the <STRONG>attron</STRONG>, <STRONG>attroff</STRONG>, <STRONG>attrset</STRONG> functions (and most of the functions
+ <STRONG>o</STRONG> the <STRONG>attron</STRONG>, <STRONG>attroff</STRONG>, <STRONG>attrset</STRONG> functions (and most of the functions
found in SVr4 but not in BSD curses) were introduced by System V,
- <STRONG>o</STRONG> the alternate character set feature with <STRONG>A_ALTCHARSET</STRONG> was added in
+ <STRONG>o</STRONG> the alternate character set feature with <STRONG>A_ALTCHARSET</STRONG> was added in
SVr2 and improved in SVr3 (by adding <STRONG>acs_map[]</STRONG>),
- <STRONG>o</STRONG> <STRONG>start_color</STRONG> and related color-functions were introduced by System
+ <STRONG>o</STRONG> <STRONG>start_color</STRONG> and related color-functions were introduced by System
V.3.2,
<STRONG>o</STRONG> pads, soft-keys were added in SVr3, and
Goodheart did not mention the background character or the <STRONG>cchar_t</STRONG> type.
Those are respectively SVr4 and X/Open features. He did mention the <STRONG>A_</STRONG>
- constants, but did not indicate their values. Those were not the same
+ constants, but did not indicate their values. Those were not the same
in different systems, even for those marked as System V.
- Different Unix systems used different sizes for the bit-fields in
- <STRONG>chtype</STRONG> for <EM>characters</EM> and <EM>colors</EM>, and took into account the different
+ Different Unix systems used different sizes for the bit-fields in
+ <STRONG>chtype</STRONG> for <EM>characters</EM> and <EM>colors</EM>, and took into account the different
integer sizes (32-bit versus 64-bit).
- This table showing the number of bits for <STRONG>A_COLOR</STRONG> and <STRONG>A_CHARTEXT</STRONG> was
- gleaned from the curses header files for various operating systems and
- architectures. The inferred architecture and notes reflect the format
- and size of the defined constants as well as clues such as the alter-
- nate character set implementation. A 32-bit library can be used on a
+ This table showing the number of bits for <STRONG>A_COLOR</STRONG> and <STRONG>A_CHARTEXT</STRONG> was
+ gleaned from the curses header files for various operating systems and
+ architectures. The inferred architecture and notes reflect the format
+ and size of the defined constants as well as clues such as the alter-
+ nate character set implementation. A 32-bit library can be used on a
64-bit system, but not necessarily the reverse.
<EM>Year</EM> <EM>System</EM> <EM>Arch</EM> <EM>Color</EM> <EM>Char</EM> <EM>Notes</EM>
1995 Solaris 5.4 32/64 7 16 X/Open curses
1996 AIX 4.2 32 7 16 X/Open curses
1996 OSF/1 r4 32 6 16 X/Open curses
- 1997 HP-UX 11.00 32 6 8 X/Open curses
+ 1997 HP-UX 11.00 32 6 8 X/Open curses
2000 U/Win 32/64 7/31 16 uses <STRONG>chtype</STRONG>
Notes:
Regarding HP-UX,
- <STRONG>o</STRONG> HP-UX 10.20 (1996) added support for 64-bit PA-RISC processors
+ <STRONG>o</STRONG> HP-UX 10.20 (1996) added support for 64-bit PA-RISC processors
in 1996.
- <STRONG>o</STRONG> HP-UX 10.30 (1997) marked "curses_colr" obsolete. That version
+ <STRONG>o</STRONG> HP-UX 10.30 (1997) marked "curses_colr" obsolete. That version
of curses was dropped with HP-UX 11.30 in 2006.
Regarding OSF/1 (and Tru64),
- <STRONG>o</STRONG> These used 64-bit hardware. Like ncurses, the OSF/1 curses in-
+ <STRONG>o</STRONG> These used 64-bit hardware. Like ncurses, the OSF/1 curses in-
terface is not customized for 32-bit and 64-bit versions.
<STRONG>o</STRONG> Unlike other systems which evolved from AT&T code, OSF/1 provid-
Sun's copyright began in 1996.
<STRONG>o</STRONG> Sun updated the X/Open curses interface after 64-bit support was
- introduced in 1997, but did not modify the SVr4 curses inter-
+ introduced in 1997, but did not modify the SVr4 curses inter-
face.
Regarding U/Win,
- <STRONG>o</STRONG> Development of the curses library began in 1991, stopped in
+ <STRONG>o</STRONG> Development of the curses library began in 1991, stopped in
2000.
<STRONG>o</STRONG> Color support was added in 1998.
<STRONG>o</STRONG> The library uses only <STRONG>chtype</STRONG> (no <STRONG>cchar_t</STRONG>).
- Once X/Open curses was adopted in the mid-1990s, the constraint of a
+ Once X/Open curses was adopted in the mid-1990s, the constraint of a
32-bit interface with many colors and wide-characters for <STRONG>chtype</STRONG> became
- a moot point. The <STRONG>cchar_t</STRONG> structure (whose size and members are not
+ a moot point. The <STRONG>cchar_t</STRONG> structure (whose size and members are not
specified in X/Open Curses) could be extended as needed.
Other interfaces are rarely used now:
- <STRONG>o</STRONG> BSD curses was improved slightly in 1993/1994 using Keith Bostic's
- modification to make the library 8-bit clean for <STRONG>nvi</STRONG>. He moved
+ <STRONG>o</STRONG> BSD curses was improved slightly in 1993/1994 using Keith Bostic's
+ modification to make the library 8-bit clean for <STRONG>nvi</STRONG>. He moved
<EM>standout</EM> attribute to a structure member.
- The resulting 4.4BSD curses was replaced by ncurses over the next
+ The resulting 4.4BSD curses was replaced by ncurses over the next
ten years.
<STRONG>o</STRONG> U/Win is rarely used now.
</PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
This implementation provides the <STRONG>A_ITALIC</STRONG> attribute for terminals which
- have the <STRONG>enter_italics_mode</STRONG> (<STRONG>sitm</STRONG>) and <STRONG>exit_italics_mode</STRONG> (<STRONG>ritm</STRONG>) capa-
+ have the <STRONG>enter_italics_mode</STRONG> (<STRONG>sitm</STRONG>) and <STRONG>exit_italics_mode</STRONG> (<STRONG>ritm</STRONG>) capa-
bilities. Italics are not mentioned in X/Open Curses. Unlike the oth-
- er video attributes, <STRONG>A_ITALIC</STRONG> is unrelated to the <STRONG>set_attributes</STRONG> capa-
- bilities. This implementation makes the assumption that <STRONG>exit_at-</STRONG>
+ er video attributes, <STRONG>A_ITALIC</STRONG> is unrelated to the <STRONG>set_attributes</STRONG> capa-
+ bilities. This implementation makes the assumption that <STRONG>exit_at-</STRONG>
<STRONG>tribute_mode</STRONG> may also reset italics.
- Each of the functions added by XSI Curses has a parameter <EM>opts</EM>, which
- X/Open Curses still (after more than twenty years) documents as re-
+ Each of the functions added by XSI Curses has a parameter <EM>opts</EM>, which
+ X/Open Curses still (after more than twenty years) documents as re-
served for future use, saying that it should be <STRONG>NULL</STRONG>. This implementa-
tion uses that parameter in ABI 6 for the functions which have a color-
pair parameter to support <EM>extended</EM> <EM>color</EM> <EM>pairs</EM>:
- <STRONG>o</STRONG> For functions which modify the color, e.g., <STRONG>wattr_set</STRONG>, if <EM>opts</EM> is
- set it is treated as a pointer to <STRONG>int</STRONG>, and used to set the color
+ <STRONG>o</STRONG> For functions which modify the color, e.g., <STRONG>wattr_set</STRONG>, if <EM>opts</EM> is
+ set it is treated as a pointer to <STRONG>int</STRONG>, and used to set the color
pair instead of the <STRONG>short</STRONG> <EM>pair</EM> parameter.
<STRONG>o</STRONG> For functions which retrieve the color, e.g., <STRONG>wattr_get</STRONG>, if <EM>opts</EM> is
- set it is treated as a pointer to <STRONG>int</STRONG>, and used to retrieve the
+ set it is treated as a pointer to <STRONG>int</STRONG>, and used to retrieve the
color pair as an <STRONG>int</STRONG> value, in addition retrieving it via the stan-
dard pointer to <STRONG>short</STRONG> parameter.
- The remaining functions which have <EM>opts</EM>, but do not manipulate color,
+ The remaining functions which have <EM>opts</EM>, but do not manipulate color,
e.g., <STRONG>wattr_on</STRONG> and <STRONG>wattr_off</STRONG> are not used by this implementation except
to check that they are <STRONG>NULL</STRONG>.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
These functions are supported in the XSI Curses standard, Issue 4. The
- standard defined the dedicated type for highlights, <STRONG>attr_t</STRONG>, which was
+ standard defined the dedicated type for highlights, <STRONG>attr_t</STRONG>, which was
not defined in SVr4 curses. The functions taking <STRONG>attr_t</STRONG> arguments were
not supported under SVr4.
Very old versions of this library did not force an update of the screen
- when changing the attributes. Use <STRONG>touchwin</STRONG> to force the screen to
+ when changing the attributes. Use <STRONG>touchwin</STRONG> to force the screen to
match the updated attributes.
- The XSI Curses standard states that whether the traditional functions
- <STRONG>attron</STRONG>/<STRONG>attroff</STRONG>/<STRONG>attrset</STRONG> can manipulate attributes other than <STRONG>A_BLINK</STRONG>,
- <STRONG>A_BOLD</STRONG>, <STRONG>A_DIM</STRONG>, <STRONG>A_REVERSE</STRONG>, <STRONG>A_STANDOUT</STRONG>, or <STRONG>A_UNDERLINE</STRONG> is "unspecified".
- Under this implementation as well as SVr4 curses, these functions cor-
- rectly manipulate all other highlights (specifically, <STRONG>A_ALTCHARSET</STRONG>,
+ The XSI Curses standard states that whether the traditional functions
+ <STRONG>attron</STRONG>/<STRONG>attroff</STRONG>/<STRONG>attrset</STRONG> can manipulate attributes other than <STRONG>A_BLINK</STRONG>,
+ <STRONG>A_BOLD</STRONG>, <STRONG>A_DIM</STRONG>, <STRONG>A_REVERSE</STRONG>, <STRONG>A_STANDOUT</STRONG>, or <STRONG>A_UNDERLINE</STRONG> is "unspecified".
+ Under this implementation as well as SVr4 curses, these functions cor-
+ rectly manipulate all other highlights (specifically, <STRONG>A_ALTCHARSET</STRONG>,
<STRONG>A_PROTECT</STRONG>, and <STRONG>A_INVIS</STRONG>).
XSI Curses added these entry points:
<STRONG>attr_get</STRONG>, <STRONG>attr_on</STRONG>, <STRONG>attr_off</STRONG>, <STRONG>attr_set</STRONG>, <STRONG>wattr_on</STRONG>, <STRONG>wattr_off</STRONG>, <STRONG>wat-</STRONG>
<STRONG>tr_get</STRONG>, <STRONG>wattr_set</STRONG>
- The new functions are intended to work with a new series of highlight
+ The new functions are intended to work with a new series of highlight
macros prefixed with <STRONG>WA_</STRONG>. The older macros have direct counterparts in
the newer set of names:
<STRONG>WA_BOLD</STRONG> Extra bright or bold
<STRONG>WA_ALTCHARSET</STRONG> Alternate character set
- XSI curses does not assign values to these symbols, nor does it state
+ XSI curses does not assign values to these symbols, nor does it state
whether or not they are related to the similarly-named A_NORMAL, etc.:
- <STRONG>o</STRONG> The XSI curses standard specifies that each pair of corresponding
- <STRONG>A_</STRONG> and <STRONG>WA_</STRONG>-using functions operates on the same current-highlight
+ <STRONG>o</STRONG> The XSI curses standard specifies that each pair of corresponding
+ <STRONG>A_</STRONG> and <STRONG>WA_</STRONG>-using functions operates on the same current-highlight
information.
<STRONG>o</STRONG> However, in some implementations, those symbols have unrelated val-
For example, the Solaris <EM>xpg4</EM> (X/Open) curses declares <STRONG>attr_t</STRONG> to be
an unsigned short integer (16-bits), while <STRONG>chtype</STRONG> is a unsigned in-
- teger (32-bits). The <STRONG>WA_</STRONG> symbols in this case are different from
- the <STRONG>A_</STRONG> symbols because they are used for a smaller datatype which
+ teger (32-bits). The <STRONG>WA_</STRONG> symbols in this case are different from
+ the <STRONG>A_</STRONG> symbols because they are used for a smaller datatype which
does not represent <STRONG>A_CHARTEXT</STRONG> or <STRONG>A_COLOR</STRONG>.
In this implementation (as in many others), the values happen to be
- the same because it simplifies copying information between <STRONG>chtype</STRONG>
+ the same because it simplifies copying information between <STRONG>chtype</STRONG>
and <STRONG>cchar_t</STRONG> variables.
The XSI standard extended conformance level adds new highlights <STRONG>A_HORI-</STRONG>
- <STRONG>ZONTAL</STRONG>, <STRONG>A_LEFT</STRONG>, <STRONG>A_LOW</STRONG>, <STRONG>A_RIGHT</STRONG>, <STRONG>A_TOP</STRONG>, <STRONG>A_VERTICAL</STRONG> (and corresponding
- <STRONG>WA_</STRONG> macros for each). As of August 2013, no known terminal provides
+ <STRONG>ZONTAL</STRONG>, <STRONG>A_LEFT</STRONG>, <STRONG>A_LOW</STRONG>, <STRONG>A_RIGHT</STRONG>, <STRONG>A_TOP</STRONG>, <STRONG>A_VERTICAL</STRONG> (and corresponding
+ <STRONG>WA_</STRONG> macros for each). As of August 2013, no known terminal provides
these highlights (i.e., via the <STRONG>sgr1</STRONG> capability).
<STRONG>o</STRONG> returns an error if the color pair parameter for <STRONG>wcolor_set</STRONG> is out-
side the range 0..COLOR_PAIRS-1.
- <STRONG>o</STRONG> does not return an error if either of the parameters of <STRONG>wattr_get</STRONG>
+ <STRONG>o</STRONG> does not return an error if either of the parameters of <STRONG>wattr_get</STRONG>
used for retrieving attribute or color-pair values is <STRONG>NULL</STRONG>.
- Functions with a "mv" prefix first perform a cursor movement using
+ Functions with a "mv" prefix first perform a cursor movement using
<STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
the window pointer is null.
<!--
****************************************************************************
- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2010,2018 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_beep.3x,v 1.12 2010/12/04 18:36:44 tom Exp @
+ * @Id: curs_beep.3x,v 1.13 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_bkgd.3x,v 1.25 2017/11/18 23:56:00 tom Exp @
+ * @Id: curs_bkgd.3x,v 1.26 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 2002-2015,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 2002-2017,2018 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_bkgrnd.3x,v 1.8 2017/11/18 23:47:37 tom Exp @
+ * @Id: curs_bkgrnd.3x,v 1.9 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2010,2018 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_border.3x,v 1.22 2010/12/04 18:36:44 tom Exp @
+ * @Id: curs_border.3x,v 1.23 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2016 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2016,2018 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_clear.3x,v 1.15 2016/10/15 17:02:31 tom Exp @
+ * @Id: curs_clear.3x,v 1.16 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_color.3x,v 1.53 2017/11/20 01:03:45 tom Exp @
+ * @Id: curs_color.3x,v 1.55 2018/07/28 22:15:59 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2010,2018 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_delch.3x,v 1.11 2010/12/04 18:36:44 tom Exp @
+ * @Id: curs_delch.3x,v 1.12 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2010,2018 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_deleteln.3x,v 1.13 2010/12/04 18:36:44 tom Exp @
+ * @Id: curs_deleteln.3x,v 1.14 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1999-2010,2016 Free Software Foundation, Inc. *
+ * Copyright (c) 1999-2016,2018 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 1999-on
- * @Id: curs_extend.3x,v 1.21 2016/10/15 16:52:48 tom Exp @
+ * @Id: curs_extend.3x,v 1.22 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 2002-2016,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 2002-2017,2018 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_get_wch.3x,v 1.10 2017/11/18 23:56:00 tom Exp @
+ * @Id: curs_get_wch.3x,v 1.11 2018/07/28 22:20:54 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 2002-2012,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 2002-2017,2018 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_get_wstr.3x,v 1.12 2017/11/21 00:45:48 tom Exp @
+ * @Id: curs_get_wstr.3x,v 1.14 2018/07/28 22:15:59 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_getch.3x,v 1.51 2017/11/21 00:45:48 tom Exp @
+ * @Id: curs_getch.3x,v 1.53 2018/07/28 22:15:59 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_getstr.3x,v 1.23 2017/11/21 00:45:48 tom Exp @
+ * @Id: curs_getstr.3x,v 1.24 2018/07/28 21:34:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 2002-2010,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 2002-2017,2018 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_in_wch.3x,v 1.6 2017/11/21 00:53:44 tom Exp @
+ * @Id: curs_in_wch.3x,v 1.7 2018/07/28 22:20:54 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 2002-2012,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 2002-2017,2018 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_in_wchstr.3x,v 1.10 2017/11/21 00:53:44 tom Exp @
+ * @Id: curs_in_wchstr.3x,v 1.11 2018/07/28 21:34:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
Reading a line that overflows the array pointed to by <EM>wchstr</EM> with
<STRONG>in_wchstr</STRONG>, <STRONG>mvin_wchstr</STRONG>, <STRONG>mvwin_wchstr</STRONG> or <STRONG>win_wchstr</STRONG> causes undefined re-
- sults. Therefore, the use of <STRONG>in_wchnstr</STRONG>, <STRONG>mvin_wchnstr</STRONG>, <STRONG>mvwin_wchnstr</STRONG>,
+ sults. Therefore, the use of <STRONG>in_wchnstr</STRONG>, <STRONG>mvin_wchnstr</STRONG>, <STRONG>mvwin_wchnstr</STRONG>,
or <STRONG>win_wchnstr</STRONG> is recommended.
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_inch.3x,v 1.20 2017/11/18 23:47:37 tom Exp @
+ * @Id: curs_inch.3x,v 1.21 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_inchstr.3x,v 1.17 2017/11/18 23:47:37 tom Exp @
+ * @Id: curs_inchstr.3x,v 1.18 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_initscr.3x,v 1.30 2018/04/07 20:54:12 tom Exp @
+ * @Id: curs_initscr.3x,v 1.31 2018/07/28 22:15:59 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_inopts.3x,v 1.26 2017/11/21 00:47:10 tom Exp @
+ * @Id: curs_inopts.3x,v 1.27 2018/07/28 22:20:54 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_insch.3x,v 1.14 2017/11/21 00:53:44 tom Exp @
+ * @Id: curs_insch.3x,v 1.15 2018/07/28 21:34:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_instr.3x,v 1.18 2017/11/18 23:47:37 tom Exp @
+ * @Id: curs_instr.3x,v 1.19 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 2002-2012,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 2002-2017,2018 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_inwstr.3x,v 1.9 2017/10/28 23:42:58 tom Exp @
+ * @Id: curs_inwstr.3x,v 1.11 2018/07/28 22:19:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- All routines return <STRONG>ERR</STRONG> upon failure. Upon successful completion, the
+ All routines return <STRONG>ERR</STRONG> upon failure. Upon successful completion, the
*<STRONG>inwstr</STRONG> routines return <STRONG>OK</STRONG>, and the *<STRONG>innwstr</STRONG> routines return the number
of characters read into the string.
<!--
****************************************************************************
- * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_kernel.3x,v 1.23 2017/11/18 23:47:37 tom Exp @
+ * @Id: curs_kernel.3x,v 1.26 2018/07/28 23:04:00 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
</PRE><H3><a name="h3-getsyx">getsyx</a></H3><PRE>
- The <STRONG>getsyx</STRONG> routine returns the current coordinates of the virtual
- screen cursor in <EM>y</EM> and <EM>x</EM>. If <STRONG>leaveok</STRONG> is currently <STRONG>TRUE</STRONG>, then <STRONG>-1</STRONG>,<STRONG>-1</STRONG> is
+ The <STRONG>getsyx</STRONG> routine returns the current coordinates of the <EM>virtual</EM>
+ <EM>screen</EM> cursor in <EM>y</EM> and <EM>x</EM>. If <STRONG>leaveok</STRONG> is currently <STRONG>TRUE</STRONG>, then <STRONG>-1</STRONG>,<STRONG>-1</STRONG> is
returned. If lines have been removed from the top of the screen, using
<STRONG>ripoffline</STRONG>, <EM>y</EM> and <EM>x</EM> include these lines; therefore, <EM>y</EM> and <EM>x</EM> should be
used only as arguments for <STRONG>setsyx</STRONG>.
+ Few applications will use this feature, most use <STRONG>getyx</STRONG> instead.
+
</PRE><H3><a name="h3-setsyx">setsyx</a></H3><PRE>
- The <STRONG>setsyx</STRONG> routine sets the virtual screen cursor to <EM>y</EM>, <EM>x</EM>. If <EM>y</EM> and <EM>x</EM>
+ The <STRONG>setsyx</STRONG> routine sets the <EM>virtual</EM> <EM>screen</EM> cursor to <EM>y</EM>, <EM>x</EM>. If <EM>y</EM> and <EM>x</EM>
are both <STRONG>-1</STRONG>, then <STRONG>leaveok</STRONG> is set. The two routines <STRONG>getsyx</STRONG> and <STRONG>setsyx</STRONG>
are designed to be used by a library routine, which manipulates <STRONG>curses</STRONG>
windows but does not want to change the current position of the pro-
do its manipulation of its own windows, do a <STRONG>wnoutrefresh</STRONG> on its win-
dows, call <STRONG>setsyx</STRONG>, and then call <STRONG>doupdate</STRONG>.
+ Few applications will use this feature, most use <STRONG>wmove</STRONG> instead.
+
</PRE><H3><a name="h3-ripoffline">ripoffline</a></H3><PRE>
The <STRONG>ripoffline</STRONG> routine provides access to the same facility that
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- The functions <STRONG>setsyx</STRONG> and <STRONG>getsyx</STRONG> are not described in the XSI Curses
- standard, Issue 4. All other functions are as described in XSI Curses.
+ The <EM>virtual</EM> <EM>screen</EM> functions <STRONG>setsyx</STRONG> and <STRONG>getsyx</STRONG> are not described in the
+ XSI Curses standard, Issue 4. All other functions are as described in
+ XSI Curses.
- The SVr4 documentation describes <STRONG>setsyx</STRONG> and <STRONG>getsyx</STRONG> as having return
- type int. This is misleading, as they are macros with no documented se-
- mantics for the return value.
+ The SVr4 documentation describes <STRONG>setsyx</STRONG> and <STRONG>getsyx</STRONG> as having return
+ type int. This is misleading, as they are macros with no documented
+ semantics for the return value.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_mouse.3x,v 1.47 2017/11/18 23:52:45 tom Exp @
+ * @Id: curs_mouse.3x,v 1.49 2018/07/28 22:19:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_move.3x,v 1.16 2017/11/21 00:46:31 tom Exp @
+ * @Id: curs_move.3x,v 1.17 2018/07/28 21:34:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_outopts.3x,v 1.28 2017/01/07 19:25:15 tom Exp @
+ * @Id: curs_outopts.3x,v 1.29 2018/07/28 22:59:02 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
translates the return key into newline on input, and whether it trans-
lates newline into return and line-feed on output (in either case, the
call <STRONG>addch('\n')</STRONG> does the equivalent of return and line feed on the
- virtual screen). Initially, these translations do occur. If you dis-
+ <EM>virtual</EM> <EM>screen</EM>). Initially, these translations do occur. If you dis-
able them using <STRONG>nonl</STRONG>, <STRONG>curses</STRONG> will be able to make better use of the
line-feed capability, resulting in faster cursor motion. Also, <STRONG>curses</STRONG>
will then be able to detect the return key.
<!--
****************************************************************************
- * Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_pad.3x,v 1.24 2017/11/21 01:16:26 tom Exp @
+ * @Id: curs_pad.3x,v 1.25 2018/07/28 22:20:54 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_print.3x,v 1.12 2017/11/20 01:27:30 tom Exp @
+ * @Id: curs_print.3x,v 1.13 2018/07/28 21:34:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_printw.3x,v 1.22 2018/04/07 20:18:55 tom Exp @
+ * @Id: curs_printw.3x,v 1.23 2018/07/28 21:14:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2016 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2016,2018 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_refresh.3x,v 1.17 2016/10/15 16:45:45 tom Exp @
+ * @Id: curs_refresh.3x,v 1.19 2018/07/28 22:59:02 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
The <STRONG>refresh</STRONG> and <STRONG>wrefresh</STRONG> routines (or <STRONG>wnoutrefresh</STRONG> and <STRONG>doupdate</STRONG>) must
be called to get actual output to the terminal, as other routines mere-
ly manipulate data structures. The routine <STRONG>wrefresh</STRONG> copies the named
- window to the physical terminal screen, taking into account what is al-
- ready there to do optimizations. The <STRONG>refresh</STRONG> routine is the same, us-
- ing <STRONG>stdscr</STRONG> as the default window. Unless <STRONG>leaveok</STRONG> has been enabled, the
- physical cursor of the terminal is left at the location of the cursor
- for that window.
+ window to the <EM>physical</EM> <EM>screen</EM>, taking into account what is already
+ there to do optimizations. The <STRONG>refresh</STRONG> routine is the same, using <STRONG>std-</STRONG>
+ <STRONG>scr</STRONG> as the default window. Unless <STRONG>leaveok</STRONG> has been enabled, the physi-
+ cal cursor of the terminal is left at the location of the cursor for
+ that window.
</PRE><H3><a name="h3-wnoutrefresh_doupdate">wnoutrefresh/doupdate</a></H3><PRE>
The <STRONG>wnoutrefresh</STRONG> and <STRONG>doupdate</STRONG> routines allow multiple updates with more
efficiency than <STRONG>wrefresh</STRONG> alone. In addition to all the window struc-
tures, <STRONG>curses</STRONG> keeps two data structures representing the terminal
- screen: a physical screen, describing what is actually on the screen,
- and a virtual screen, describing what the programmer wants to have on
- the screen.
-
- The routine <STRONG>wrefresh</STRONG> works by first calling <STRONG>wnoutrefresh</STRONG>, which copies
- the named window to the virtual screen, and then calling <STRONG>doupdate</STRONG>,
- which compares the virtual screen to the physical screen and does the
- actual update. If the programmer wishes to output several windows at
- once, a series of calls to <STRONG>wrefresh</STRONG> results in alternating calls to
- <STRONG>wnoutrefresh</STRONG> and <STRONG>doupdate</STRONG>, causing several bursts of output to the
- screen. By first calling <STRONG>wnoutrefresh</STRONG> for each window, it is then pos-
- sible to call <STRONG>doupdate</STRONG> once, resulting in only one burst of output,
- with fewer total characters transmitted and less CPU time used. If the
- <EM>win</EM> argument to <STRONG>wrefresh</STRONG> is the global variable <STRONG>curscr</STRONG>, the screen is
- immediately cleared and repainted from scratch.
+ screen:
+
+ <STRONG>o</STRONG> a <EM>physical</EM> <EM>screen</EM>, describing what is actually on the screen, and
+
+ <STRONG>o</STRONG> a <EM>virtual</EM> <EM>screen</EM>, describing what the programmer wants to have on
+ the screen.
+
+ The routine <STRONG>wrefresh</STRONG> works by
+
+ <STRONG>o</STRONG> first calling <STRONG>wnoutrefresh</STRONG>, which copies the named window to the
+ <EM>virtual</EM> <EM>screen</EM>, and
+
+ <STRONG>o</STRONG> then calling <STRONG>doupdate</STRONG>, which compares the <EM>virtual</EM> <EM>screen</EM> to the
+ <EM>physical</EM> <EM>screen</EM> and does the actual update.
+
+ If the programmer wishes to output several windows at once, a series of
+ calls to <STRONG>wrefresh</STRONG> results in alternating calls to <STRONG>wnoutrefresh</STRONG> and
+ <STRONG>doupdate</STRONG>, causing several bursts of output to the screen. By first
+ calling <STRONG>wnoutrefresh</STRONG> for each window, it is then possible to call <STRONG>doup-</STRONG>
+ <STRONG>date</STRONG> once, resulting in only one burst of output, with fewer total
+ characters transmitted and less CPU time used.
+
+ If the <EM>win</EM> argument to <STRONG>wrefresh</STRONG> is the <EM>physical</EM> <EM>screen</EM> (i.e., the glob-
+ al variable <STRONG>curscr</STRONG>), the screen is immediately cleared and repainted
+ from scratch.
The phrase "copies the named window to the virtual screen" above is am-
biguous. What actually happens is that all <EM>touched</EM> (changed) lines in
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_scanw.3x,v 1.23 2018/04/07 20:56:03 tom Exp @
+ * @Id: curs_scanw.3x,v 1.24 2018/07/28 21:14:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_scr_dump.3x,v 1.11 2017/04/17 00:41:24 tom Exp @
+ * @Id: curs_scr_dump.3x,v 1.13 2018/07/28 22:50:26 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- The <STRONG>scr_dump</STRONG> routine dumps the current contents of the virtual screen
+ The <STRONG>scr_dump</STRONG> routine dumps the current contents of the <EM>virtual</EM> <EM>screen</EM>
to the file <EM>filename</EM>.
- The <STRONG>scr_restore</STRONG> routine sets the virtual screen to the contents of
+ The <STRONG>scr_restore</STRONG> routine sets the <EM>virtual</EM> <EM>screen</EM> to the contents of
<EM>filename</EM>, which must have been written using <STRONG>scr_dump</STRONG>. The next call
- to <STRONG>doupdate</STRONG> restores the screen to the way it looked in the dump file.
+ to <STRONG>doupdate</STRONG> restores the <EM>physical</EM> <EM>screen</EM> to the way it looked in the
+ dump file.
The <STRONG>scr_init</STRONG> routine reads in the contents of <EM>filename</EM> and uses them to
initialize the <STRONG>curses</STRONG> data structures about what the terminal currently
has on its screen. If the data is determined to be valid, <STRONG>curses</STRONG> bases
- its next update of the screen on this information rather than clearing
- the screen and starting from scratch. <STRONG>scr_init</STRONG> is used after <STRONG>initscr</STRONG>
- or a <STRONG>system</STRONG> call to share the screen with another process which has
- done a <STRONG>scr_dump</STRONG> after its <STRONG><A HREF="curs_initscr.3x.html">endwin(3x)</A></STRONG> call. The data is declared in-
- valid if the terminfo capabilities <STRONG>rmcup</STRONG> and <STRONG>nrrmc</STRONG> exist; also if the
- terminal has been written to since the preceding <STRONG>scr_dump</STRONG> call.
-
- The <STRONG>scr_set</STRONG> routine is a combination of <STRONG>scr_restore</STRONG> and <STRONG>scr_init</STRONG>. It
+ its next update of the screen on this information rather than clearing
+ the screen and starting from scratch. <STRONG>scr_init</STRONG> is used after <STRONG>initscr</STRONG>
+ or a <STRONG>system</STRONG> call to share the screen with another process which has
+ done a <STRONG>scr_dump</STRONG> after its <STRONG><A HREF="curs_initscr.3x.html">endwin(3x)</A></STRONG> call. The data is declared in-
+ valid
+
+ <STRONG>o</STRONG> if the terminfo capabilities <STRONG>rmcup</STRONG> and <STRONG>nrrmc</STRONG> exist, also
+
+ <STRONG>o</STRONG> if the terminal has been written to since the preceding <STRONG>scr_dump</STRONG>
+ call.
+
+ The <STRONG>scr_set</STRONG> routine is a combination of <STRONG>scr_restore</STRONG> and <STRONG>scr_init</STRONG>. It
tells the program that the information in <EM>filename</EM> is what is currently
on the screen, and also what the program wants on the screen. This can
be thought of as a screen inheritance function.
- To read (write) a window from (to) a file, use the <STRONG>getwin</STRONG> and <STRONG>putwin</STRONG>
+ To read (write) a window from (to) a file, use the <STRONG>getwin</STRONG> and <STRONG>putwin</STRONG>
routines [see <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>].
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
All routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> upon success.
- X/Open defines no error conditions. In this implementation, each will
+ X/Open defines no error conditions. In this implementation, each will
return an error if the file cannot be opened.
<!--
****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2010,2018 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_scroll.3x,v 1.15 2010/12/04 18:40:45 tom Exp @
+ * @Id: curs_scroll.3x,v 1.16 2018/07/28 22:59:02 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
The <STRONG>scroll</STRONG> routine scrolls the window up one line. This involves mov-
ing the lines in the window data structure. As an optimization, if the
- scrolling region of the window is the entire screen, the physical
- screen may be scrolled at the same time.
+ scrolling region of the window is the entire screen, the <EM>physical</EM>
+ <EM>screen</EM> may be scrolled at the same time.
For positive <EM>n</EM>, the <STRONG>scrl</STRONG> and <STRONG>wscrl</STRONG> routines scroll the window up <EM>n</EM>
lines (line <EM>i</EM>+<EM>n</EM> becomes <EM>i</EM>); otherwise scroll the window down <EM>n</EM> lines.
<!--
****************************************************************************
- * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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.33 2017/11/21 00:46:31 tom Exp @
+ * @Id: curs_slk.3x,v 1.34 2018/07/28 22:20:54 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
</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> routines corre-
- spond 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 the bottom line of the screen.
- The default highlight for soft keys is A_STANDOUT (as in System V curs-
- es, which does not document this fact).
+ spond to <STRONG>attron</STRONG>, <STRONG>attrset</STRONG>, <STRONG>attroff</STRONG> and <STRONG>attr_get</STRONG>, respectively. 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).
</PRE><H3><a name="h3-Colors">Colors</a></H3><PRE>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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_termattrs.3x,v 1.13 2015/07/21 00:03:34 tom Exp @
+ * @Id: curs_termattrs.3x,v 1.14 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_termcap.3x,v 1.39 2018/04/07 20:51:27 tom Exp @
+ * @Id: curs_termcap.3x,v 1.40 2018/07/28 21:14:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_terminfo.3x,v 1.58 2018/04/07 21:09:12 tom Exp @
+ * @Id: curs_terminfo.3x,v 1.60 2018/07/28 22:08:59 tom Exp @
* ***************************************************************************
* ***************************************************************************
* ***************************************************************************
used.
Parameterized strings should be passed through <STRONG>tparm</STRONG> to instantiate
- them. All <STRONG>terminfo</STRONG> strings [including the output of <STRONG>tparm</STRONG>] should be
+ them. All <STRONG>terminfo</STRONG> strings (including the output of <STRONG>tparm</STRONG>) should be
printed with <STRONG>tputs</STRONG> or <STRONG>putp</STRONG>. Call <STRONG>reset_shell_mode</STRONG> to restore the tty
modes before exiting [see <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>].
<!--
****************************************************************************
- * Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_touch.3x,v 1.20 2017/11/25 16:19:42 tom Exp @
+ * @Id: curs_touch.3x,v 1.21 2018/07/28 21:34:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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_util.3x,v 1.52 2017/11/18 23:47:37 tom Exp @
+ * @Id: curs_util.3x,v 1.54 2018/07/28 22:08:59 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<STRONG>o</STRONG> the data written is a copy of the <STRONG>WINDOW</STRONG> structure, and its associ-
ated character cells. The format differs between the wide-charac-
- ter (ncursesw) and non-wide (ncurses) libraries. You can transfer
+ ter (<STRONG>ncursesw</STRONG>) and non-wide (<STRONG>ncurses</STRONG>) libraries. You can transfer
data between the two, however.
<STRONG>o</STRONG> the retrieved window is always created as a top-level window (or
"meta" keys (or if <STRONG>keyname</STRONG> is called before initializing curses), this
implementation returns strings "M-^@", "M-^A", etc.
+ X/Open Curses documents <STRONG>unctrl</STRONG> as declared in <STRONG><unctrl.h></STRONG>, which <STRONG>ncurses</STRONG>
+ does. However, <STRONG>ncurses</STRONG>' <STRONG><curses.h></STRONG> includes <STRONG><unctrl.h></STRONG>, matching the
+ behavior of SVr4 curses. Other implementations may not do that.
+
</PRE><H3><a name="h3-use_env_use_tioctl">use_env/use_tioctl</a></H3><PRE>
If <STRONG>ncurses</STRONG> is configured to provide the sp-functions extension, the
<!--
****************************************************************************
- * Copyright (c) 2010-2015,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 2010-2017,2018 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_variables.3x,v 1.9 2017/11/18 23:56:00 tom Exp @
+ * @Id: curs_variables.3x,v 1.11 2018/07/28 22:37:10 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
This variable holds the number of milliseconds to wait after reading an
escape character, to distinguish between an individual escape character
entered on the keyboard from escape sequences sent by cursor- and func-
- tion-keys (see <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>.
+ tion-keys (see <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>).
</PRE><H3><a name="h3-LINES">LINES</a></H3><PRE>
This implementation of curses uses a special window <STRONG>curscr</STRONG> to record
its updates to the terminal screen.
+ This is referred to as the "physical screen" in the <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
+ and <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> manual pages.
+
</PRE><H3><a name="h3-The-New-Screen">The New Screen</a></H3><PRE>
- This implementation of curses uses a special window <STRONG>newscr</STRONG> to hold up-
+ This implementation of curses uses a special window <STRONG>newscr</STRONG> to hold up-
dates to the terminal screen before applying them to <STRONG>curscr</STRONG>.
+ This is referred to as the "virtual screen" in the <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>,
+ <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG> and <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> manual pages.
+
</PRE><H3><a name="h3-The-Standard-Screen">The Standard Screen</a></H3><PRE>
Upon initializing curses, a default window called <STRONG>stdscr</STRONG>, which is the
<!--
****************************************************************************
- * Copyright (c) 1998-2011,2016 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2016,2018 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 1997,1999,2000,2005
- * @Id: default_colors.3x,v 1.25 2016/10/15 17:16:48 tom Exp @
+ * @Id: default_colors.3x,v 1.27 2018/07/28 22:08:59 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
The first function, <STRONG>use_default_colors</STRONG> tells the curses library to
assign terminal default foreground/background colors to color number
- -1. So init_pair(x,COLOR_RED,-1) will initialize pair x as red on
+ -1. So init_pair(x,COLOR_RED,-1) will initialize pair x as red on
default background and init_pair(x,-1,COLOR_BLUE) will initialize pair
x as default foreground on blue.
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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 1997
- * @Id: define_key.3x,v 1.15 2017/11/21 00:53:44 tom Exp @
+ * @Id: define_key.3x,v 1.16 2018/07/28 21:34:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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: form.3x,v 1.30 2017/11/25 20:28:02 tom Exp @
+ * @Id: form.3x,v 1.31 2018/07/28 21:34:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<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.1 (patch 20180519).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: form_cursor.3x,v 1.9 2015/12/05 20:39:43 jmc Exp @
+ * @Id: form_cursor.3x,v 1.10 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: form_data.3x,v 1.11 2015/12/05 23:01:16 tom Exp @
+ * @Id: form_data.3x,v 1.12 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_driver.3x,v 1.29 2018/04/28 19:58:58 tom Exp @
+ * @Id: form_driver.3x,v 1.31 2018/07/28 22:08:59 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2012,2018 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: form_field.3x,v 1.11 2012/11/03 23:03:59 tom Exp @
+ * @Id: form_field.3x,v 1.12 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2010,2018 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: form_field_attributes.3x,v 1.12 2010/12/04 18:40:45 tom Exp @
+ * @Id: form_field_attributes.3x,v 1.13 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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: form_field_buffer.3x,v 1.20 2017/11/18 23:56:00 tom Exp @
+ * @Id: form_field_buffer.3x,v 1.21 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: form_field_info.3x,v 1.13 2015/12/05 23:01:16 tom Exp @
+ * @Id: form_field_info.3x,v 1.14 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: form_field_just.3x,v 1.12 2015/12/05 23:02:59 tom Exp @
+ * @Id: form_field_just.3x,v 1.13 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: form_field_new.3x,v 1.19 2015/12/05 23:42:45 tom Exp @
+ * @Id: form_field_new.3x,v 1.20 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_field_opts.3x,v 1.21 2018/04/28 21:24:57 tom Exp @
+ * @Id: form_field_opts.3x,v 1.22 2018/07/28 21:18:11 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
O_ACTIVE
The field is visited during processing. If this option is off,
- the field will not be reachable by navigation keys. Please notice
+ the field will not be reachable by navigation keys. Please notice
that an invisible field appears to be inactive also.
O_AUTOSKIP
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: form_field_userptr.3x,v 1.11 2015/12/05 23:01:56 tom Exp @
+ * @Id: form_field_userptr.3x,v 1.12 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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: form_field_validation.3x,v 1.21 2017/11/20 01:28:31 tom Exp @
+ * @Id: form_field_validation.3x,v 1.23 2018/07/28 21:18:11 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
width.
TYPE_ENUM
- Accept one of a specified set of strings. Requires a third <STRONG>(char</STRONG>
- <STRONG>**)</STRONG> argument pointing to a string list; a fourth <STRONG>int</STRONG> flag argument
- to enable case-sensitivity; and a fifth <STRONG>int</STRONG> flag argument specify-
- ing whether a partial match must be a unique one (if this flag is
- off, a prefix matches the first of any set of more than one list
- elements with that prefix). Please notice that the string list is
- copied. So you may use a list that lives in automatic variables on
- the stack.
+ Accept one of a specified set of strings. Requires additional
+ parameters:
+
+ <STRONG>o</STRONG> a third <STRONG>(char</STRONG> <STRONG>**)</STRONG> argument pointing to a string list;
+
+ <STRONG>o</STRONG> a fourth <STRONG>int</STRONG> flag argument to enable case-sensitivity;
+
+ <STRONG>o</STRONG> and a fifth <STRONG>int</STRONG> flag argument specifying whether a partial
+ match must be a unique one. If this flag is off, a prefix
+ matches the first of any set of more than one list elements
+ with that prefix.
+
+ The library copies the string list, so you may use a list that
+ lives in automatic variables on the stack.
TYPE_INTEGER
- Integer data, parsable to an integer by <STRONG>atoi(3)</STRONG>. Requires a third
- <STRONG>int</STRONG> argument controlling the precision, a fourth <STRONG>long</STRONG> argument
- constraining minimum value, and a fifth <STRONG>long</STRONG> constraining maximum
- value. If the maximum value is less than or equal to the minimum
- value, the range is simply ignored. On return the field buffer is
- formatted according to the <STRONG>printf</STRONG> format specification ".*ld",
- where the '*' is replaced by the precision argument. For details
- of the precision handling see <STRONG>printf's</STRONG> man-page.
+ Integer data, parsable to an integer by <STRONG>atoi(3)</STRONG>. Requires addi-
+ tional parameters:
+
+ <STRONG>o</STRONG> a third <STRONG>int</STRONG> argument controlling the precision,
+
+ <STRONG>o</STRONG> a fourth <STRONG>long</STRONG> argument constraining minimum value,
+
+ <STRONG>o</STRONG> and a fifth <STRONG>long</STRONG> constraining maximum value. If the maximum
+ value is less than or equal to the minimum value, the range is
+ simply ignored. On return, the field buffer is formatted
+ according to the <STRONG>printf</STRONG> format specification ".*ld", where the
+ '*' is replaced by the precision argument.
+
+ For details of the precision handling see <STRONG>printf's</STRONG> man-page.
TYPE_NUMERIC
- Numeric data (may have a decimal-point part). Requires a third <STRONG>int</STRONG>
- argument controlling the precision, a fourth <STRONG>double</STRONG> argument con-
- straining minimum value, and a fifth <STRONG>double</STRONG> constraining maximum
- value. If your system supports locales, the decimal point charac-
- ter to be used must be the one specified by your locale. If the
- maximum value is less than or equal to the minimum value, the
- range is simply ignored. On return the field buffer is formatted
- according to the <STRONG>printf</STRONG> format specification ".*f", where the '*'
- is replaced by the precision argument. For details of the preci-
- sion handling see <STRONG>printf's</STRONG> man-page.
+ Numeric data (may have a decimal-point part). This requires addi-
+ tional parameters:
+
+ <STRONG>o</STRONG> a third <STRONG>int</STRONG> argument controlling the precision,
+
+ <STRONG>o</STRONG> a fourth <STRONG>double</STRONG> argument constraining minimum value,
+
+ <STRONG>o</STRONG> and a fifth <STRONG>double</STRONG> constraining maximum value. If your system
+ supports locales, the decimal point character must be the one
+ specified by your locale. If the maximum value is less than
+ or equal to the minimum value, the range is simply ignored.
+
+ On return, the field buffer is formatted according to the
+ <STRONG>printf</STRONG> format specification ".*f", where the '*' is replaced
+ by the precision argument.
+
+ For details of the precision handling see <STRONG>printf's</STRONG> man-page.
TYPE_REGEXP
- Regular expression data. Requires a regular expression <STRONG>(char</STRONG> <STRONG>*)</STRONG>
- third argument; the data is valid if the regular expression
- matches it. Regular expressions are in the format of <STRONG>regcomp</STRONG> and
- <STRONG>regexec</STRONG>. Please notice that the regular expression must match the
- whole field. If you have for example an eight character wide
- field, a regular expression "^[0-9]*$" always means that you have
- to fill all eight positions with digits. If you want to allow
- fewer digits, you may use for example "^[0-9]* *$" which is good
- for trailing spaces (up to an empty field), or "^ *[0-9]* *$"
- which is good for leading and trailing spaces around the digits.
+ Regular expression data. Requires a regular expression <STRONG>(char</STRONG> <STRONG>*)</STRONG>
+ third argument. The data is valid if the regular expression
+ matches it.
+
+ Regular expressions are in the format of <STRONG>regcomp</STRONG> and <STRONG>regexec</STRONG>.
+
+ The regular expression must match the whole field. If you have
+ for example, an eight character wide field, a regular expression
+ "^[0-9]*$" always means that you have to fill all eight positions
+ with digits. If you want to allow fewer digits, you may use for
+ example "^[0-9]* *$" which is good for trailing spaces (up to an
+ empty field), or "^ *[0-9]* *$" which is good for leading and
+ trailing spaces around the digits.
TYPE_IPV4
- An Internet Protocol Version 4 address. This requires no addi-
- tional argument. It is checked whether or not the buffer has the
- form a.b.c.d, where a,b,c and d are numbers between 0 and 255.
- Trailing blanks in the buffer are ignored. The address itself is
- not validated. Please note that this is an ncurses extension. This
- field type may not be available in other curses implementations.
+ An Internet Protocol Version 4 address. This requires no addi-
+ tional argument. The library checks whether or not the buffer has
+ the form a.b.c.d, where a,b,c and d are numbers between 0 and 255.
+ Trailing blanks in the buffer are ignored. The address itself is
+ not validated.
+
+ This is an ncurses extension; this field type may not be available
+ in other curses implementations.
It is possible to set up new programmer-defined field types. See the
<STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG> manual page.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- The functions <STRONG>field_type</STRONG> and <STRONG>field_arg</STRONG> return <STRONG>NULL</STRONG> on error. The func-
+ The functions <STRONG>field_type</STRONG> and <STRONG>field_arg</STRONG> return <STRONG>NULL</STRONG> on error. The func-
tion <STRONG>set_field_type</STRONG> returns one of the following:
<STRONG>E_OK</STRONG> The routine succeeded.
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2010,2018 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: form_fieldtype.3x,v 1.16 2010/12/04 18:40:45 tom Exp @
+ * @Id: form_fieldtype.3x,v 1.18 2018/07/28 22:08:59 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2010,2018 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: form_hook.3x,v 1.11 2010/12/04 18:40:45 tom Exp @
+ * @Id: form_hook.3x,v 1.12 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: form_new.3x,v 1.10 2015/12/05 23:01:16 tom Exp @
+ * @Id: form_new.3x,v 1.11 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_new_page.3x,v 1.12 2018/04/28 19:58:50 tom Exp @
+ * @Id: form_new_page.3x,v 1.13 2018/07/28 21:20:04 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: form_opts.3x,v 1.12 2015/12/05 23:55:51 tom Exp @
+ * @Id: form_opts.3x,v 1.13 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2016 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2016,2018 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: form_page.3x,v 1.14 2016/10/29 22:27:24 tom Exp @
+ * @Id: form_page.3x,v 1.15 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
The function <STRONG>form_page</STRONG> returns the form's current page number.
The function <STRONG>field_index</STRONG> returns the index of the field in the field
- array of the form it is connected to. It returns <STRONG>ERR</STRONG> if the argument is
- the null pointer or the field is not connected.
+ array of the form it is connected to. It returns <STRONG>ERR</STRONG> if the argument
+ is the null pointer or the field is not connected.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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: form_post.3x,v 1.11 2017/01/07 19:25:15 tom Exp @
+ * @Id: form_post.3x,v 1.12 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: form_requestname.3x,v 1.10 2015/12/05 23:42:45 tom Exp @
+ * @Id: form_requestname.3x,v 1.11 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
The function <STRONG>form_request_name</STRONG> returns the printable name of a form
request code.
The function <STRONG>form_request_by_name</STRONG> searches in the name-table for a
- request with the given name and returns its request code. Otherwise
+ request with the given name and returns its request code. Otherwise
E_NO_MATCH is returned.
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: form_userptr.3x,v 1.14 2015/12/05 23:42:45 tom Exp @
+ * @Id: form_userptr.3x,v 1.15 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2010,2018 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: form_win.3x,v 1.13 2010/12/04 18:38:55 tom Exp @
+ * @Id: form_win.3x,v 1.14 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: infocmp.1m,v 1.71 2018/05/19 21:07:17 tom Exp @
+ * @Id: infocmp.1m,v 1.73 2018/07/28 22:08:59 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
https://invisible-island.net/ncurses/tctest.html
- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180519).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
<!--
* t
****************************************************************************
- * Copyright (c) 1999-2010,2016 Free Software Foundation, Inc. *
+ * Copyright (c) 1999-2016,2018 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: infotocap.1m,v 1.12 2016/10/15 17:26:09 tom Exp @
+ * @Id: infotocap.1m,v 1.13 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
- <STRONG>infotocap</STRONG> [<STRONG>-v</STRONG><EM>n</EM> <EM>width</EM>] [<STRONG>-V</STRONG>] [<STRONG>-1</STRONG>] [<STRONG>-w</STRONG> <EM>width</EM>] <EM>file</EM> . . .
+ <STRONG>infotocap</STRONG> [<STRONG>-v</STRONG><EM>n</EM> <EM>width</EM>] [<STRONG>-V</STRONG>] [<STRONG>-1</STRONG>] [<STRONG>-w</STRONG> <EM>width</EM>] <EM>file</EM> ...
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</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.1 (patch 20180519).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
<!--
****************************************************************************
- * Copyright (c) 2003-2006,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 2003-2010,2018 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 2003
- * @Id: key_defined.3x,v 1.6 2010/12/04 18:40:45 tom Exp @
+ * @Id: key_defined.3x,v 1.8 2018/07/28 22:08:59 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1999-2008,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1999-2010,2018 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 1999
- * @Id: keybound.3x,v 1.8 2010/12/04 18:49:20 tom Exp @
+ * @Id: keybound.3x,v 1.9 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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 1997
- * @Id: keyok.3x,v 1.12 2017/11/21 00:53:44 tom Exp @
+ * @Id: keyok.3x,v 1.13 2018/07/28 21:34:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2014,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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: menu.3x,v 1.24 2017/11/25 20:24:22 tom Exp @
+ * @Id: menu.3x,v 1.25 2018/07/28 21:34:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<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.1 (patch 20180519).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: menu_attributes.3x,v 1.13 2015/12/05 20:44:42 jmc Exp @
+ * @Id: menu_attributes.3x,v 1.14 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: menu_cursor.3x,v 1.9 2015/12/05 23:42:45 tom Exp @
+ * @Id: menu_cursor.3x,v 1.10 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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: menu_driver.3x,v 1.22 2017/11/18 23:47:37 tom Exp @
+ * @Id: menu_driver.3x,v 1.24 2018/07/28 22:08:59 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions. The support for mouse events is
+ ported on Version 7 or BSD versions. The support for mouse events is
ncurses specific.
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2015,2016 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2016,2018 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: menu_format.3x,v 1.14 2016/10/15 17:02:31 tom Exp @
+ * @Id: menu_format.3x,v 1.15 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
The function <STRONG>set_menu_format</STRONG> sets the maximum display size of the given
menu. If this size is too small to display all menu items, the menu
- will be made scrollable. If this size is larger than the menus subwin-
+ will be made scrollable. If this size is larger than the menus subwin-
dow and the subwindow is too small to display all menu items, <STRONG>post_menu</STRONG>
will fail.
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2010,2018 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: menu_hook.3x,v 1.11 2010/12/04 18:40:45 tom Exp @
+ * @Id: menu_hook.3x,v 1.12 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2012,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: menu_items.3x,v 1.11 2015/12/05 23:47:32 tom Exp @
+ * @Id: menu_items.3x,v 1.12 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: menu_mark.3x,v 1.12 2015/12/05 23:42:45 tom Exp @
+ * @Id: menu_mark.3x,v 1.13 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
string. Note that changing the length of the mark string for a menu
while the menu is posted is likely to produce unhelpful behavior.
- The default string is "-" (a dash). Calling <STRONG>set_menu_mark</STRONG> with a non-
+ The default string is "-" (a dash). Calling <STRONG>set_menu_mark</STRONG> with a non-
<STRONG>NULL</STRONG> menu argument will change this default.
The function <STRONG>menu_mark</STRONG> returns the menu's mark string (or <STRONG>NULL</STRONG> if there
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: menu_new.3x,v 1.12 2015/12/05 23:42:45 tom Exp @
+ * @Id: menu_new.3x,v 1.13 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2015,2016 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2016,2018 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: menu_opts.3x,v 1.14 2016/03/26 22:42:41 tom Exp @
+ * @Id: menu_opts.3x,v 1.15 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: menu_pattern.3x,v 1.14 2015/12/05 23:42:45 tom Exp @
+ * @Id: menu_pattern.3x,v 1.16 2018/07/28 22:08:59 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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: menu_post.3x,v 1.14 2017/01/07 19:25:15 tom Exp @
+ * @Id: menu_post.3x,v 1.16 2018/07/28 22:08:59 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
The function <STRONG>post_menu</STRONG> displays a menu to its associated subwindow. To
trigger physical display of the subwindow, use <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG> or some
equivalent <STRONG>curses</STRONG> routine (the implicit <STRONG>doupdate</STRONG> triggered by an <STRONG>curses</STRONG>
- input request will do). <STRONG>post_menu</STRONG> resets the selection status of all
+ input request will do). <STRONG>post_menu</STRONG> resets the selection status of all
items.
The function <STRONG>unpost_menu</STRONG> erases menu from its associated subwindow.
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: menu_requestname.3x,v 1.10 2015/12/05 23:42:45 tom Exp @
+ * @Id: menu_requestname.3x,v 1.11 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: menu_spacing.3x,v 1.13 2015/12/05 23:42:45 tom Exp @
+ * @Id: menu_spacing.3x,v 1.14 2018/07/28 22:20:54 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: menu_userptr.3x,v 1.11 2015/12/05 23:42:45 tom Exp @
+ * @Id: menu_userptr.3x,v 1.12 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2010,2018 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: menu_win.3x,v 1.11 2010/12/04 18:38:55 tom Exp @
+ * @Id: menu_win.3x,v 1.12 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2010,2018 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: mitem_current.3x,v 1.13 2010/12/04 18:40:45 tom Exp @
+ * @Id: mitem_current.3x,v 1.14 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: mitem_name.3x,v 1.9 2015/12/05 23:42:45 tom Exp @
+ * @Id: mitem_name.3x,v 1.10 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: mitem_new.3x,v 1.13 2015/12/05 23:42:45 tom Exp @
+ * @Id: mitem_new.3x,v 1.14 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
The function <STRONG>new_item</STRONG> allocates a new item and initializes it from the
- <STRONG>name</STRONG> and <STRONG>description</STRONG> pointers. Please notice that the item stores only
- the pointers to the name and description. Those pointers must be valid
- during the lifetime of the item. So you should be very careful with
+ <STRONG>name</STRONG> and <STRONG>description</STRONG> pointers. Please notice that the item stores only
+ the pointers to the name and description. Those pointers must be valid
+ during the lifetime of the item. So you should be very careful with
names or descriptions allocated on the stack of some routines.
- The function <STRONG>free_item</STRONG> de-allocates an item. Please notice that it is
+ The function <STRONG>free_item</STRONG> de-allocates an item. Please notice that it is
the responsibility of the application to release the memory for the
name or the description of the item.
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: mitem_opts.3x,v 1.12 2015/12/05 23:42:45 tom Exp @
+ * @Id: mitem_opts.3x,v 1.13 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: mitem_userptr.3x,v 1.12 2015/12/05 23:42:45 tom Exp @
+ * @Id: mitem_userptr.3x,v 1.13 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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: mitem_value.3x,v 1.11 2015/12/05 23:01:16 tom Exp @
+ * @Id: mitem_value.3x,v 1.12 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2010,2018 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: mitem_visible.3x,v 1.7 2010/12/04 18:40:45 tom Exp @
+ * @Id: mitem_visible.3x,v 1.8 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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: ncurses.3x,v 1.136 2017/11/18 23:48:44 tom Exp @
+ * @Id: ncurses.3x,v 1.140 2018/07/28 23:30:17 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
method of updating character screens with reasonable optimization.
This implementation is "new curses" (ncurses) and is the approved
replacement for 4.4BSD classic curses, which has been discontinued.
- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180519).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
The <STRONG>ncurses</STRONG> library emulates the curses library of System V Release 4
UNIX, and XPG4 (X/Open Portability Guide) curses (also known as XSI
<STRONG>-lncursesw</STRONG>
- You must also define <STRONG>_XOPEN_SOURCE_EXTENDED</STRONG> when compiling for the
- wide-character library to use the extended (wide-character) func-
- tions. The <STRONG>curses.h</STRONG> file which is installed for the wide-charac-
- ter library is designed to be compatible with the normal library's
- header. Only the size of the <STRONG>WINDOW</STRONG> structure differs, and very
- few applications require more than a pointer to <STRONG>WINDOW</STRONG>s. If the
- headers are installed allowing overwrite, the wide-character
- library's headers should be installed last, to allow applications
- to be built using either library from the same set of headers.
+ You must also enable the wide-character features in the header
+ file when compiling for the wide-character library to use the
+ extended (wide-character) functions. The symbol which enables
+ these features has changed since XSI Curses, Issue 4:
+
+ <STRONG>o</STRONG> Originally, the wide-character feature required the symbol
+ <STRONG>_XOPEN_SOURCE_EXTENDED</STRONG> but that was only valid for XPG4
+ (1996).
+
+ <STRONG>o</STRONG> Later, that was deemed conflicting with <STRONG>_XOPEN_SOURCE</STRONG> defined
+ to 500.
+
+ <STRONG>o</STRONG> As of mid-2018, none of the features in this implementation
+ require a <STRONG>_XOPEN_SOURCE</STRONG> feature greater than 600. However,
+ X/Open Curses, Issue 7 (2009) recommends defining it to 700.
+
+ <STRONG>o</STRONG> Alternatively, you can enable the feature by defining
+ <STRONG>NCURSES_WIDECHAR</STRONG> with the caveat that some other header file
+ than <STRONG>curses.h</STRONG> may require a specific value for <STRONG>_XOPEN_SOURCE</STRONG>
+ (or a system-specific symbol).
+
+ The <STRONG>curses.h</STRONG> file which is installed for the wide-character
+ library is designed to be compatible with the normal library's
+ header. Only the size of the <STRONG>WINDOW</STRONG> structure differs, and very
+ few applications require more than a pointer to <STRONG>WINDOW</STRONG>s.
+
+ If the headers are installed allowing overwrite, the wide-charac-
+ ter library's headers should be installed last, to allow applica-
+ tions to be built using either library from the same set of head-
+ ers.
--with-pthread
- The configure script renames the library. All of the library
- names have a "t" appended to them (before any "w" added by
+ The configure script renames the library. All of the library
+ names have a "t" appended to them (before any "w" added by
<STRONG>--enable-widec</STRONG>).
The global variables such as <STRONG>LINES</STRONG> are replaced by macros to allow
read-only access. At the same time, setter-functions are provided
- to set these values. Some applications (very few) may require
+ to set these values. Some applications (very few) may require
changes to work with this convention.
--with-shared
--with-debug
--with-profile
- The shared and normal (static) library names differ by their suf-
- fixes, e.g., <STRONG>libncurses.so</STRONG> and <STRONG>libncurses.a</STRONG>. The debug and pro-
- filing libraries add a "_g" and a "_p" to the root names respec-
+ The shared and normal (static) library names differ by their suf-
+ fixes, e.g., <STRONG>libncurses.so</STRONG> and <STRONG>libncurses.a</STRONG>. The debug and pro-
+ filing libraries add a "_g" and a "_p" to the root names respec-
tively, e.g., <STRONG>libncurses_g.a</STRONG> and <STRONG>libncurses_p.a</STRONG>.
--with-trace
- The <STRONG>trace</STRONG> function normally resides in the debug library, but it
+ The <STRONG>trace</STRONG> function normally resides in the debug library, but it
is sometimes useful to configure this in the shared library. Con-
- figure scripts should check for the function's existence rather
+ figure scripts should check for the function's existence rather
than assuming it is always in the debug library.
</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
/usr/share/tabset
- directory containing initialization files for the terminal capa-
+ directory containing initialization files for the terminal capa-
bility database /usr/share/terminfo terminal capability database
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> and related pages whose names begin "curs_" for detailed
+ <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> and related pages whose names begin "curs_" for detailed
routine descriptions.
<STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>
<STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG> for user-defined capabilities
</PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
- The <STRONG>ncurses</STRONG> library can be compiled with an option (<STRONG>-DUSE_GETCAP</STRONG>) that
- falls back to the old-style /etc/termcap file if the terminal setup
- code cannot find a terminfo entry corresponding to <STRONG>TERM</STRONG>. Use of this
- feature is not recommended, as it essentially includes an entire term-
- cap compiler in the <STRONG>ncurses</STRONG> startup code, at significant cost in core
+ The <STRONG>ncurses</STRONG> library can be compiled with an option (<STRONG>-DUSE_GETCAP</STRONG>) that
+ falls back to the old-style /etc/termcap file if the terminal setup
+ code cannot find a terminfo entry corresponding to <STRONG>TERM</STRONG>. Use of this
+ feature is not recommended, as it essentially includes an entire term-
+ cap compiler in the <STRONG>ncurses</STRONG> startup code, at significant cost in core
and startup cycles.
- The <STRONG>ncurses</STRONG> library includes facilities for capturing mouse events on
- certain terminals (including xterm). See the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual
+ The <STRONG>ncurses</STRONG> library includes facilities for capturing mouse events on
+ certain terminals (including xterm). See the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual
page for details.
The <STRONG>ncurses</STRONG> library includes facilities for responding to window resiz-
ing events, e.g., when running in an xterm. See the <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG> and
- <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual pages for details. In addition, the library may be
+ <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual pages for details. In addition, the library may be
configured with a <STRONG>SIGWINCH</STRONG> handler.
- The <STRONG>ncurses</STRONG> library extends the fixed set of function key capabilities
- of terminals by allowing the application designer to define additional
- key sequences at runtime. See the <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG> <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>, and
+ The <STRONG>ncurses</STRONG> library extends the fixed set of function key capabilities
+ of terminals by allowing the application designer to define additional
+ key sequences at runtime. See the <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG> <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>, and
<STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG> manual pages for details.
- The <STRONG>ncurses</STRONG> library can exploit the capabilities of terminals which
- implement the ISO-6429 SGR 39 and SGR 49 controls, which allow an
- application to reset the terminal to its original foreground and back-
+ The <STRONG>ncurses</STRONG> library can exploit the capabilities of terminals which
+ implement the ISO-6429 SGR 39 and SGR 49 controls, which allow an
+ application to reset the terminal to its original foreground and back-
ground colors. From the users' perspective, the application is able to
- draw colored text on a background whose color is set independently,
- providing better control over color contrasts. See the <STRONG>default_col-</STRONG>
+ draw colored text on a background whose color is set independently,
+ providing better control over color contrasts. See the <STRONG>default_col-</STRONG>
<STRONG><A HREF="default_colors.3x.html">ors(3x)</A></STRONG> manual page for details.
- The <STRONG>ncurses</STRONG> library includes a function for directing application out-
- put to a printer attached to the terminal device. See the
+ The <STRONG>ncurses</STRONG> library includes a function for directing application out-
+ put to a printer attached to the terminal device. See the
<STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- The <STRONG>ncurses</STRONG> library is intended to be BASE-level conformant with XSI
- Curses. The EXTENDED XSI Curses functionality (including color sup-
+ The <STRONG>ncurses</STRONG> library is intended to be BASE-level conformant with XSI
+ Curses. The EXTENDED XSI Curses functionality (including color sup-
port) is supported.
- A small number of local differences (that is, individual differences
- between the XSI Curses and <STRONG>ncurses</STRONG> calls) are described in <STRONG>PORTABILITY</STRONG>
+ A small number of local differences (that is, individual differences
+ between the XSI Curses and <STRONG>ncurses</STRONG> calls) are described in <STRONG>PORTABILITY</STRONG>
sections of the library man pages.
Unlike other implementations, this one checks parameters such as point-
- ers to WINDOW structures to ensure they are not null. The main reason
- for providing this behavior is to guard against programmer error. The
- standard interface does not provide a way for the library to tell an
+ ers to WINDOW structures to ensure they are not null. The main reason
+ for providing this behavior is to guard against programmer error. The
+ standard interface does not provide a way for the library to tell an
application which of several possible errors were detected. Relying on
this (or some other) extension will adversely affect the portability of
curses applications.
<STRONG>o</STRONG> The routine <STRONG>has_key</STRONG> is not part of XPG4, nor is it present in SVr4.
See the <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> manual page for details.
- <STRONG>o</STRONG> The routine <STRONG>slk_attr</STRONG> is not part of XPG4, nor is it present in
+ <STRONG>o</STRONG> The routine <STRONG>slk_attr</STRONG> is not part of XPG4, nor is it present in
SVr4. See the <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> manual page for details.
- <STRONG>o</STRONG> The routines <STRONG>getmouse</STRONG>, <STRONG>mousemask</STRONG>, <STRONG>ungetmouse</STRONG>, <STRONG>mouseinterval</STRONG>, and
- <STRONG>wenclose</STRONG> relating to mouse interfacing are not part of XPG4, nor
- are they present in SVr4. See the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for
+ <STRONG>o</STRONG> The routines <STRONG>getmouse</STRONG>, <STRONG>mousemask</STRONG>, <STRONG>ungetmouse</STRONG>, <STRONG>mouseinterval</STRONG>, and
+ <STRONG>wenclose</STRONG> relating to mouse interfacing are not part of XPG4, nor
+ are they present in SVr4. See the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for
details.
- <STRONG>o</STRONG> The routine <STRONG>mcprint</STRONG> was not present in any previous curses imple-
+ <STRONG>o</STRONG> The routine <STRONG>mcprint</STRONG> was not present in any previous curses imple-
mentation. See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
<STRONG>o</STRONG> The routine <STRONG>wresize</STRONG> is not part of XPG4, nor is it present in SVr4.
tion programs. See <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG> for the discussion of <STRONG>is_scrol-</STRONG>
<STRONG>lok</STRONG>, etc.
- <STRONG>o</STRONG> This implementation can be configured to provide rudimentary sup-
- port for multi-threaded applications. See <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG> for
+ <STRONG>o</STRONG> This implementation can be configured to provide rudimentary sup-
+ port for multi-threaded applications. See <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG> for
details.
- <STRONG>o</STRONG> This implementation can also be configured to provide a set of
- functions which improve the ability to manage multiple screens.
+ <STRONG>o</STRONG> This implementation can also be configured to provide a set of
+ functions which improve the ability to manage multiple screens.
See <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG> for details.
- In historic curses versions, delays embedded in the capabilities <STRONG>cr</STRONG>,
- <STRONG>ind</STRONG>, <STRONG>cub1</STRONG>, <STRONG>ff</STRONG> and <STRONG>tab</STRONG> activated corresponding delay bits in the UNIX
+ In historic curses versions, delays embedded in the capabilities <STRONG>cr</STRONG>,
+ <STRONG>ind</STRONG>, <STRONG>cub1</STRONG>, <STRONG>ff</STRONG> and <STRONG>tab</STRONG> activated corresponding delay bits in the UNIX
tty driver. In this implementation, all padding is done by sending NUL
- bytes. This method is slightly more expensive, but narrows the inter-
- face to the UNIX kernel significantly and increases the package's
+ bytes. This method is slightly more expensive, but narrows the inter-
+ face to the UNIX kernel significantly and increases the package's
portability correspondingly.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
- The header file <STRONG><curses.h></STRONG> automatically includes the header files
+ The header file <STRONG><curses.h></STRONG> automatically includes the header files
<STRONG><stdio.h></STRONG> and <STRONG><unctrl.h></STRONG>.
- If standard output from a <STRONG>ncurses</STRONG> program is re-directed to something
- which is not a tty, screen updates will be directed to standard error.
+ If standard output from a <STRONG>ncurses</STRONG> program is re-directed to something
+ which is not a tty, screen updates will be directed to standard error.
This was an undocumented feature of AT&T System V Release 3 curses.
</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.1 (patch 20180519).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
* authorization. *
****************************************************************************
* Author: Thomas E. Dickey
- * @Id: new_pair.3x,v 1.11 2018/04/01 00:01:17 tom Exp @
+ * @Id: new_pair.3x,v 1.13 2018/07/28 22:19:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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: panel.3x,v 1.24 2017/11/25 20:31:13 tom Exp @
+ * @Id: panel.3x,v 1.26 2018/07/28 22:56:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
currently visible panels is the stack of panels. The <STRONG>stdscr</STRONG> window is
beneath all panels, and is not considered part of the stack.
- A window is associated with every panel. The panel routines enable you
+ A window is associated with every panel. The panel routines enable you
to create, move, hide, and show panels, as well as position a panel at
any desired location in the stack.
above any other panel) and returns a pointer to the new panel.
<STRONG>update_panels</STRONG>
- refreshes the virtual screen to reflect the relations between
+ refreshes the <EM>virtual</EM> <EM>screen</EM> to reflect the relations between
the panels in the stack, but does not call <STRONG>doupdate</STRONG> to refresh
- the physical screen. Use this function and not <STRONG>wrefresh</STRONG> or
+ the <EM>physical</EM> <EM>screen</EM>. Use this function and not <STRONG>wrefresh</STRONG> or
<STRONG>wnoutrefresh</STRONG>. <STRONG>update_panels</STRONG> may be called more than once before
a call to <STRONG>doupdate</STRONG>, but <STRONG>doupdate</STRONG> is the function responsible for
- updating the physical screen.
+ updating the <EM>physical</EM> <EM>screen</EM>.
<STRONG>del_panel(pan)</STRONG>
removes the given panel from the stack and deallocates the
<STRONG>hide_panel(pan)</STRONG>
removes the given panel from the panel stack and thus hides it
- from view. The <STRONG>PANEL</STRONG> structure is not lost, merely removed from
+ from view. The <STRONG>PANEL</STRONG> structure is not lost, merely removed from
the stack.
<STRONG>panel_hidden(pan)</STRONG>
<STRONG>show_panel(pan)</STRONG>
makes a hidden panel visible by placing it on top of the panels
- in the panel stack. See COMPATIBILITY below.
+ in the panel stack. See COMPATIBILITY below.
<STRONG>top_panel(pan)</STRONG>
puts the given visible panel on top of all panels in the stack.
Reasonable care has been taken to ensure compatibility with the
native panel facility introduced in System V (inspection of the SVr4
manual pages suggests the programming interface is unchanged). The
- <STRONG>PANEL</STRONG> data structures are merely similar. The programmer is cautioned
- not to directly use <STRONG>PANEL</STRONG> fields.
+ <STRONG>PANEL</STRONG> data structures are merely similar. The programmer is cau-
+ tioned not to directly use <STRONG>PANEL</STRONG> fields.
The functions <STRONG>show_panel</STRONG> and <STRONG>top_panel</STRONG> are identical in this implemen-
tation, and work equally well with displayed or hidden panels. In the
native System V implementation, <STRONG>show_panel</STRONG> is intended for making a
hidden panel visible (at the top of the stack) and <STRONG>top_panel</STRONG> is
intended for making an already-visible panel move to the top of the
- stack. You are cautioned to use the correct function to ensure compati-
- bility with native panel libraries.
+ stack. You are cautioned to use the correct function to ensure compat-
+ ibility with native panel libraries.
</PRE><H2><a name="h2-NOTE">NOTE</a></H2><PRE>
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180519).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
<!--
****************************************************************************
- * Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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 1996-on
- * @Id: resizeterm.3x,v 1.24 2017/11/18 23:47:37 tom Exp @
+ * @Id: resizeterm.3x,v 1.25 2018/07/28 22:20:54 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: scr_dump.5,v 1.13 2018/05/19 21:10:21 tom Exp @
+ * @Id: scr_dump.5,v 1.15 2018/07/28 21:46:15 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: tabs.1,v 1.17 2018/05/19 21:07:46 tom Exp @
+ * @Id: tabs.1,v 1.19 2018/07/28 21:46:31 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
</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.1 (patch 20180519).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: term.5,v 1.29 2018/05/19 21:09:25 tom Exp @
+ * @Id: term.5,v 1.30 2018/07/28 21:46:48 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2011,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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: term.7,v 1.24 2017/02/18 17:01:51 tom Exp @
+ * @Id: term.7,v 1.26 2018/07/28 22:19:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
* Note: this must be run through tbl before nroff.
* The magic cookie on the first line triggers this under some man programs.
****************************************************************************
- * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2018 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: terminfo.head,v 1.33 2018/05/19 20:57:27 tom Exp @
+ * @Id: terminfo.head,v 1.35 2018/07/28 22:29:09 tom Exp @
* Head of terminfo man page ends here
* @Id: terminfo.tail,v 1.89 2018/05/19 21:01:52 tom Exp @
* Beginning of terminfo.tail file
<EM>Terminfo</EM> describes terminals by giving a set of capabilities which they
have, by specifying how to perform screen operations, and by specifying
padding requirements and initialization sequences. This describes
- <STRONG>ncurses</STRONG> version 6.1 (patch 20180519).
+ <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
</PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE>
<STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
<STRONG><A HREF="term.5.html">term(5)</A></STRONG>. <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180519).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
<STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG>ter-</STRONG>
<STRONG><A HREF="terminfo.5.html">minfo(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180519).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: tput.1,v 1.58 2018/05/19 21:07:46 tom Exp @
+ * @Id: tput.1,v 1.59 2018/07/28 21:30:27 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
pens to be a hardware terminal.
<STRONG>o</STRONG> The two programs write the terminal initialization strings to dif-
- ferent streams (i.e.,. the standard error for <STRONG>tset</STRONG> and the standard
+ ferent streams (i.e., the standard error for <STRONG>tset</STRONG> and the standard
output for <STRONG>tput</STRONG>).
<STRONG>Note:</STRONG> although these programs write to different streams, redirect-
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>, <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180519).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: tset.1,v 1.53 2018/05/19 21:07:46 tom Exp @
+ * @Id: tset.1,v 1.54 2018/07/28 21:30:27 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<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.1 (patch 20180519).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20180728).
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: user_caps.5,v 1.7 2018/02/17 19:07:01 tom Exp @
+ * @Id: user_caps.5,v 1.9 2018/07/28 22:05:23 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<!--
****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2018 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 1996
- * @Id: wresize.3x,v 1.14 2015/09/26 19:57:24 tom Exp @
+ * @Id: wresize.3x,v 1.15 2018/07/28 21:34:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2016 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2016,2018 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: captoinfo.1m,v 1.26 2016/10/15 17:26:09 tom Exp $
+.\" $Id: captoinfo.1m,v 1.27 2018/07/28 21:34:06 tom Exp $
.TH @CAPTOINFO@ 1M ""
.ds n 5
.ds d @TERMINFO@
.SH NAME
\fB@CAPTOINFO@\fR \- convert a \fItermcap\fR description into a \fIterminfo\fR description
.SH SYNOPSIS
-\fB@CAPTOINFO@\fR [\fB\-v\fR\fIn\fR \fIwidth\fR] [\fB\-V\fR] [\fB\-1\fR] [\fB\-w\fR \fIwidth\fR] \fIfile\fR . . .
+\fB@CAPTOINFO@\fR [\fB\-v\fR\fIn\fR \fIwidth\fR] [\fB\-V\fR] [\fB\-1\fR] [\fB\-w\fR \fIwidth\fR] \fIfile\fR ...
.SH DESCRIPTION
\fB@CAPTOINFO@\fR looks in each given text
\fIfile\fR for \fBtermcap\fR descriptions.
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: clear.1,v 1.20 2018/05/19 21:03:03 tom Exp $
+.\" $Id: clear.1,v 1.22 2018/07/28 21:45:40 tom Exp $
.TH @CLEAR@ 1 ""
.\" these would be fallbacks for DS/DE,
.\" but groff changed the meaning of the macros.
.de NE
.fi
.ft R
-.in -4
+.ie n .in -4
+.el .in -2
..
.ie \n(.g .ds `` \(lq
.el .ds `` ``
although it was cited in the Red Hat bug report (#683733)
which led to the change.
.bP
-Again, a few other terminal developers adopted the feature. But the
+Again, a few other terminal developers adopted the feature.
+But the
next relevant step was a change to the \fBclear\fP program in 2013
to incorporate this extension.
.bP
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_addch.3x,v 1.45 2018/05/19 21:03:18 tom Exp $
+.\" $Id: curs_addch.3x,v 1.46 2018/07/28 21:02:35 tom Exp $
.TH curs_addch 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
The tab interval may be altered by setting the \fBTABSIZE\fR variable.
.PP
If \fIch\fR is any other control character, it
-is drawn in \fB^\fR\fIX\fR notation. Calling \fBwinch\fR after adding a
+is drawn in \fB^\fR\fIX\fR notation.
+Calling \fBwinch\fR after adding a
control character does not return the character itself, but instead returns
the ^-representation of the control character.
.PP
.PP
The \fBechochar\fR and \fBwechochar\fR routines are equivalent to a call to
\fBaddch\fR followed by a call to \fBrefresh\fR(3X), or a call to \fBwaddch\fR
-followed by a call to \fBwrefresh\fR. The knowledge that only a single
+followed by a call to \fBwrefresh\fR.
+The knowledge that only a single
character is being output is used and, for non-control characters, a
considerable performance gain may be seen by using these routines instead of
their equivalents.
.SS Line Graphics
The following variables may be used to add line drawing characters to the
-screen with routines of the \fBaddch\fR family. The default character listed
+screen with routines of the \fBaddch\fR family.
+The default character listed
below is used if the \fBacsc\fR capability does not define a terminal-specific
replacement for it,
or if the terminal and locale configuration requires Unicode but the
ACS_NEQUAL,
ACS_STERLING)
were not documented in
-any publicly released System V. However, many publicly available terminfos
+any publicly released System V.
+However, many publicly available terminfos
include \fBacsc\fR strings in which their key characters (pryz{|}) are
embedded, and a second-hand list of their character descriptions has come
-to light. The ACS-prefixed names for them were invented for \fBncurses\fR(3X).
+to light.
+The ACS-prefixed names for them were invented for \fBncurses\fR(3X).
.LP
The \fIdisplayed\fP values for the \fIACS_\fP and \fIWACS_\fP constants
depend on
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_attr.3x,v 1.62 2017/12/16 20:16:07 tom Exp $
+.\" $Id: curs_attr.3x,v 1.64 2018/07/28 22:15:59 tom Exp $
.TH curs_attr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.de NE
.fi
.ft R
-.in -4
+.ie n .in -4
+.el .in -2
..
.de bP
.ie n .IP \(bu 4
It holds the common video attributes (such as bold, reverse),
as well as a few bits for color.
Those bits correspond to the \fBA_COLOR\fP symbol.
-The \fBCOLOR_PAIR\fP macro provides a value which can be OR'd into
+The \fBCOLOR_PAIR\fP macro provides a value which can be OR'd into
the attribute parameter.
For example,
as long as that value fits into the \fBA_COLOR\fP mask,
However, if the value does not fit, then the \fBCOLOR_PAIR\fP macro
uses only the bits that fit.
For example, because in ncurses \fBA_COLOR\fP has eight (8) bits,
-then \fBCOLOR_PAIR(259)\fP is 4 (259\-255).
+then \fBCOLOR_PAIR(\fP\fI259\fP\fB)\fP is 4
+(i.e., 259 is 4 more than the limit 255).
.PP
The \fBPAIR_NUMBER\fP macro extracts a pair number from an \fBint\fP
(or \fBchtype\fP).
number is less than 256.
The alternate functions such as \fBcolor_set\fP can pass a color pair
value directly.
-However, ncurses ABI 4 and 5 simply OR this value within the alternate functions.
+However, ncurses ABI 4 and 5 simply OR this value
+within the alternate functions.
You must use ncurses ABI 6 to support more than 256 color pairs.
.\" ---------------------------------------------------------------------------
.SH HISTORY
1992 HPUX 9 32 no 8 SVr2 curses
1992 AIX 3.2 32 no 23 SVr2 curses
1994 OSF/1 r3 32 no 23 SVr2 curses
-1995 HP-UX 10.00 32 6 16 SVr3 \*(``curses_colr\*(''
+1995 HP-UX 10.00 32 6 16 SVr3 \*(``curses_colr\*(''
1995 HP-UX 10.00 32 6 8 SVr4, X/Open curses
1995 Solaris 5.4 32/64 7 16 X/Open curses
1996 AIX 4.2 32 7 16 X/Open curses
The \fIxpg4\fP (X/Open) curses was developed by MKS from 1990 to 1995.
Sun's copyright began in 1996.
.bP
-Sun updated the X/Open curses interface after 64-bit support was introduced in 1997,
+Sun updated the X/Open curses interface
+after 64-bit support was introduced in 1997,
but did not modify the SVr4 curses interface.
.PP
Regarding U/Win,
.bP
-Development of the curses library began in 1991, stopped in 2000.
+Development of the curses library began in 1991, stopped in 2000.
.bP
Color support was added in 1998.
.bP
.PP
Once X/Open curses was adopted in the mid-1990s, the constraint of
a 32-bit interface with many colors and wide-characters for \fBchtype\fP
-became a moot point. The \fBcchar_t\fP structure (whose size and
+became a moot point.
+The \fBcchar_t\fP structure (whose size and
members are not specified in X/Open Curses) could be extended as needed.
.PP
Other interfaces are rarely used now:
.\"***************************************************************************
-.\" Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2010,2018 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_beep.3x,v 1.12 2010/12/04 18:36:44 tom Exp $
+.\" $Id: curs_beep.3x,v 1.13 2018/07/28 21:34:06 tom Exp $
.TH curs_beep 3X ""
.SH NAME
\fBbeep\fR, \fBflash\fR \- \fBcurses\fR bell and screen flash routines
.SH DESCRIPTION
The \fBbeep\fR and \fBflash\fR routines are used to alert the terminal user.
The routine \fBbeep\fR sounds an audible alarm on the terminal, if possible;
-otherwise it flashes the screen (visible bell). The routine \fBflash\fR
-flashes the screen, and if that is not possible, sounds the alert. If neither
-alert is possible, nothing happens. Nearly all terminals have an audible alert
+otherwise it flashes the screen (visible bell).
+The routine \fBflash\fR
+flashes the screen, and if that is not possible, sounds the alert.
+If neither
+alert is possible, nothing happens.
+Nearly all terminals have an audible alert
(bell or beep), but only some can flash the screen.
.SH RETURN VALUE
These routines return \fBOK\fR if they succeed in beeping or flashing,
.\"***************************************************************************
-.\" Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_bkgd.3x,v 1.25 2017/11/18 23:56:00 tom Exp $
+.\" $Id: curs_bkgd.3x,v 1.26 2018/07/28 21:34:06 tom Exp $
.de bP
.ie n .IP \(bu 4
.el .IP \(bu 2
The window background is a \fBchtype\fR consisting of
any combination of attributes (i.e., rendition) and a character.
The attribute part of the background is combined (OR'ed) with all non-blank
-characters that are written into the window with \fBwaddch\fR. Both
+characters that are written into the window with \fBwaddch\fR.
+Both
the character and attribute parts of the background are combined with
-the blank characters. The background becomes a property of the
+the blank characters.
+The background becomes a property of the
character and moves with the character through any scrolling and
insert/delete line/character operations.
.PP
.\"***************************************************************************
-.\" Copyright (c) 2002-2015,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 2002-2017,2018 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_bkgrnd.3x,v 1.8 2017/11/18 23:47:37 tom Exp $
+.\" $Id: curs_bkgrnd.3x,v 1.9 2018/07/28 21:34:06 tom Exp $
.de bP
.ie n .IP \(bu 4
.el .IP \(bu 2
The window background is a \fBcchar_t\fR consisting of
any combination of attributes (i.e., rendition) and a complex character.
The attribute part of the background is combined (OR'ed) with all non-blank
-characters that are written into the window with \fBwaddch\fR. Both
+characters that are written into the window with \fBwaddch\fR.
+Both
the character and attribute parts of the background are combined with
the blank characters.
The background becomes a property of the
.\"***************************************************************************
-.\" Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2010,2018 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_border.3x,v 1.22 2010/12/04 18:36:44 tom Exp $
+.\" $Id: curs_border.3x,v 1.23 2018/07/28 21:34:06 tom Exp $
.TH curs_border 3X ""
.na
.hy 0
\fIverch\fR\fB,\fR \fIhorch\fR\fB,\fR \fIhorch\fR\fB, 0, 0, 0, 0)\fR.
.PP
The \fBhline\fR and \fBwhline\fR functions draw a horizontal (left to right)
-line using \fIch\fR starting at the current cursor position in the window. The
-current cursor position is not changed. The line is at most \fIn\fR characters
+line using \fIch\fR starting at the current cursor position in the window.
+The
+current cursor position is not changed.
+The line is at most \fIn\fR characters
long, or as many as fit into the window.
.PP
The \fBvline\fR and \fBwvline\fR functions draw a vertical (top to bottom) line
-using \fIch\fR starting at the current cursor position in the window. The
-current cursor position is not changed. The line is at most \fIn\fR characters
+using \fIch\fR starting at the current cursor position in the window.
+The
+current cursor position is not changed.
+The line is at most \fIn\fR characters
long, or as many as fit into the window.
.SH RETURN VALUE
-All routines return the integer \fBOK\fR. The SVr4.0 manual says "or a
+All routines return the integer \fBOK\fR.
+The SVr4.0 manual says "or a
non-negative integer if \fBimmedok\fR is set", but this appears to be an error.
.PP
X/Open does not define any error conditions.
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2016 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2016,2018 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_clear.3x,v 1.15 2016/10/15 17:02:31 tom Exp $
+.\" $Id: curs_clear.3x,v 1.16 2018/07/28 21:34:06 tom Exp $
.TH curs_clear 3X ""
.na
.hy 0
and repainted from scratch.
.PP
The \fBclrtobot\fR and \fBwclrtobot\fR routines erase from the cursor to the
-end of screen. That is, they erase all lines below the cursor in the window.
+end of screen.
+That is, they erase all lines below the cursor in the window.
Also, the current line to the right of the cursor, inclusive, is erased.
.PP
The \fBclrtoeol\fR and \fBwclrtoeol\fR routines erase the current line
Note that \fBerase\fR, \fBwerase\fR, \fBclear\fR, \fBwclear\fR,
\fBclrtobot\fR, and \fBclrtoeol\fR may be macros.
.SH PORTABILITY
-These functions are described in the XSI Curses standard, Issue 4. The
+These functions are described in the XSI Curses standard, Issue 4.
+The
standard specifies that they return \fBERR\fR on failure, but specifies no
error conditions.
.PP
Some historic curses implementations had, as an undocumented feature, the
ability to do the equivalent of \fBclearok(..., 1)\fR by saying
-\fBtouchwin(stdscr)\fR or \fBclear(stdscr)\fR. This will not work under
+\fBtouchwin(stdscr)\fR or \fBclear(stdscr)\fR.
+This will not work under
ncurses.
.PP
This implementation, and others such as Solaris,
.\"***************************************************************************
-.\" Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_color.3x,v 1.53 2017/11/20 01:03:45 tom Exp $
+.\" $Id: curs_color.3x,v 1.55 2018/07/28 22:15:59 tom Exp $
.TH curs_color 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.fi
.PP
Some terminals support more than the eight (8) \*(``ANSI\*('' colors.
-There are no standard names for those additional colors.
+There are no standard names for those additional colors.
.SH VARIABLES
.SS COLORS
is initialized by \fBstart_color\fP to the maximum number of colors
a special color value \fB\-1\fP is used in certain extended functions
to denote the \fIdefault color\fP (see \fBuse_default_colors\fP).
.bP
-\fBCOLOR_PAIRS\fP corresponds to the terminal database's \fBmax_pairs\fP capability,
+\fBCOLOR_PAIRS\fP corresponds to
+the terminal database's \fBmax_pairs\fP capability,
(see \fBterminfo\fR(\*n)).
.bP
legal color pair values are in the range \fB1\fP to \fBCOLOR_PAIRS\-1\fP,
.SS init_pair
.PP
The \fBinit_pair\fR routine changes the definition of a color-pair.
-It takes three arguments: the number of the color-pair to be changed, the foreground
+It takes three arguments:
+the number of the color-pair to be changed, the foreground
color number, and the background color number.
For portable applications:
.bP
.SS init_color
.PP
The \fBinit_color\fR routine changes the definition of a color.
-It takes four arguments: the number of the color to be changed followed by three RGB values
+It takes four arguments:
+the number of the color to be changed followed by three RGB values
(for the amounts of red, green, and blue components).
.bP
The first argument must be a legal color value;
.bP
The values that are stored at the addresses pointed to by the
last three arguments are in the range
-\fB0\fP (no component) through \fB1000\fP (maximum amount of component), inclusive.
+\fB0\fP (no component) through \fB1000\fP
+(maximum amount of component), inclusive.
.SS pair_content
.PP
The \fBpair_content\fR routine allows programmers to find out what colors a
or \fBFALSE\fR.
.PP
All other routines return the integer \fBERR\fR upon failure and an \fBOK\fR
-(SVr4 specifies only \*(``an integer value other than \fBERR\fR\*('') upon successful
-completion.
+(SVr4 specifies only \*(``an integer value
+other than \fBERR\fR\*('') upon successful completion.
.PP
X/Open defines no error conditions.
This implementation will return \fBERR\fR on attempts to
use color values outside the range \fB0\fP to \fBCOLORS\fP\-1
(except for the default colors extension),
or use color pairs outside the range \fB0\fP to \fBCOLOR_PAIRS\-1\fP.
-Color values used in \fBinit_color\fP must be in the range \fB0\fP to \fB1000\fP.
+Color values used in \fBinit_color\fP must be
+in the range \fB0\fP to \fB1000\fP.
An error is returned from all functions
if the terminal has not been initialized.
An error is returned from secondary functions such as \fBinit_pair\fP
.RE
.SH NOTES
In the \fBncurses\fR implementation, there is a separate color activation flag,
-color palette, color pairs table, and associated \fBCOLORS\fP and \fBCOLOR_PAIRS\fP counts
+color palette, color pairs table,
+and associated \fBCOLORS\fP and \fBCOLOR_PAIRS\fP counts
for each screen; the \fBstart_color\fR function only affects the current
screen.
The SVr4/XSI interface is not really designed with this in mind, and
the background color used when parts of a window are blanked by erasing or
scrolling operations, see \fBcurs_bkgd\fR(3X).
.PP
-Several caveats apply on older x86 machines (e.g., i386, i486) with VGA-compatible graphics:
+Several caveats apply on older x86 machines
+(e.g., i386, i486) with VGA-compatible graphics:
.bP
COLOR_YELLOW is actually brown.
To get yellow, use COLOR_YELLOW combined with the \fBA_BOLD\fR attribute.
.\"***************************************************************************
-.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2010,2018 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_delch.3x,v 1.11 2010/12/04 18:36:44 tom Exp $
+.\" $Id: curs_delch.3x,v 1.12 2018/07/28 21:34:06 tom Exp $
.TH curs_delch 3X ""
.SH NAME
\fBdelch\fR,
.SH DESCRIPTION
These routines delete the character under the cursor; all characters to the
right of the cursor on the same line are moved to the left one position and the
-last character on the line is filled with a blank. The cursor position does
-not change (after moving to \fIy\fR, \fIx\fR, if specified). (This does not
+last character on the line is filled with a blank.
+The cursor position does
+not change (after moving to \fIy\fR, \fIx\fR, if specified).
+(This does not
imply use of the hardware delete character feature.)
.SH RETURN VALUE
All routines return the integer \fBERR\fR upon failure and an \fBOK\fR (SVr4
.SH NOTES
Note that \fBdelch\fR, \fBmvdelch\fR, and \fBmvwdelch\fR may be macros.
.SH PORTABILITY
-These functions are described in the XSI Curses standard, Issue 4. The
+These functions are described in the XSI Curses standard, Issue 4.
+The
standard specifies that they return \fBERR\fR on failure, but specifies no
error conditions.
.SH SEE ALSO
.\"***************************************************************************
-.\" Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2010,2018 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_deleteln.3x,v 1.13 2010/12/04 18:36:44 tom Exp $
+.\" $Id: curs_deleteln.3x,v 1.14 2018/07/28 21:34:06 tom Exp $
.TH curs_deleteln 3X ""
.SH NAME
\fBdeleteln\fR,
.SH DESCRIPTION
The \fBdeleteln\fR and \fBwdeleteln\fR routines delete the line under the
cursor in the window; all lines below the current line are moved up one line.
-The bottom line of the window is cleared. The cursor position does not change.
+The bottom line of the window is cleared.
+The cursor position does not change.
.PP
The \fBinsdelln\fR and \fBwinsdelln\fR routines, for positive \fIn\fR, insert
-\fIn\fR lines into the specified window above the current line. The \fIn\fR
-bottom lines are lost. For negative \fIn\fR, delete \fIn\fR lines (starting
-with the one under the cursor), and move the remaining lines up. The bottom
-\fIn\fR lines are cleared. The current cursor position remains the same.
+\fIn\fR lines into the specified window above the current line.
+The \fIn\fR
+bottom lines are lost.
+For negative \fIn\fR, delete \fIn\fR lines (starting
+with the one under the cursor), and move the remaining lines up.
+The bottom
+\fIn\fR lines are cleared.
+The current cursor position remains the same.
.PP
The \fBinsertln\fR and \fBwinsertln\fR routines insert a blank line above the
current line and the bottom line is lost.
In this implementation,
if the window parameter is null, an error is returned.
.SH PORTABILITY
-These functions are described in the XSI Curses standard, Issue 4. The
+These functions are described in the XSI Curses standard, Issue 4.
+The
standard specifies that they return \fBERR\fR on failure, but specifies no
error conditions.
.SH NOTES
Note that all but \fBwinsdelln\fR may be macros.
.PP
These routines do not require a hardware line delete or insert feature in the
-terminal. In fact, they will not use hardware line delete/insert unless
+terminal.
+In fact, they will not use hardware line delete/insert unless
\fBidlok(..., TRUE)\fR has been set on the current window.
.SH SEE ALSO
\fBcurses\fR(3X)
.\"***************************************************************************
-.\" Copyright (c) 1999-2010,2016 Free Software Foundation, Inc. *
+.\" Copyright (c) 1999-2016,2018 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 1999-on
.\"
-.\" $Id: curs_extend.3x,v 1.21 2016/10/15 16:52:48 tom Exp $
+.\" $Id: curs_extend.3x,v 1.22 2018/07/28 21:34:06 tom Exp $
.TH curs_extend 3X ""
.SH NAME
\fBcurses_version\fP,
\fBuse_extended_names\fP returns the previous state, allowing you to
save this and restore it.
.SH PORTABILITY
-These routines are specific to ncurses. They were not supported on
-Version 7, BSD or System V implementations. It is recommended that
+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 conditioned using NCURSES_VERSION.
.SH SEE ALSO
\fBcurs_getch\fR(3X),
.\"***************************************************************************
-.\" Copyright (c) 2002-2016,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 2002-2017,2018 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_get_wch.3x,v 1.10 2017/11/18 23:56:00 tom Exp $
+.\" $Id: curs_get_wch.3x,v 1.11 2018/07/28 22:20:54 tom Exp $
.TH curs_get_wch 3X ""
.na
.hy 0
of 8-bit characters.
Their names begin with \fBKEY_\fR.
.bP
-Other (user-defined) function keys which may be defined using \fBdefine_key\fP(3X)
-have no names, but also are expected to have values outside the range of
-8-bit characters.
+Other (user-defined) function keys
+which may be defined using \fBdefine_key\fP(3X) have no names,
+but also are expected to have values outside the range of 8-bit characters.
.PP
The
\fBunget_wch\fR
.\"***************************************************************************
-.\" Copyright (c) 2002-2012,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 2002-2017,2018 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_get_wstr.3x,v 1.12 2017/11/21 00:45:48 tom Exp $
+.\" $Id: curs_get_wstr.3x,v 1.14 2018/07/28 22:15:59 tom Exp $
.TH curs_get_wstr 3X ""
.na
.hy 0
is as though a series of calls
to
\fBget_wch\fR(3X)
-were made, until a newline, other end-of-line, or end-of-file condition is processed.
-An end-of-file condition is represented by \fBWEOF\fR, as defined in \fB<wchar.h>\fR.
-The newline and end-of-line conditions are represented by the \fB\\n\fR \fBwchar_t\fR value.
+were made, until a newline, other end-of-line,
+or end-of-file condition is processed.
+An end-of-file condition is represented by \fBWEOF\fR,
+as defined in \fB<wchar.h>\fR.
+The newline and end-of-line conditions are represented
+by the \fB\\n\fR \fBwchar_t\fR value.
In all instances, the end of the string is terminated by a null \fBwchar_t\fR.
The routine places resulting values in the area pointed to by \fIwstr\fR.
.PP
-The user's erase and kill characters are interpreted. If keypad
+The user's erase and kill characters are interpreted.
+If keypad
mode is on for the window, \fBKEY_LEFT\fR and \fBKEY_BACKSPACE\fR
are both considered equivalent to the user's kill character.
.PP
-Characters input are echoed only if \fBecho\fR is currently on. In that case,
+Characters input are echoed only if \fBecho\fR is currently on.
+In that case,
backspace is echoed as deletion of the previous character (typically a left
motion).
.PP
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_getch.3x,v 1.51 2017/11/21 00:45:48 tom Exp $
+.\" $Id: curs_getch.3x,v 1.53 2018/07/28 22:15:59 tom Exp $
.TH curs_getch 3X ""
.na
.hy 0
of 8-bit characters.
Their names begin with \fBKEY_\fR.
.bP
-Other (user-defined) function keys which may be defined using \fBdefine_key\fP(3X)
+Other (user-defined) function keys which may be defined
+using \fBdefine_key\fP(3X)
have no names, but also are expected to have values outside the range of
8-bit characters.
.PP
For this reason, many terminals experience a delay between the time
a user presses the escape key and the escape is returned to the program.
.PP
-In \fBncurses\fP, the timer normally expires after the value in \fBESCDELAY\fP (see \fBcurs_variables\fP(3X)).
+In \fBncurses\fP, the timer normally expires after
+the value in \fBESCDELAY\fP (see \fBcurs_variables\fP(3X)).
If \fBnotimeout\fP is \fBTRUE\fP, the timer does not expire;
it is an infinite (or very large) value.
Because function keys usually begin with an escape character,
keypad code looks for a following function-key sequence.
.PP
Some keys may be the same as commonly used control
-keys, e.g., \fBKEY_ENTER\fP versus control/M, \fBKEY_BACKSPACE\fP versus control/H.
+keys, e.g.,
+\fBKEY_ENTER\fP versus control/M,
+\fBKEY_BACKSPACE\fP versus control/H.
Some curses implementations may differ according to whether they
treat these control keys specially (and ignore the terminfo), or
use the terminfo definitions.
terminfo capabilities, but no higher-level functions use the feature.
The implementation in ncurses is an extension.
.PP
-\fBKEY_RESIZE\fP is an extension first implemented for ncurses.
+\fBKEY_RESIZE\fP is an extension first implemented for ncurses.
NetBSD curses later added this extension.
.PP
Programmers concerned about portability should be prepared for either of two
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_getstr.3x,v 1.23 2017/11/21 00:45:48 tom Exp $
+.\" $Id: curs_getstr.3x,v 1.24 2018/07/28 21:34:56 tom Exp $
.TH curs_getstr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.SH DESCRIPTION
The function \fBgetstr\fR is equivalent to a series of calls to \fBgetch\fR,
until a newline or carriage return is received (the terminating character is
-not included in the returned string). The resulting value is placed in the
+not included in the returned string).
+The resulting value is placed in the
area pointed to by the character pointer \fIstr\fR.
.PP
\fBwgetnstr\fR reads at most \fIn\fR characters, thus preventing a possible
-overflow of the input buffer. Any attempt to enter more characters (other
-than the terminating newline or carriage return) causes a beep. Function
-keys also cause a beep and are ignored. The \fBgetnstr\fR function reads
+overflow of the input buffer.
+Any attempt to enter more characters (other
+than the terminating newline or carriage return) causes a beep.
+Function
+keys also cause a beep and are ignored.
+The \fBgetnstr\fR function reads
from the \fIstdscr\fR default window.
.PP
-The user's erase and kill characters are interpreted. If keypad
+The user's erase and kill characters are interpreted.
+If keypad
mode is on for the window, \fBKEY_LEFT\fR and \fBKEY_BACKSPACE\fR
are both considered equivalent to the user's kill character.
.PP
-Characters input are echoed only if \fBecho\fR is currently on. In that case,
+Characters input are echoed only if \fBecho\fR is currently on.
+In that case,
backspace is echoed as deletion of the previous character (typically a left
motion).
.SH RETURN VALUE
.\"***************************************************************************
-.\" Copyright (c) 2002-2010,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 2002-2017,2018 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_in_wch.3x,v 1.6 2017/11/21 00:53:44 tom Exp $
+.\" $Id: curs_in_wch.3x,v 1.7 2018/07/28 22:20:54 tom Exp $
.TH curs_in_wch 3X ""
.SH NAME
\fBin_wch\fR,
.SH RETURN VALUE
No errors are defined in the XSI Curses standard.
This implementation checks for null pointers, returns \fBERR\fP in that case.
-Also, the \fImv\fR routines check for error moving the cursor, returning \fBERR\fP
-in that case.
+Also, the \fImv\fR routines check for error moving the cursor,
+returning \fBERR\fP in that case.
Otherwise they return \fBOK\fP.
.PP
Functions with a "mv" prefix first perform a cursor movement using
.\"***************************************************************************
-.\" Copyright (c) 2002-2012,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 2002-2017,2018 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_in_wchstr.3x,v 1.10 2017/11/21 00:53:44 tom Exp $
+.\" $Id: curs_in_wchstr.3x,v 1.11 2018/07/28 21:34:56 tom Exp $
.TH curs_in_wchstr 3X ""
.na
.hy 0
\fBmvwin_wchstr\fR
or
\fBwin_wchstr\fR
-causes undefined results. Therefore, the use of
+causes undefined results.
+Therefore, the use of
\fBin_wchnstr\fR,
\fBmvin_wchnstr\fR,
\fBmvwin_wchnstr\fR, or
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_inch.3x,v 1.20 2017/11/18 23:47:37 tom Exp $
+.\" $Id: curs_inch.3x,v 1.21 2018/07/28 21:34:06 tom Exp $
.TH curs_inch 3X ""
.de bP
.ie n .IP \(bu 4
.br
.SH DESCRIPTION
These routines return the character, of type \fBchtype\fR, at the current
-position in the named window. If any attributes are set for that position,
-their values are OR'ed into the value returned. Constants defined in
+position in the named window.
+If any attributes are set for that position,
+their values are OR'ed into the value returned.
+Constants defined in
\fB<curses.h>\fR can be used with the \fB&\fR (logical AND) operator to
extract the character or attributes alone.
.
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_inchstr.3x,v 1.17 2017/11/18 23:47:37 tom Exp $
+.\" $Id: curs_inchstr.3x,v 1.18 2018/07/28 21:34:06 tom Exp $
.TH curs_inchstr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.SH DESCRIPTION
These routines return a NULL-terminated array of \fBchtype\fR quantities,
starting at the current cursor position in the named window and ending at the
-right margin of the window. The four functions with \fIn\fR as
+right margin of the window.
+The four functions with \fIn\fR as
the last argument, return a leading substring at most \fIn\fR characters long
(exclusive of the trailing (chtype)0).
Constants defined in \fB<curses.h>\fR can be used with the \fB&\fR (logical
\fBwmove\fP, and return an error if the position is outside the window,
or if the window pointer is null.
.SH NOTES
-Note that all routines except \fBwinchnstr\fR may be macros. SVr4 does not
+Note that all routines except \fBwinchnstr\fR may be macros.
+SVr4 does not
document whether the result string is zero-terminated; it does not document
whether a length limit argument includes any trailing 0; and it does not
document the meaning of the return value.
.SH PORTABILITY
-These functions are described in the XSI Curses standard, Issue 4. It is no
-more specific than the SVr4 documentation on the trailing 0. It does specify
+These functions are described in the XSI Curses standard, Issue 4.
+It is no
+more specific than the SVr4 documentation on the trailing 0.
+It does specify
that the successful return of the functions is \fBOK\fR.
.SH SEE ALSO
\fBcurses\fR(3X), \fBcurs_inch\fR(3X).
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_initscr.3x,v 1.30 2018/04/07 20:54:12 tom Exp $
+.\" $Id: curs_initscr.3x,v 1.31 2018/07/28 22:15:59 tom Exp $
.TH curs_initscr 3X ""
.de bP
.ie n .IP \(bu 4
.PP
The initscr code determines the terminal type and initializes all \fBcurses\fR
data structures.
-\fBinitscr\fR also causes the first call to \fBrefresh\fR(3X) to clear the screen.
+\fBinitscr\fR also causes the first call to \fBrefresh\fR(3X)
+to clear the screen.
If errors occur, \fBinitscr\fR writes an appropriate error
message to standard error and exits;
otherwise, a pointer is returned to \fBstdscr\fR.
call \fBinitscr\fR more than once:
.bP
The portable way to use \fBinitscr\fP is once only,
-using \fBrefresh\fP (see curs_refresh(3X)) to restore the screen after \fBendwin\fP.
+using \fBrefresh\fP (see curs_refresh(3X))
+to restore the screen after \fBendwin\fP.
.bP
This implementation allows using \fBinitscr\fP after \fBendwin\fP.
.PP
value \*(``unknown\*('',
which normally corresponds to a terminal entry with the \fIgeneric\fP
(\fIgn\fP) capability.
-Generic entries are detected by \fBsetupterm\fP (see curs_terminfo(3X)) and cannot be
-used for full-screen operation.
+Generic entries are detected by \fBsetupterm\fP
+(see curs_terminfo(3X)) and cannot be used for full-screen operation.
Other implementations may handle a missing/empty TERM variable differently.
.SS Signal Handlers
.PP
life of the process or until the process changes the disposition of
the signal.\fP
.PP
-\fINone of the Curses functions are required to be safe with respect to signals \fP...
+\fINone of the Curses functions are required to be safe
+with respect to signals \fP...
.RE
.PP
This implementation establishes signal handlers during initialization,
When resuming the process, this implementation discards pending
input with \fBflushinput\fP (see curs_util(3X)), and repaints the screen
assuming that it has been completely altered.
-It also updates the saved terminal modes with \fBdef_shell_mode\fP (see curs_kernel(3X)).
+It also updates the saved terminal modes with \fBdef_shell_mode\fP
+(see \fBcurs_kernel\fR(3X)).
.TP 5
.B SIGWINCH
This handles the window-size changes which were ignored in
.\"***************************************************************************
-.\" Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_inopts.3x,v 1.26 2017/11/21 00:47:10 tom Exp $
+.\" $Id: curs_inopts.3x,v 1.27 2018/07/28 22:20:54 tom Exp $
.TH curs_inopts 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
\fBqiflush\fR, \fBtimeout\fR, and \fBwtimeout\fR may be macros.
.PP
The \fBnoraw\fR and \fBnocbreak\fR calls follow historical practice in that
-they attempt to restore to normal (\*(``cooked\*('') mode from raw and cbreak modes
-respectively.
+they attempt to restore to normal (\*(``cooked\*('') mode
+from raw and cbreak modes respectively.
Mixing raw/noraw and cbreak/nocbreak calls leads to tty driver
control states that are hard to predict or understand; it is not recommended.
.SH SEE ALSO
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_insch.3x,v 1.14 2017/11/21 00:53:44 tom Exp $
+.\" $Id: curs_insch.3x,v 1.15 2018/07/28 21:34:56 tom Exp $
.TH curs_insch 3X ""
.SH NAME
\fBinsch\fR,
.br
.SH DESCRIPTION
These routines insert the character \fIch\fR before the character under the
-cursor. All characters to the right of the cursor are moved one space to the
+cursor.
+All characters to the right of the cursor are moved one space to the
right, with the possibility of the rightmost character on the line being lost.
The insertion operation does not change the cursor position.
.SH RETURN VALUE
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_instr.3x,v 1.18 2017/11/18 23:47:37 tom Exp $
+.\" $Id: curs_instr.3x,v 1.19 2018/07/28 21:34:06 tom Exp $
.TH curs_instr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.SH DESCRIPTION
These routines return a string of characters in \fIstr\fR, extracted starting
at the current cursor position in the named window.
-Attributes are stripped from the characters. The four
+Attributes are stripped from the characters.
+The four
functions with \fIn\fR as the last argument return a leading substring at most
\fIn\fR characters long (exclusive of the trailing NUL).
.SH RETURN VALUE
.\"***************************************************************************
-.\" Copyright (c) 2002-2012,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 2002-2017,2018 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_inwstr.3x,v 1.9 2017/10/28 23:42:58 tom Exp $
+.\" $Id: curs_inwstr.3x,v 1.11 2018/07/28 22:19:56 tom Exp $
.TH curs_inwstr 3X ""
.SH NAME
\fBinwstr\fR,
These routines return a string of \fBwchar_t\fR wide characters in \fIwstr\fR,
extracted starting at the current cursor position in the named window.
.PP
-The four functions with \fIn\fR as the last argument return a leading substring at most
-\fIn\fR characters long (exclusive of the trailing NUL).
+The four functions with \fIn\fR as the last argument return
+a leading substring at most \fIn\fR characters long
+(exclusive of the trailing NUL).
Transfer stops at the end of the current line, or when \fIn\fR characters have
been stored at the location referenced by \fIwstr\fR.
.PP
.SH RETURN VALUE
All routines return
\fBERR\fR
-upon failure. Upon
+upon failure.
+Upon
successful completion, the *\fBinwstr\fR
routines return
\fBOK\fR, and the *\fBinnwstr\fR
.\"***************************************************************************
-.\" Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_kernel.3x,v 1.23 2017/11/18 23:47:37 tom Exp $
+.\" $Id: curs_kernel.3x,v 1.26 2018/07/28 23:04:00 tom Exp $
+.ie \n(.g .ds `` \(lq
+.el .ds `` ``
+.ie \n(.g .ds '' \(rq
+.el .ds '' ''
.de bP
.ie n .IP \(bu 4
.el .IP \(bu 2
\fBint napms(int \fP\fIms\fP\fB);\fR
.br
.SH DESCRIPTION
-The following routines give low-level access to various \fBcurses\fR
-capabilities. These routines typically are used inside library
-routines.
+The following routines give low-level access
+to various \fBcurses\fR capabilities.
+These routines typically are used inside library routines.
.SS def_prog_mode, def_shell_mode
.PP
The \fBdef_prog_mode\fR and \fBdef_shell_mode\fR routines save the
current terminal modes as the "program" (in \fBcurses\fR) or "shell"
(not in \fBcurses\fR) state for use by the \fBreset_prog_mode\fR and
-\fBreset_shell_mode\fR routines. This is done automatically by
-\fBinitscr\fR. There is one such save area for each screen context
+\fBreset_shell_mode\fR routines.
+This is done automatically by \fBinitscr\fR.
+There is one such save area for each screen context
allocated by \fBnewterm\fR.
.SS reset_prog_mode, reset_shell_mode
.PP
The \fBreset_prog_mode\fR and \fBreset_shell_mode\fR routines restore
the terminal to "program" (in \fBcurses\fR) or "shell" (out of
-\fBcurses\fR) state. These are done automatically by \fBendwin\fR(3X)
-and, after an \fBendwin\fR, by \fBdoupdate\fR, so they normally are
-not called.
+\fBcurses\fR) state.
+These are done automatically by \fBendwin\fR(3X) and,
+after an \fBendwin\fR, by \fBdoupdate\fR,
+so they normally are not called.
.SS resetty, savetty
.PP
The \fBresetty\fR and \fBsavetty\fR routines save and restore the
-state of the terminal modes. \fBsavetty\fR saves the current state in
+state of the terminal modes.
+\fBsavetty\fR saves the current state in
a buffer and \fBresetty\fR restores the state to what it was at the
last call to \fBsavetty\fR.
.SS getsyx
.PP
-The \fBgetsyx\fR routine returns the current coordinates of the virtual screen
-cursor in \fIy\fR and \fIx\fR. If \fBleaveok\fR is currently \fBTRUE\fR, then
-\fB\-1\fR,\fB\-1\fR is returned. If lines have been removed from the top of the
+The \fBgetsyx\fR routine returns the current coordinates
+of the \fIvirtual screen\fP cursor in \fIy\fR and \fIx\fR.
+If \fBleaveok\fR is currently \fBTRUE\fR, then
+\fB\-1\fR,\fB\-1\fR is returned.
+If lines have been removed from the top of the
screen, using \fBripoffline\fR, \fIy\fR and \fIx\fR include these lines;
therefore, \fIy\fR and \fIx\fR should be used only as arguments for
\fBsetsyx\fR.
+.PP
+Few applications will use this feature,
+most use \fBgetyx\fP instead.
.SS setsyx
.PP
-The \fBsetsyx\fR routine sets the virtual screen cursor to
-\fIy\fR, \fIx\fR. If \fIy\fR and \fIx\fR are both \fB\-1\fR, then
-\fBleaveok\fR is set. The two routines \fBgetsyx\fR and \fBsetsyx\fR
+The \fBsetsyx\fR routine sets
+the \fIvirtual screen\fP cursor to \fIy\fR, \fIx\fR.
+If \fIy\fR and \fIx\fR are both \fB\-1\fR, then
+\fBleaveok\fR is set.
+The two routines \fBgetsyx\fR and \fBsetsyx\fR
are designed to be used by a library routine, which manipulates
\fBcurses\fR windows but does not want to change the current position
-of the program's cursor. The library routine would call \fBgetsyx\fR
+of the program's cursor.
+The library routine would call \fBgetsyx\fR
at the beginning, do its manipulation of its own windows, do a
\fBwnoutrefresh\fR on its windows, call \fBsetsyx\fR, and then call
\fBdoupdate\fR.
+.PP
+Few applications will use this feature,
+most use \fBwmove\fP instead.
.SS ripoffline
.PP
The \fBripoffline\fR routine provides access to the same facility that
\fBslk_init\fR [see \fBcurs_slk\fR(3X)] uses to reduce the size of the
-screen. \fBripoffline\fR must be called before \fBinitscr\fR or
+screen.
+\fBripoffline\fR must be called before \fBinitscr\fR or
\fBnewterm\fR is called, to prepare these initial actions:
.bP
If \fIline\fR is positive, a line is removed from the top of \fBstdscr\fR.
.PP
Inside this initialization routine, the integer variables \fBLINES\fR
and \fBCOLS\fR (defined in \fB<curses.h>\fR) are not guaranteed to be
-accurate and \fBwrefresh\fR or \fBdoupdate\fR must not be called. It
-is allowable to call \fBwnoutrefresh\fR during the initialization
-routine.
+accurate and \fBwrefresh\fR or \fBdoupdate\fR must not be called.
+It is allowable to call \fBwnoutrefresh\fR during the initialization routine.
.PP
\fBripoffline\fR can be called up to five times before calling \fBinitscr\fR or
\fBnewterm\fR.
.PP
The \fBcurs_set\fR routine sets the cursor state to invisible,
normal, or very visible for \fBvisibility\fR equal to \fB0\fR,
-\fB1\fR, or \fB2\fR respectively. If the terminal supports the
-\fIvisibility\fR requested, the previous \fIcursor\fR state is
-returned; otherwise, \fBERR\fR is returned.
+\fB1\fR, or \fB2\fR respectively.
+If the terminal supports the \fIvisibility\fR requested,
+the previous \fIcursor\fR state is returned;
+otherwise, \fBERR\fR is returned.
.SS napms
.PP
The \fBnapms\fR routine is used to sleep for \fIms\fR milliseconds.
Note that \fBgetsyx\fR is a macro, so \fB&\fR is not necessary before
the variables \fIy\fR and \fIx\fR.
.PP
-Older SVr4 man pages warn that the return value of \fBcurs_set\fR "is currently
-incorrect". This implementation gets it right, but it may be unwise to count
+Older SVr4 man pages warn that the return value
+of \fBcurs_set\fR \*(``is currently incorrect\*(''.
+This implementation gets it right, but it may be unwise to count
on the correctness of the return value anywhere else.
.PP
Both ncurses and SVr4 will call \fBcurs_set\fR in \fBendwin\fR
There is no way for ncurses to determine the initial cursor state to
restore that.
.SH PORTABILITY
-The functions \fBsetsyx\fR and \fBgetsyx\fR are not described in the XSI
-Curses standard, Issue 4. All other functions are as described in XSI Curses.
+The \fIvirtual screen\fP functions \fBsetsyx\fR and \fBgetsyx\fR
+are not described in the XSI Curses standard, Issue 4.
+All other functions are as described in XSI Curses.
.PP
-The SVr4 documentation describes \fBsetsyx\fR and \fBgetsyx\fR as having return
-type int. This is misleading, as they are macros with no documented semantics
+The SVr4 documentation describes \fBsetsyx\fR and \fBgetsyx\fR
+as having return type int.
+This is misleading, as they are macros with no documented semantics
for the return value.
.SH SEE ALSO
\fBcurses\fR(3X),
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_mouse.3x,v 1.47 2017/11/18 23:52:45 tom Exp $
+.\" $Id: curs_mouse.3x,v 1.49 2018/07/28 22:19:56 tom Exp $
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.ie \n(.g .ds '' \(rq
.de NE
.fi
.ft R
-.in -4
+.ie n .in -4
+.el .in -2
..
.de bP
.ie n .IP \(bu 4
the SVr4 curses library used the \fBget_mouse\fP capability to tell the
terminal which mouse button events it should send,
passing the mouse-button bit-mask to the terminal.
-Also, it could ask the terminal where the mouse was using the \fBreq_mouse_pos\fP capability.
+Also, it could ask the terminal
+where the mouse was using the \fBreq_mouse_pos\fP capability.
.IP
Those features required a terminal which had been modified to work with curses.
They were not part of the X Consortium's xterm.
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_move.3x,v 1.16 2017/11/21 00:46:31 tom Exp $
+.\" $Id: curs_move.3x,v 1.17 2018/07/28 21:34:56 tom Exp $
.TH curs_move 3X ""
.na
.hy 0
.br
.SH DESCRIPTION
These routines move the cursor associated with the window to line \fIy\fR and
-column \fIx\fR. This routine does not move the physical cursor of the terminal
-until \fBrefresh\fR(3X) is called. The position specified is relative to the upper
+column \fIx\fR.
+This routine does not move the physical cursor of the terminal
+until \fBrefresh\fR(3X) is called.
+The position specified is relative to the upper
left-hand corner of the window, which is (0,0).
.SH RETURN VALUE
These routines return \fBERR\fR upon failure and \fBOK\fP (SVr4
.\"***************************************************************************
-.\" Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_outopts.3x,v 1.28 2017/01/07 19:25:15 tom Exp $
+.\" $Id: curs_outopts.3x,v 1.29 2018/07/28 22:59:02 tom Exp $
.TH curs_outopts 3X ""
.na
.hy 0
device translates the return key into newline on input, and whether it
translates newline into return and line-feed on output (in either case, the
call \fBaddch('\\n')\fR does the equivalent of return and line feed on the
-virtual screen).
+\fIvirtual screen\fP).
Initially, these translations do occur.
If you disable them
using \fBnonl\fR, \fBcurses\fR will be able to make better use of the line-feed
.\"***************************************************************************
-.\" Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_pad.3x,v 1.24 2017/11/21 01:16:26 tom Exp $
+.\" $Id: curs_pad.3x,v 1.25 2018/07/28 22:20:54 tom Exp $
.de bP
.ie n .IP \(bu 4
.el .IP \(bu 2
.SS pechochar
.PP
The \fBpechochar\fR routine is functionally equivalent to a call to \fBaddch\fR
-followed by a call to \fBrefresh\fR(3X), a call to \fBwaddch\fR followed by a call
+followed by a call to \fBrefresh\fR(3X),
+a call to \fBwaddch\fR followed by a call
to \fBwrefresh\fR, or a call to \fBwaddch\fR followed by a call to
\fBprefresh\fR.
The knowledge that only a single character is being output is
ensures that \fBdupwin\fP and \fBgetwin\fP treat
pads versus windows consistently.
.SH SEE ALSO
-\fBcurses\fR(3X), \fBcurs_refresh\fR(3X), \fBcurs_touch\fR(3X), \fBcurs_addch\fR(3X).
+\fBcurses\fR(3X),
+\fBcurs_refresh\fR(3X),
+\fBcurs_touch\fR(3X),
+\fBcurs_addch\fR(3X).
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_print.3x,v 1.12 2017/11/20 01:27:30 tom Exp $
+.\" $Id: curs_print.3x,v 1.13 2018/07/28 21:34:56 tom Exp $
.TH curs_print 3X ""
.SH NAME
\fBmcprint\fR \- ship binary data to printer
if they are present, to ship given data to a printer attached to the terminal.
.PP
Note that the \fBmcprint\fR code has no way to do flow control with the printer
-or to know how much buffering it has. Your application is responsible for
+or to know how much buffering it has.
+Your application is responsible for
keeping the rate of writes to the printer below its continuous throughput rate
-(typically about half of its nominal cps rating). Dot-matrix printers and
+(typically about half of its nominal cps rating).
+Dot-matrix printers and
6-page-per-minute lasers can typically handle 80cps, so a good conservative
rule of thumb is to sleep for a second after shipping each 80-character line.
.
.SH RETURN VALUE
The \fBmcprint\fR function returns \fBERR\fR if the write operation aborted
-for some reason. In this case, errno will contain either an error associated
+for some reason.
+In this case, errno will contain either an error associated
with \fBwrite\fP(2) or one of the following:
.TP 5
ENODEV
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_printw.3x,v 1.22 2018/04/07 20:18:55 tom Exp $
+.\" $Id: curs_printw.3x,v 1.23 2018/07/28 21:14:06 tom Exp $
.TH curs_printw 3X ""
.de bP
.ie n .IP \(bu 4
\fBint vwprintw(WINDOW *win, const char *fmt, va_list varglist);\fR
.SH DESCRIPTION
The \fBprintw\fR, \fBwprintw\fR, \fBmvprintw\fR and \fBmvwprintw\fR
-routines are analogous to \fBprintf\fR [see \fBprintf\fR(3)]. In
+routines are analogous to \fBprintf\fR [see \fBprintf\fR(3)].
+In
effect, the string that would be output by \fBprintf\fR is output
instead as though \fBwaddstr\fR were used on the given window.
.PP
to support legacy applications.
However, the latter (\fBvwprintw\fP) is obsolete:
.bP
-The XSI Curses standard, Issue 4 described these functions. The function
+The XSI Curses standard, Issue 4 described these functions.
+The function
\fBvwprintw\fR is marked TO BE WITHDRAWN, and is to be replaced by a function
\fBvw_printw\fR using the \fB<stdarg.h>\fR interface.
.bP
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2016 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2016,2018 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_refresh.3x,v 1.17 2016/10/15 16:45:45 tom Exp $
+.\" $Id: curs_refresh.3x,v 1.19 2018/07/28 22:59:02 tom Exp $
.TH curs_refresh 3X ""
+.ie \n(.g .ds `` \(lq
+.el .ds `` ``
+.ie \n(.g .ds '' \(rq
+.el .ds '' ''
+.de bP
+.ie n .IP \(bu 4
+.el .IP \(bu 2
+..
.na
.hy 0
.SH NAME
.SH DESCRIPTION
.SS refresh/wrefresh
The \fBrefresh\fR and \fBwrefresh\fR routines (or \fBwnoutrefresh\fR and
-\fBdoupdate\fR) must be called to get actual output to the terminal, as other
-routines merely manipulate data structures.
+\fBdoupdate\fR) must be called to get actual output to the terminal,
+as other routines merely manipulate data structures.
The routine \fBwrefresh\fR copies
-the named window to the physical terminal screen, taking into account what is
-already there to do optimizations.
+the named window to the \fIphysical screen\fP,
+taking into account what is already there to do optimizations.
The \fBrefresh\fR routine is the
same, using \fBstdscr\fR as the default window.
Unless \fBleaveok\fR has been
more efficiency than \fBwrefresh\fR alone.
In addition to all the window
structures, \fBcurses\fR keeps two data structures representing the terminal
-screen: a physical screen, describing what is actually on the screen, and a
-virtual screen, describing what the programmer wants to have on the screen.
+screen:
+.bP
+a \fIphysical screen\fP, describing what is actually on the screen, and
+.bP
+a \fIvirtual screen\fP, describing what the programmer wants to have on the screen.
+.PP
+The routine \fBwrefresh\fR works by
+.bP
+first calling \fBwnoutrefresh\fR,
+which copies the named window to the \fIvirtual screen\fP, and
+.bP
+then calling \fBdoupdate\fR, which compares
+the \fIvirtual screen\fP to the \fIphysical screen\fP
+and does the actual update.
.PP
-The routine \fBwrefresh\fR works by first calling \fBwnoutrefresh\fR, which
-copies the named window to the virtual screen, and then calling \fBdoupdate\fR,
-which compares the virtual screen to the physical screen and does the actual
-update.
If the programmer wishes to output several windows at once, a series
of calls to \fBwrefresh\fR results in alternating calls to \fBwnoutrefresh\fR
and \fBdoupdate\fR, causing several bursts of output to the screen.
calling \fBwnoutrefresh\fR for each window, it is then possible to call
\fBdoupdate\fR once, resulting in only one burst of output, with fewer total
characters transmitted and less CPU time used.
+.PP
If the \fIwin\fR argument to
-\fBwrefresh\fR is the global variable \fBcurscr\fR, the screen is immediately
-cleared and repainted from scratch.
+\fBwrefresh\fR is the \fIphysical screen\fP
+(i.e., the global variable \fBcurscr\fR),
+the screen is immediately cleared and repainted from scratch.
.PP
-The phrase "copies the named window to the virtual screen" above is ambiguous.
+The phrase \*(``copies the named window to the virtual screen\*('' above is ambiguous.
What actually happens is that all \fItouched\fR (changed) lines in the window
are copied to the virtual screen.
This affects programs that use overlapping
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_scanw.3x,v 1.23 2018/04/07 20:56:03 tom Exp $
+.\" $Id: curs_scanw.3x,v 1.24 2018/07/28 21:14:06 tom Exp $
.TH curs_scanw 3X ""
.de bP
.ie n .IP \(bu 4
\fBint vwscanw(WINDOW *win, const char *fmt, va_list varglist);\fR
.SH DESCRIPTION
The \fBscanw\fR, \fBwscanw\fR and \fBmvscanw\fR routines are analogous to
-\fBscanf\fR [see \fBscanf\fR(3)]. The effect of these routines is as though
+\fBscanf\fR [see \fBscanf\fR(3)].
+The effect of these routines is as though
\fBwgetstr\fR were called on the window, and the resulting line used as input
-for \fBsscanf\fR(3). Fields which do not map to a variable in the \fIfmt\fR
+for \fBsscanf\fR(3).
+Fields which do not map to a variable in the \fIfmt\fR
field are lost.
.PP
The \fBvwscanw\fR and \fBvw_scanw\fR routines are analogous to \fBvscanf\fR(3).
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_scr_dump.3x,v 1.11 2017/04/17 00:41:24 tom Exp $
+.\" $Id: curs_scr_dump.3x,v 1.13 2018/07/28 22:50:26 tom Exp $
.TH curs_scr_dump 3X ""
+.de bP
+.ie n .IP \(bu 4
+.el .IP \(bu 2
+..
.na
.hy 0
.SH NAME
\fBint scr_set(const char *filename);\fR
.br
.SH DESCRIPTION
-The \fBscr_dump\fR routine dumps the current contents of the virtual screen
+The \fBscr_dump\fR routine dumps the current contents
+of the \fIvirtual screen\fP
to the file \fIfilename\fR.
.PP
-The \fBscr_restore\fR routine sets the virtual screen to the contents
-of \fIfilename\fR, which must have been written using \fBscr_dump\fR. The next
-call to \fBdoupdate\fR restores the screen to the way it looked in the dump
-file.
+The \fBscr_restore\fR routine sets the \fIvirtual screen\fP to the contents
+of \fIfilename\fR, which must have been written using \fBscr_dump\fR.
+The next call to \fBdoupdate\fR restores
+the \fIphysical screen\fP to the way it looked in the dump file.
.PP
The \fBscr_init\fR routine reads in the contents of \fIfilename\fR and uses
them to initialize the \fBcurses\fR data structures about what the terminal
-currently has on its screen. If the data is determined to be valid,
+currently has on its screen.
+If the data is determined to be valid,
\fBcurses\fR bases its next update of the screen on this information rather
-than clearing the screen and starting from scratch. \fBscr_init\fR is used
+than clearing the screen and starting from scratch.
+\fBscr_init\fR is used
after \fBinitscr\fR or a \fBsystem\fR call to share
the screen with another process which has done a \fBscr_dump\fR after its
-\fBendwin\fR(3X) call. The data is declared invalid if the terminfo capabilities
-\fBrmcup\fR and \fBnrrmc\fR exist; also if the terminal has been written to
-since the preceding \fBscr_dump\fR call.
+\fBendwin\fR(3X) call.
+The data is declared invalid
+.bP
+if the terminfo capabilities \fBrmcup\fR and \fBnrrmc\fR exist, also
+.bP
+if the terminal has been written to since the preceding \fBscr_dump\fR call.
.PP
The \fBscr_set\fR routine is a combination of \fBscr_restore\fR and
\fBscr_init\fR. It tells the program that the information in \fIfilename\fR is
.\"***************************************************************************
-.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2010,2018 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_scroll.3x,v 1.15 2010/12/04 18:40:45 tom Exp $
+.\" $Id: curs_scroll.3x,v 1.16 2018/07/28 22:59:02 tom Exp $
.TH curs_scroll 3X ""
.na
.hy 0
This involves moving
the lines in the window data structure.
As an optimization, if the scrolling
-region of the window is the entire screen, the physical screen may be scrolled
-at the same time.
+region of the window is the entire screen,
+the \fIphysical screen\fP may be scrolled at the same time.
.PP
For positive \fIn\fR, the \fBscrl\fR and \fBwscrl\fR routines scroll the
window up \fIn\fR lines (line \fIi\fR+\fIn\fR becomes \fIi\fR); otherwise
.\"***************************************************************************
-.\" Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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.33 2017/11/21 00:46:31 tom Exp $
+.\" $Id: curs_slk.3x,v 1.34 2018/07/28 22:20:54 tom Exp $
.TH curs_slk 3X ""
.de bP
.ie n .IP \(bu 4
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
+\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, respectively.
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
\fBextended_slk_color\fR which accepts an integer value, e.g., 32-bits.
.
.SH RETURN VALUE
-These routines return \fBERR\fR upon failure and \fBOK\fP (SVr4 specifies only "an
-integer value other than \fBERR\fR") upon successful completion.
+These routines return \fBERR\fR upon failure
+and \fBOK\fP (SVr4 specifies only "an integer value other than \fBERR\fR")
+upon successful completion.
.PP
X/Open defines no error conditions.
In this implementation
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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_termattrs.3x,v 1.13 2015/07/21 00:03:34 tom Exp $
+.\" $Id: curs_termattrs.3x,v 1.14 2018/07/28 21:34:06 tom Exp $
.TH curs_termattrs 3X ""
.SH NAME
\fBbaudrate\fR,
.br
.SH DESCRIPTION
.SS baudrate
-The \fBbaudrate\fR routine returns the output speed of the terminal. The
+The \fBbaudrate\fR routine returns the output speed of the terminal.
+The
number returned is in bits per second, for example \fB9600\fR, and is an
integer.
.SS erasechar, erasewchar
character capabilities.
.PP
The \fBhas_il\fR routine is true if the terminal has insert- and delete-line
-capabilities, or can simulate them using scrolling regions. This might
+capabilities, or can simulate them using scrolling regions.
+This might
be used to determine if it would be appropriate to turn on physical
scrolling using \fBscrollok\fR.
.SS killchar, killwchar
.SS longname
.PP
The \fBlongname\fR routine returns a pointer to a static area
-containing a verbose description of the current terminal. The maximum
-length of a verbose description is 128 characters. It is defined only
+containing a verbose description of the current terminal.
+The maximum
+length of a verbose description is 128 characters.
+It is defined only
after the call to \fBinitscr\fR or \fBnewterm\fR. The area is
overwritten by each call to \fBnewterm\fR and is not restored by
\fBset_term\fR, so the value should be saved between calls to
.SH NOTES
Note that \fBtermattrs\fR may be a macro.
.SH PORTABILITY
-The XSI Curses standard, Issue 4 describes these functions. It changes the
+The XSI Curses standard, Issue 4 describes these functions.
+It changes the
return type of \fBtermattrs\fR to the new type \fBattr_t\fR.
Most versions of curses truncate the result returned by \fBtermname\fR to
14 characters.
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_termcap.3x,v 1.39 2018/04/07 20:51:27 tom Exp $
+.\" $Id: curs_termcap.3x,v 1.40 2018/07/28 21:14:06 tom Exp $
.TH curs_termcap 3X ""
.de bP
.ie n .IP \(bu 4
.br
.SH DESCRIPTION
These routines are included as a conversion aid for programs that use
-the \fItermcap\fR library. Their parameters are the same and the
-routines are emulated using the \fIterminfo\fR database. Thus, they
+the \fItermcap\fR library.
+Their parameters are the same and the
+routines are emulated using the \fIterminfo\fR database.
+Thus, they
can only be used to query the capabilities of entries for which a
terminfo entry has been compiled.
.SS INITIALIZATION
and portable \fItermcap\fP applications should not rely upon its availability.
.PP
The \fBtputs\fR routine is described on the \fBcurs_terminfo\fR(3X) manual
-page. It can retrieve capabilities by either termcap or terminfo name.
+page.
+It can retrieve capabilities by either termcap or terminfo name.
.SS GLOBAL VARIABLES
.PP
The variables
.SH BUGS
If you call \fBtgetstr\fR to fetch \fBca\fR or any other parameterized string,
be aware that it will be returned in terminfo notation, not the older and
-not-quite-compatible termcap notation. This will not cause problems if all
+not-quite-compatible termcap notation.
+This will not cause problems if all
you do with it is call \fBtgoto\fR or \fBtparm\fR, which both expand
terminfo-style strings as terminfo.
(The \fBtgoto\fR function, if configured to support termcap, will check
.PP
Because terminfo conventions for representing padding in string capabilities
differ from termcap's, \fBtputs("50");\fR will put out a literal "50" rather
-than busy-waiting for 50 milliseconds. Cope with it.
+than busy-waiting for 50 milliseconds.
+Cope with it.
.PP
Note that termcap has nothing analogous to terminfo's \fBsgr\fR string.
One consequence of this is that termcap applications assume \fRme\fR
These functions are provided for supporting legacy applications,
and should not be used in new programs:
.bP
-The XSI Curses standard, Issue 4 describes these functions. However, they
+The XSI Curses standard, Issue 4 describes these functions.
+However, they
are marked TO BE WITHDRAWN and may be removed in future versions.
.bP
X/Open Curses, Issue 5 (December 2007) marked the termcap interface
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_terminfo.3x,v 1.58 2018/04/07 21:09:12 tom Exp $
+.\" $Id: curs_terminfo.3x,v 1.60 2018/07/28 22:08:59 tom Exp $
.TH curs_terminfo 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.SH DESCRIPTION
These low-level routines must be called by programs that have to deal
directly with the \fBterminfo\fR database to handle certain terminal
-capabilities, such as programming function keys. For all other
+capabilities, such as programming function keys.
+For all other
functionality, \fBcurses\fR routines are more suitable and their use is
recommended.
.SS Initialization
\fBlines\fR and \fBcolumns\fR specified in \fBterminfo\fR are used.
.bP
Otherwise, if the environment variables \fBLINES\fR and \fBCOLUMNS\fR
-exist, their values are used. If these environment variables do not
+exist, their values are used.
+If these environment variables do not
exist and the program is running in a window, the current window size
-is used. Otherwise, if the environment variables do not exist, the
+is used.
+Otherwise, if the environment variables do not exist, the
values for \fBlines\fR and \fBcolumns\fR specified in the
\fBterminfo\fR database are used.
.PP
-Parameterized strings should be passed through \fBtparm\fR to instantiate them.
-All \fBterminfo\fR strings [including the output of \fBtparm\fR] should be printed
+Parameterized strings should be passed through \fBtparm\fR to instantiate them.
+All \fBterminfo\fR strings
+(including the output of \fBtparm\fR)
+should be printed
with \fBtputs\fR or \fBputp\fR.
Call \fBreset_shell_mode\fR to restore the
tty modes before exiting [see \fBcurs_kernel\fR(3X)].
.IP
If \fIerrret\fR is
null, \fBsetupterm\fR prints an error message upon finding an error
-and exits. Thus, the simplest call is:
+and exits.
+Thus, the simplest call is:
.sp
\fBsetupterm((char *)0, 1, (int *)0);\fR,
.sp
It returns the old value of \fBcur_term\fR.
.PP
The \fBdel_curterm\fR routine frees the space pointed to by
-\fIoterm\fR and makes it available for further use. If \fIoterm\fR is
+\fIoterm\fR and makes it available for further use.
+If \fIoterm\fR is
the same as \fBcur_term\fR, references to any of the \fBterminfo\fR
boolean, numeric, and string variables thereafter may refer to invalid
memory locations until another \fBsetupterm\fR has been called.
\fBtparm\fR, \fBtiparm\fP, \fBtgetstr\fR, or \fBtgoto\fR.
.IP
The \fBtgetstr\fP and \fBtgoto\fP functions are part of the \fItermcap\fP
-interface, which happens to share this function name with the \fIterminfo\fP interface.
+interface,
+which happens to share this function name with the \fIterminfo\fP interface.
.bP
\fIaffcnt\fR is the number of lines affected, or 1 if
not applicable.
.PP
The \fBvidputs\fR routine displays the string on the terminal in the
video attribute mode \fIattrs\fR, which is any combination of the
-attributes listed in \fBcurses\fR(3X). The characters are passed to
+attributes listed in \fBcurses\fR(3X).
+The characters are passed to
the \fBputchar\fR-like routine \fIputc\fR.
.PP
The \fBvidattr\fR routine is like the \fBvidputs\fR routine, except
that it outputs through \fBputchar\fR.
.PP
-The \fBvid_attr\fR and \fBvid_puts\fR routines correspond to vidattr and vidputs,
-respectively.
+The \fBvid_attr\fR and \fBvid_puts\fR routines correspond
+to vidattr and vidputs, respectively.
They use a set of arguments for representing the video attributes plus color,
i.e.,
.bP
this implementation allows \fIopts\fP to be used as a pointer to \fBint\fP,
which overrides the \fIpair\fP (\fBshort\fP) argument.
.PP
-The \fBmvcur\fR routine provides low-level cursor motion. It takes
+The \fBmvcur\fR routine provides low-level cursor motion.
+It takes
effect immediately (rather than at the next refresh).
.\" ***************************************************************************
.SS Terminal Capability Functions
.RE
.SH RETURN VALUE
Routines that return an integer return \fBERR\fR upon failure and \fBOK\fR
-(SVr4 only specifies \*(``an integer value other than \fBERR\fR\*('') upon successful
-completion, unless otherwise noted in the preceding routine descriptions.
+(SVr4 only specifies \*(``an integer value other than \fBERR\fR\*('')
+upon successful completion,
+unless otherwise noted in the preceding routine descriptions.
.PP
Routines that return pointers always return \fBNULL\fR on error.
.PP
.\"***************************************************************************
-.\" Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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_touch.3x,v 1.20 2017/11/25 16:19:42 tom Exp $
+.\" $Id: curs_touch.3x,v 1.21 2018/07/28 21:34:56 tom Exp $
.TH curs_touch 3X ""
.na
.hy 0
.SH DESCRIPTION
The \fBtouchwin\fR and \fBtouchline\fR routines throw away all
optimization information about which parts of the window have been
-touched, by pretending that the entire window has been drawn on. This
+touched, by pretending that the entire window has been drawn on.
+This
is sometimes necessary when using overlapping windows, since a change
to one window affects the other window, but the records of which lines
-have been changed in the other window do not reflect the change. The
+have been changed in the other window do not reflect the change.
+The
routine \fBtouchline\fR only pretends that \fIcount\fR lines have been
changed, beginning with line \fIstart\fR.
.PP
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_util.3x,v 1.53 2018/05/26 13:39:03 tom Exp $
+.\" $Id: curs_util.3x,v 1.54 2018/07/28 22:08:59 tom Exp $
.TH curs_util 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
should be called before \fBinitscr\fR or \fBnewterm\fR are called
(because those compute the screen size).
After \fBuse_tioctl\fR is called with \fBTRUE\fR as an argument,
-\fBncurses\fP modifies the last step in its computation of screen size as follows:
+\fBncurses\fP modifies the last step in its computation
+of screen size as follows:
.bP
checks if the \fBLINES\fR and \fBCOLUMNS\fR environment variables
are set to a number greater than zero.
\fBncurses\fP updates $LINES and $COLUMNS based on operating system calls.
T}
FALSE/TRUE/T{
-\fBncurses\fP ignores $LINES and $COLUMNS, uses operating system calls to obtain size.
+\fBncurses\fP ignores $LINES and $COLUMNS,
+uses operating system calls to obtain size.
T}
FALSE/FALSE/T{
\fBncurses\fP relies on the terminal database to determine size.
Oddly, there are no such functions in the 4.3BSD curses sources.
.bP
Most implementations simply dump the binary \fBWINDOW\fP structure to the file.
-These include SVr4 curses, NetBSD and PDCurses, as well as older \fBncurses\fP versions.
-This implementation (as well as the X/Open variant of Solaris curses, dated 1995)
+These include SVr4 curses, NetBSD and PDCurses,
+as well as older \fBncurses\fP versions.
+This implementation
+(as well as the X/Open variant of Solaris curses, dated 1995)
uses textual dumps.
.IP
The implementations which use binary dumps use block-I/O
.PP
The strings returned by \fBunctrl\fR in this implementation are determined
at compile time,
-showing C1 controls from the upper-128 codes with a \*(``~\*('' prefix rather than \*(``^\*(''.
+showing C1 controls from the upper-128 codes
+with a \*(``~\*('' prefix rather than \*(``^\*(''.
Other implementations have different conventions.
For example, they may show both sets of control characters with \*(``^\*('',
and strip the parameter to 7 bits.
.\"***************************************************************************
-.\" Copyright (c) 2010-2015,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 2010-2017,2018 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_variables.3x,v 1.9 2017/11/18 23:56:00 tom Exp $
+.\" $Id: curs_variables.3x,v 1.11 2018/07/28 22:37:10 tom Exp $
.TH curs_variables 3X ""
+.ie \n(.g .ds `` \(lq
+.el .ds `` ``
+.ie \n(.g .ds '' \(rq
+.el .ds '' ''
.de bP
.ie n .IP \(bu 4
.el .IP \(bu 2
escape character,
to distinguish between an individual escape character entered on the
keyboard from escape sequences sent by cursor- and function-keys
-(see curses(3X).
+(see curses(3X)).
.SS LINES
After initializing curses, this variable contains the height of the screen,
i.e., the number of lines.
.SS The Current Screen
This implementation of curses uses a special window \fBcurscr\fP to
record its updates to the terminal screen.
+.PP
+This is referred to as the \*(``physical screen\*('' in the
+\fBcurs_refresh\fR(3X) and
+\fBcurs_outopts\fR(3X) manual pages.
.SS The New Screen
This implementation of curses uses a special window \fBnewscr\fP to
hold updates to the terminal screen before applying them to \fBcurscr\fP.
+.PP
+This is referred to as the \*(``virtual screen\*('' in the
+\fBcurs_kernel\fR(3X),
+\fBcurs_refresh\fR(3X) and
+\fBcurs_outopts\fR(3X) manual pages.
.SS The Standard Screen
Upon initializing curses,
a default window called \fBstdscr\fP,
.\"***************************************************************************
-.\" Copyright (c) 1998-2011,2016 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2016,2018 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,1999,2000,2005
.\"
-.\" $Id: default_colors.3x,v 1.25 2016/10/15 17:16:48 tom Exp $
+.\" $Id: default_colors.3x,v 1.27 2018/07/28 22:08:59 tom Exp $
.TH default_colors 3X ""
.SH NAME
\fBuse_default_colors\fR,
.PP
The first function, \fBuse_default_colors\fP
tells the curses library to assign terminal default
-foreground/background colors to color number \-1. So init_pair(x,COLOR_RED,\-1)
-will initialize pair x as red on default background and init_pair(x,\-1,COLOR_BLUE) will
+foreground/background colors to color number \-1.
+So init_pair(x,COLOR_RED,\-1)
+will initialize pair x as red on default background
+and init_pair(x,\-1,COLOR_BLUE) will
initialize pair x as default foreground on blue.
.PP
The other, \fBassume_default_colors\fP
ncurses will paint a white foreground (text) with black background
for color pair 0.
.SH RETURN VALUE
-These functions return the integer \fBERR\fP upon failure and \fBOK\fP on success.
+These functions return the integer \fBERR\fP upon failure
+and \fBOK\fP on success.
They will fail if either the terminal does not support
the \fBorig_pair\fP or \fBorig_colors\fP capability.
If the \fBinitialize_pair\fP capability is not found, this causes an
.PP
The \fBuse_default_colors\fP function was added to support \fIded\fP.
This is a full-screen application which uses curses to manage only part
-of the screen. The bottom portion of the screen, which is of adjustable
+of the screen.
+The bottom portion of the screen, which is of adjustable
size, is left uncolored to display the results from shell commands.
The top portion of the screen colors filenames using a scheme like the
"color ls" programs.
environment variables and other configuration to bypass curses'
notion of the terminal's default colors, setting specific values.
.SH PORTABILITY
-These routines are specific to ncurses. They were not supported on
-Version 7, BSD or System V implementations. It is recommended that
+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 conditioned using NCURSES_VERSION.
.SH SEE ALSO
\fBcurs_color\fR(3X),
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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
.\"
-.\" $Id: define_key.3x,v 1.15 2017/11/21 00:53:44 tom Exp $
+.\" $Id: define_key.3x,v 1.16 2018/07/28 21:34:56 tom Exp $
.TH define_key 3X ""
.SH NAME
\fBdefine_key\fP \- define a keycode
data to store the definition.
If no error is detected, \fBOK\fP is returned.
.SH PORTABILITY
-These routines are specific to ncurses. They were not supported on
-Version 7, BSD or System V implementations. It is recommended that
+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 conditioned using NCURSES_VERSION.
.SH SEE ALSO
\fBkeyok\fR(3X),
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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: form.3x,v 1.30 2017/11/25 20:28:02 tom Exp $
+.\" $Id: form.3x,v 1.31 2018/07/28 21:34:56 tom Exp $
.TH form 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.br
.SH DESCRIPTION
The \fBform\fR library provides terminal-independent facilities for composing
-form screens on character-cell terminals. The library includes: field
+form screens on character-cell terminals.
+The library includes: field
routines, which create and modify form fields; and form routines, which group
fields into forms, display forms on the screen, and handle interaction with the
user.
.
.SS Current Default Values for Field Attributes
.
-The \fBform\fR library maintains a default value for field attributes. You
+The \fBform\fR library maintains a default value for field attributes.
+You
can get or set this default by calling the appropriate \fBset_\fR
or retrieval
-routine with a \fBNULL\fR field pointer. Changing this default with a
+routine with a \fBNULL\fR field pointer.
+Changing this default with a
\fBset_\fR function affects future field creations, but does not change the
rendering of fields already created.
.
you want to say \*(``\-lform \-lncurses\*('', not the other way around
(which would give you a link error when using static libraries).
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.PP
The menu facility was documented in SVr4.2 in
\fBform_driver_w\fP,
\fBunfocus_current_field\fP.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for ncurses by Eric
+Juergen Pfeifer.
+Manual pages and adaptation for ncurses by Eric
S. Raymond.
.SH SEE ALSO
\fBcurses\fR(3X) and related pages whose names begin "form_" for detailed
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: form_cursor.3x,v 1.9 2015/12/05 20:39:43 jmc Exp $
+.\" $Id: form_cursor.3x,v 1.10 2018/07/28 21:34:06 tom Exp $
.TH form_cursor 3X ""
.SH NAME
\fBpos_form_cursor\fR \- position a form window cursor
.br
.SH DESCRIPTION
The function \fBpos_form_cursor\fR restores the cursor to the position required
-for the forms driver to continue processing requests. This is useful after
+for the forms driver to continue processing requests.
+This is useful after
\fBcurses\fR routines have been called to do screen-painting in response to a
form operation.
.SH RETURN VALUE
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: form_data.3x,v 1.11 2015/12/05 23:01:16 tom Exp $
+.\" $Id: form_data.3x,v 1.12 2018/07/28 21:34:06 tom Exp $
.TH form_data 3X ""
.SH NAME
\fBdata_ahead\fP,
.br
.SH DESCRIPTION
The function \fBdata_ahead\fR tests whether there is off-screen data
-ahead in the given form. It returns TRUE (1) or FALSE (0).
+ahead in the given form.
+It returns TRUE (1) or FALSE (0).
.PP
The function \fBdata_behind\fR tests whether there is off-screen data
-behind in the given form. It returns TRUE (1) or FALSE (0).
+behind in the given form.
+It returns TRUE (1) or FALSE (0).
.SH SEE ALSO
\fBcurses\fR(3X), \fBform\fR(3X).
.SH NOTES
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_driver.3x,v 1.29 2018/04/28 19:58:58 tom Exp $
+.\" $Id: form_driver.3x,v 1.31 2018/07/28 22:08:59 tom Exp $
.TH form_driver 3X ""
.de bP
.ie n .IP \(bu 4
.bP
The input is a form navigation request.
Navigation request codes are constants defined in \fB<form.h>\fP,
-which are distinct from the key- and character codes returned by \fBwgetch\fP(3X).
+which are distinct from the key- and character codes returned
+by \fBwgetch\fP(3X).
.bP
The input is a printable character.
Printable characters (which must be positive, less than 256) are
.TE
.PP
If the second argument is a printable character, the driver places it
-in the current position in the current field. If it is one of the forms
+in the current position in the current field.
+If it is one of the forms
requests listed above, that request is executed.
.SS Field validation
-The form library makes updates to the window associated with form fields rather than
-directly to the field buffers.
+The form library makes updates to the window associated
+with form fields rather than directly to the field buffers.
.PP
The form driver provides low-level control over updates to the form fields.
-The form driver also provides for validating modified fields to ensure that the contents
+The form driver also provides for validating modified fields
+to ensure that the contents
meet whatever constraints an application may attach using \fBset_field_type\fP.
.PP
.PP
.bP
a call to \fBset_current_field\fP attempts to move to a different field.
.bP
-a call to \fBset_current_page\fP attempts to move to a different page of the form.
+a call to \fBset_current_page\fP attempts to move
+to a different page of the form.
.bP
a request attempts to move to a different field.
.bP
into a request was done, \fBform_driver\fR returns the result of this request.
.RE
.PP
-If you clicked outside the user window or the mouse event could not be translated
+If you clicked outside the user window
+or the mouse event could not be translated
into a form request an \fBE_REQUEST_DENIED\fR is returned.
.SS Application-defined commands
.PP
The header file \fB<form.h>\fR automatically includes the header files
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2012,2018 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: form_field.3x,v 1.11 2012/11/03 23:03:59 tom Exp $
+.\" $Id: form_field.3x,v 1.12 2018/07/28 21:34:06 tom Exp $
.TH form_field 3X ""
.SH NAME
\fBform_field\fR \- make and break connections between fields and forms
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.PP
The SVr4 forms library documentation specifies the \fBfield_count\fR error value
as \-1 (which is the value of \fBERR\fR).
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2010,2018 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: form_field_attributes.3x,v 1.12 2010/12/04 18:40:45 tom Exp $
+.\" $Id: form_field_attributes.3x,v 1.13 2018/07/28 21:34:06 tom Exp $
.TH form_field_attributes 3X ""
.SH NAME
\fBform_field_attributes\fR \- color and attribute control for form fields
.SH DESCRIPTION
The function \fBset_field_fore\fR sets the foreground attribute of
\fIfield\fR. This is the highlight used to display the field contents. The
-function \fBfield_fore\fR returns the foreground attribute. The default is
+function \fBfield_fore\fR returns the foreground attribute.
+The default is
\fBA_STANDOUT\fR.
.PP
The function \fBset_field_back\fR sets the background attribute of
\fIform\fR. This is the highlight used to display the extent fields in the
-form. The function \fBfield_back\fR returns the background attribute. The
+form.
+The function \fBfield_back\fR returns the background attribute.
+The
default is \fBA_NORMAL\fR.
.PP
The function \fBset_field_pad\fR sets the character used to fill the field.
-The function \fBfield_pad\fR returns the given form's pad character. The
+The function \fBfield_pad\fR returns the given form's pad character.
+The
default is a blank.
.SH RETURN VALUE
These routines return one of the following:
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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: form_field_buffer.3x,v 1.20 2017/11/18 23:56:00 tom Exp $
+.\" $Id: form_field_buffer.3x,v 1.21 2018/07/28 21:34:06 tom Exp $
.TH form_field_buffer 3X ""
.de bP
.ie n .IP \(bu 4
.RE
.PP
The function \fBset_field_status\fR sets the associated status flag of
-\fIfield\fR; \fBfield_status\fR gets the current value. The status flag
+\fIfield\fR; \fBfield_status\fR gets the current value.
+The status flag
is set to a nonzero value whenever the field changes.
.PP
The function \fBset_max_field\fR sets the maximum size for a dynamic field.
same buffer.
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: form_field_info.3x,v 1.13 2015/12/05 23:01:16 tom Exp $
+.\" $Id: form_field_info.3x,v 1.14 2018/07/28 21:34:06 tom Exp $
.TH form_field_info 3X ""
.SH NAME
\fBdynamic_field_info\fP,
.br
.SH DESCRIPTION
The function \fBfield_info\fR returns the sizes and other attributes passed in
-to the field at its creation time. The attributes are: height, width, row of
+to the field at its creation time.
+The attributes are: height, width, row of
upper-left corner, column of upper-left corner, number off-screen rows, and
number of working buffers.
.PP
The function \fBdynamic_field_info\fR returns the actual size of the field, and
-its maximum possible size. If the field has no size limit, the location
+its maximum possible size.
+If the field has no size limit, the location
addressed by the third argument will be set to 0.
A field can be made dynamic
by turning off the \fBO_STATIC\fR option with \fBfield_opts_off\fR.
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.PP
A null (zero pointer) is accepted for any of the return values,
to ignore that value.
Not all implementations allow this, e.g., Solaris 2.7 does not.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: form_field_just.3x,v 1.12 2015/12/05 23:02:59 tom Exp $
+.\" $Id: form_field_just.3x,v 1.13 2018/07/28 21:34:06 tom Exp $
.TH form_field_just 3X ""
.SH NAME
\fBset_field_just\fR,
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: form_field_new.3x,v 1.19 2015/12/05 23:42:45 tom Exp $
+.\" $Id: form_field_new.3x,v 1.20 2018/07/28 21:34:06 tom Exp $
.TH form_field_new 3X ""
.SH NAME
\fBnew_field\fR,
parameters given: height, width, row of upper-left corner, column of upper-left
corner, number off-screen rows, and number of additional working buffers.
.PP
-The function \fBdup_field\fR duplicates a field at a new location. Most
+The function \fBdup_field\fR duplicates a field at a new location.
+Most
attributes (including current contents, size, validation type, buffer count,
growth threshold, justification, foreground, background, pad character,
-options, and user pointer) are copied. Field status and the field page bit are
+options, and user pointer) are copied.
+Field status and the field page bit are
not copied.
.PP
The function \fBlink_field\fR acts like \fBdup_field\fR, but the new field
-shares buffers with its parent. Attribute data is separate.
+shares buffers with its parent.
+Attribute data is separate.
.PP
The function \fBfree_field\fR de-allocates storage associated with a field.
.SH RETURN VALUE
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.PP
It may be unwise to count on the set of attributes copied by
\fBdup_field\fR being portable; the System V forms library documents are
not very explicit about what gets copied and what does not.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_field_opts.3x,v 1.21 2018/04/28 21:24:57 tom Exp $
+.\" $Id: form_field_opts.3x,v 1.22 2018/07/28 21:18:11 tom Exp $
.TH form_field_opts 3X ""
.SH NAME
\fBset_field_opts\fP,
The following standard options are defined (all are on by default):
.TP 5
O_ACTIVE
-The field is visited during processing. If this option is off, the field will
-not be reachable by navigation keys. Please notice that an invisible field
+The field is visited during processing.
+If this option is off, the field will
+not be reachable by navigation keys.
+Please notice that an invisible field
appears to be inactive also.
.TP 5
O_AUTOSKIP
Turn this option off to create a dynamic field.
.TP 5
O_VISIBLE
-The field is displayed. If this option is off, display of the field is
+The field is displayed.
+If this option is off, display of the field is
suppressed.
.TP 5
O_WRAP
-Words that do not fit on a line are wrapped to the next line. Words are
+Words that do not fit on a line are wrapped to the next line.
+Words are
blank-separated.
.PP
These extension options are defined (extensions are off by default):
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: form_field_userptr.3x,v 1.11 2015/12/05 23:01:56 tom Exp $
+.\" $Id: form_field_userptr.3x,v 1.12 2018/07/28 21:34:06 tom Exp $
.TH form_field_userptr 3X ""
.SH NAME
\fBset_field_userptr\fR,
.br
.SH DESCRIPTION
Every form field has a field that can be used to hold application-specific data
-(that is, the form-driver code leaves it alone). These functions get and set
+(that is, the form-driver code leaves it alone).
+These functions get and set
that field.
.SH RETURN VALUE
The function \fBfield_userptr\fR returns a pointer (which may be \fBNULL\fR).
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.PP
The user pointer is a void pointer.
We chose not to leave it as a char pointer for SVr4 compatibility.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_field_validation.3x,v 1.22 2018/07/14 22:39:06 tom Exp $
+.\" $Id: form_field_validation.3x,v 1.23 2018/07/28 21:18:11 tom Exp $
.TH form_field_validation 3X ""
.de bP
.ie n .IP \(bu 4
The predefined types are as follows:
.TP 5
TYPE_ALNUM
-Alphanumeric data. Requires a third \fBint\fR argument, a minimum field width.
+Alphanumeric data.
+Requires a third \fBint\fR argument, a minimum field width.
.TP 5
TYPE_ALPHA
-Character data. Requires a third \fBint\fR argument, a minimum field width.
+Character data.
+Requires a third \fBint\fR argument, a minimum field width.
.TP 5
TYPE_ENUM
-Accept one of a specified set of strings. Requires additional
-parameters:
+Accept one of a specified set of strings.
+Requires additional parameters:
.RS
.bP
a third \fB(char **)\fR argument pointing to a string list;
This is an ncurses extension;
this field type may not be available in other curses implementations.
.PP
-It is possible to set up new programmer-defined field types. See the
-\fBform_fieldtype\fR(3X) manual page.
+It is possible to set up new programmer-defined field types.
+See the \fBform_fieldtype\fR(3X) manual page.
.SH RETURN VALUE
-The functions \fBfield_type\fR and \fBfield_arg\fR return \fBNULL\fR on
-error. The function \fBset_field_type\fR returns one of the following:
+The functions \fBfield_type\fR and \fBfield_arg\fR return \fBNULL\fR on error.
+The function \fBset_field_type\fR returns one of the following:
.TP 5
.B E_OK
The routine succeeded.
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2010,2018 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: form_fieldtype.3x,v 1.16 2010/12/04 18:40:45 tom Exp $
+.\" $Id: form_fieldtype.3x,v 1.18 2018/07/28 22:08:59 tom Exp $
.TH form_fieldtype 3X ""
.SH NAME
\fBform_fieldtype\fR \- define validation-field types
.br
.SH DESCRIPTION
The function \fBnew_fieldtype\fR creates a new field type usable for data
-validation. You supply it with \fIfield_check\fR, a predicate to check the
+validation.
+You supply it with \fIfield_check\fR, a predicate to check the
validity of an entered data string whenever the user attempts to leave a field.
The (FIELD *) argument is passed in so the validation predicate can see the
field's buffer, sizes and other attributes; the second argument is an
The function \fBfree_fieldtype\fR frees the space allocated for a given
validation type.
.PP
-The function \fBset_fieldtype_arg\fR associates three storage-management functions
-with a field type.
+The function \fBset_fieldtype_arg\fR associates
+three storage-management functions with a field type.
The \fImake_arg\fR function is automatically applied to the
list of arguments you give \fBset_field_type\fR when attaching validation
to a field; its job is to bundle these into an allocated argument-block
\fB(void *)\fR. The type has been left uncorrected for strict compatibility
with System V.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2010,2018 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: form_hook.3x,v 1.11 2010/12/04 18:40:45 tom Exp $
+.\" $Id: form_hook.3x,v 1.12 2018/07/28 21:34:06 tom Exp $
.TH form_hook 3X ""
.SH NAME
\fBform_hook\fR \- set hooks for automatic invocation by applications
points in the automatic processing of input event codes by \fBform_driver\fR.
.PP
The function \fBset_field_init\fR sets a hook to be called at form-post time
-and each time the selected field changes (after the change). \fBfield_init\fR
+and each time the selected field changes (after the change).
+\fBfield_init\fR
returns the current field init hook, if any (\fBNULL\fR if there is no such
hook).
.PP
The function \fBset_field_term\fR sets a hook to be called at form-unpost time
-and each time the selected field changes (before the change). \fBfield_term\fR
+and each time the selected field changes (before the change).
+\fBfield_term\fR
returns the current field term hook, if any (\fBNULL\fR if there is no such
hook).
.PP
The function \fBset_form_init\fR sets a hook to be called at form-post time and
-just after a page change once it is posted. \fBform_init\fR returns the
+just after a page change once it is posted.
+\fBform_init\fR returns the
current form init hook, if any (\fBNULL\fR if there is no such hook).
.PP
The function \fBset_form_term\fR sets a hook to be called at form-unpost time
-and just before a page change once it is posted. \fBform_init\fR
+and just before a page change once it is posted.
+\fBform_init\fR
returns the current form term hook, if any (\fBNULL\fR if there is no such
hook).
.SH RETURN VALUE
-Routines that return pointers return \fBNULL\fR on error. Other routines
+Routines that return pointers return \fBNULL\fR on error.
+Other routines
return one of the following:
.TP 5
.B E_OK
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: form_new.3x,v 1.10 2015/12/05 23:01:16 tom Exp $
+.\" $Id: form_new.3x,v 1.11 2018/07/28 21:34:06 tom Exp $
.TH form_new 3X ""
.SH NAME
\fBnew_form\fR,
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_new_page.3x,v 1.12 2018/04/28 19:58:50 tom Exp $
+.\" $Id: form_new_page.3x,v 1.13 2018/07/28 21:20:04 tom Exp $
.TH form_new_page 3X ""
.SH NAME
\fBset_new_page\fR,
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: form_opts.3x,v 1.12 2015/12/05 23:55:51 tom Exp $
+.\" $Id: form_opts.3x,v 1.13 2018/07/28 21:34:06 tom Exp $
.TH form_opts 3X ""
.SH NAME
\fBset_form_opts\fP,
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2016 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2016,2018 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: form_page.3x,v 1.14 2016/10/29 22:27:24 tom Exp $
+.\" $Id: form_page.3x,v 1.15 2018/07/28 21:34:06 tom Exp $
.TH form_page 3X ""
.SH NAME
\fBform_page\fR \- set and get form page number
form; \fBcurrent_field\fR returns the current field of the given form.
.PP
The function \fBunfocus_current_field\fR removes the focus from the current
-field of the form. In such state, inquiries via \fBcurrent_field\fR shall return
-a NULL pointer.
+field of the form.
+In such state, inquiries via \fBcurrent_field\fR shall return a NULL pointer.
.PP
The function \fBset_form_page\fR sets the form's page number (goes to page
\fIn\fR of the form).
The function \fBform_page\fR returns the form's current page number.
.PP
The function \fBfield_index\fR returns the index of the field in the
-field array of the form it is connected to. It returns \fBERR\fR if
+field array of the form it is connected to.
+It returns \fBERR\fR if
the argument is the null pointer or the field is not connected.
.SH RETURN VALUE
Except for \fBform_page\fR, each routine returns one of the following:
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.PP
The \fBunfocus_current_field\fP function is an ncurses extension.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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: form_post.3x,v 1.11 2017/01/07 19:25:15 tom Exp $
+.\" $Id: form_post.3x,v 1.12 2018/07/28 21:34:06 tom Exp $
.TH form_post 3X ""
.SH NAME
\fBpost_form\fR,
int unpost_form(FORM *form);
.br
.SH DESCRIPTION
-The function \fBpost_form\fR displays a form to its associated subwindow. To
-trigger physical display of the subwindow, use \fBrefresh\fR(3X) or some equivalent
+The function \fBpost_form\fR displays a form to its associated subwindow.
+To trigger physical display of the subwindow,
+use \fBrefresh\fR(3X) or some equivalent
\fBcurses\fR routine (the implicit \fBdoupdate\fR triggered by an \fBcurses\fR
input request will do).
.PP
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: form_requestname.3x,v 1.10 2015/12/05 23:42:45 tom Exp $
+.\" $Id: form_requestname.3x,v 1.11 2018/07/28 21:34:06 tom Exp $
.TH form_requestname 3X ""
.SH NAME
\fBform_request_by_name\fP,
request code.
.br
The function \fBform_request_by_name\fR searches in the name-table for a request
-with the given name and returns its request code. Otherwise E_NO_MATCH is returned.
+with the given name and returns its request code.
+Otherwise E_NO_MATCH is returned.
.SH RETURN VALUE
\fBform_request_name\fR returns \fBNULL\fR on error and sets errno
to \fBE_BAD_ARGUMENT\fR.
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines are specific to ncurses. They were not supported on
-Version 7, BSD or System V implementations. It is recommended that
+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 conditioned using NCURSES_VERSION.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: form_userptr.3x,v 1.14 2015/12/05 23:42:45 tom Exp $
+.\" $Id: form_userptr.3x,v 1.15 2018/07/28 21:34:06 tom Exp $
.TH form_userptr 3X ""
.SH NAME
\fBset_form_userptr\fP,
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.PP
The user pointer is a void pointer.
We chose not to leave it as a char pointer for SVr4 compatibility.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2010,2018 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: form_win.3x,v 1.13 2010/12/04 18:38:55 tom Exp $
+.\" $Id: form_win.3x,v 1.14 2018/07/28 21:34:06 tom Exp $
.TH form_win 3X ""
.SH NAME
\fBform_win\fR \- make and break form window and subwindow associations
int scale_form(const FORM *form, int *rows, int *columns);
.br
.SH DESCRIPTION
-Every form has an associated pair of \fBcurses\fR windows. The form window
+Every form has an associated pair of \fBcurses\fR windows.
+The form window
displays any title and border associated with the window; the form subwindow
displays the items of the form that are currently available for selection.
.PP
-The first four functions get and set those windows. It is not necessary to set
+The first four functions get and set those windows.
+It is not necessary to set
either window; by default, the driver code uses \fBstdscr\fR for both.
.PP
In the \fBset_\fR functions, window argument of \fBNULL\fR is treated as though
The function \fBscale_form\fR returns the minimum size required for the
subwindow of \fIform\fR.
.SH RETURN VALUE
-Routines that return pointers return \fBNULL\fR on error. Routines that return
+Routines that return pointers return \fBNULL\fR on error.
+Routines that return
an integer return one of the following error codes:
.TP 5
.B E_OK
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V forms library. They were not supported on
+These routines emulate the System V forms library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: infocmp.1m,v 1.71 2018/05/19 21:07:17 tom Exp $
+.\" $Id: infocmp.1m,v 1.73 2018/07/28 22:08:59 tom Exp $
.TH @INFOCMP@ 1M ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.de NE
.fi
.ft R
-.in -4
+.ie n .in -4
+.el .in -2
..
.ds d @TERMINFO@
.SH NAME
.IP
The \fB\-u\fR option provides a related output,
showing the first terminal description rewritten to use the second
-as a building block via the \*(``use=\*('' clause.
+as a building block via the \*(``use=\*('' clause.
.TP
\fB\-n\fR
produces a list of each capability that is in \fInone\fP of the given entries.
\fB@INFOCMP@\fR uses the environment variable \fBTERM\fR
for each of the \fItermnames\fR.
.SS Source Listing Options [\-I] [\-L] [\-C] [\-r]
-The \fB\-I\fR, \fB\-L\fR, and \fB\-C\fR options will produce a source listing for
-each terminal named.
+The \fB\-I\fR, \fB\-L\fR, and \fB\-C\fR options will produce
+a source listing for each terminal named.
.
.TS
center tab(/) ;
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1999-2010,2016 Free Software Foundation, Inc. *
+.\" Copyright (c) 1999-2016,2018 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: infotocap.1m,v 1.12 2016/10/15 17:26:09 tom Exp $
+.\" $Id: infotocap.1m,v 1.13 2018/07/28 21:34:06 tom Exp $
.TH @INFOTOCAP@ 1M ""
.ds n 5
.ds d @TERMINFO@
.SH NAME
\fB@INFOTOCAP@\fR \- convert a \fIterminfo\fR description into a \fItermcap\fR description
.SH SYNOPSIS
-\fB@INFOTOCAP@\fR [\fB\-v\fR\fIn\fR \fIwidth\fR] [\fB\-V\fR] [\fB\-1\fR] [\fB\-w\fR \fIwidth\fR] \fIfile\fR . . .
+\fB@INFOTOCAP@\fR [\fB\-v\fR\fIn\fR \fIwidth\fR] [\fB\-V\fR] [\fB\-1\fR] [\fB\-w\fR \fIwidth\fR] \fIfile\fR ...
.SH DESCRIPTION
\fB@INFOTOCAP@\fR looks in each given text
\fIfile\fR for \fBterminfo\fR descriptions.
.\"***************************************************************************
-.\" Copyright (c) 2003-2006,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 2003-2010,2018 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 2003
.\"
-.\" $Id: key_defined.3x,v 1.6 2010/12/04 18:40:45 tom Exp $
+.\" $Id: key_defined.3x,v 1.8 2018/07/28 22:08:59 tom Exp $
.TH key_defined 3X ""
.SH NAME
\fBkey_defined\fP \- check if a keycode is defined
.SH RETURN VALUE
If the string is bound to a keycode, its value (greater than zero) is returned.
If no keycode is bound, zero is returned.
-If the string conflicts with longer strings which are bound to keys, \-1 is returned.
+If the string conflicts with longer strings
+which are bound to keys, \-1 is returned.
.SH PORTABILITY
-These routines are specific to ncurses. They were not supported on
-Version 7, BSD or System V implementations. It is recommended that
+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 conditioned using NCURSES_VERSION.
.SH SEE ALSO
\fBdefine_key\fR(3X).
.\"***************************************************************************
-.\" Copyright (c) 1999-2008,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 1999-2010,2018 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 1999
.\"
-.\" $Id: keybound.3x,v 1.8 2010/12/04 18:49:20 tom Exp $
+.\" $Id: keybound.3x,v 1.9 2018/07/28 21:34:06 tom Exp $
.TH keybound 3X ""
.SH NAME
\fBkeybound\fP \- return definition of keycode
When successful,
the function returns a string which must be freed by the caller.
.SH PORTABILITY
-These routines are specific to ncurses. They were not supported on
-Version 7, BSD or System V implementations. It is recommended that
+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 conditioned using NCURSES_VERSION.
.SH SEE ALSO
\fBdefine_key\fR(3X),
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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
.\"
-.\" $Id: keyok.3x,v 1.12 2017/11/21 00:53:44 tom Exp $
+.\" $Id: keyok.3x,v 1.13 2018/07/28 21:34:56 tom Exp $
.TH keyok 3X ""
.SH NAME
\fBkeyok\fP \- enable or disable a keycode
and vice versa.
Otherwise, the function returns \fBOK\fP.
.SH PORTABILITY
-These routines are specific to ncurses. They were not supported on
-Version 7, BSD or System V implementations. It is recommended that
+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 conditioned using NCURSES_VERSION.
.SH SEE ALSO
\fBdefine_key\fR(3X).
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2014,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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: menu.3x,v 1.24 2017/11/25 20:24:22 tom Exp $
+.\" $Id: menu.3x,v 1.25 2018/07/28 21:34:56 tom Exp $
.TH menu 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.br
.SH DESCRIPTION
The \fBmenu\fR library provides terminal-independent facilities for composing
-menu systems on character-cell terminals. The library includes: item routines,
+menu systems on character-cell terminals.
+The library includes: item routines,
which create and modify menu items; and menu routines, which group items into
menus, display menus on the screen, and handle interaction with the user.
.PP
The \fBmenu\fR library uses the \fBcurses\fR libraries, and a curses
initialization routine such as \fBinitscr\fR must be called before using any of
-these functions. To use the \fBmenu\fR library, link with the options
+these functions.
+To use the \fBmenu\fR library, link with the options
\fB\-lmenu \-lcurses\fR.
.
.SS Current Default Values for Item Attributes
.
-The \fBmenu\fR library maintains a default value for item attributes. You can
+The \fBmenu\fR library maintains a default value for item attributes.
+You can
get or set this default by calling the appropriate \fBget_\fR or \fBset_\fR
-routine with a \fBNULL\fR item pointer. Changing this default with a
+routine with a \fBNULL\fR item pointer.
+Changing this default with a
\fBset_\fR function affects future item creations, but does not change the
rendering of items already created.
.
unpost_menu \fBmenu_post\fR(3X)
.TE
.SH RETURN VALUE
-Routines that return pointers return \fBNULL\fR on error. Routines that return
+Routines that return pointers return \fBNULL\fR on error.
+Routines that return
an integer return one of the following error codes:
.TP 5
.B E_OK
you should say \*(``\-lmenu \-lncurses\*('', not the other way around
(which would give a link-error when using static libraries).
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.PP
The menu facility was documented in SVr4.2 in
.bP
NetBSD curses.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for ncurses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for ncurses by Eric S. Raymond.
.SH SEE ALSO
\fBcurses\fR(3X) and related pages whose names begin \*(``menu_\*(''
for detailed descriptions of the entry points.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: menu_attributes.3x,v 1.13 2015/12/05 20:44:42 jmc Exp $
+.\" $Id: menu_attributes.3x,v 1.14 2018/07/28 21:34:06 tom Exp $
.TH menu_attributes 3X ""
.SH NAME
\fBmenu_back\fR,
.SH DESCRIPTION
The function \fBset_menu_fore\fR sets the foreground attribute of
\fImenu\fR. This is the highlight used for selected menu items.
-\fBmenu_fore\fR returns the foreground attribute. The default
+\fBmenu_fore\fR returns the foreground attribute.
+The default
is \fBA_REVERSE\fR.
.PP
The function \fBset_menu_back\fR sets the background attribute of
\fImenu\fR. This is the highlight used for selectable (but not currently
-selected) menu items. The function \fBmenu_back\fR returns the background
-attribute. The default is \fBA_NORMAL\fR.
+selected) menu items.
+The function \fBmenu_back\fR returns the background
+attribute.
+The default is \fBA_NORMAL\fR.
.PP
The function \fBset_menu_grey\fR sets the grey attribute of \fImenu\fR. This is
the highlight used for un-selectable menu items in menus that permit more than
-one selection. The function \fBmenu_grey\fR returns the grey attribute.
+one selection.
+The function \fBmenu_grey\fR returns the grey attribute.
The default is \fBA_UNDERLINE\fR.
.PP
The function \fBset_menu_pad\fR sets the character used to fill the space
-between the name and description parts of a menu item. \fBmenu_pad\fR returns
-the given menu's pad character. The default is a blank.
+between the name and description parts of a menu item.
+\fBmenu_pad\fR returns
+the given menu's pad character.
+The default is a blank.
.SH RETURN VALUE
These routines return one of the following:
.TP 5
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: menu_cursor.3x,v 1.9 2015/12/05 23:42:45 tom Exp $
+.\" $Id: menu_cursor.3x,v 1.10 2018/07/28 21:34:06 tom Exp $
.TH menu_cursor 3X ""
.SH NAME
\fBpos_menu_cursor\fR \- position a menu's cursor
.br
.SH DESCRIPTION
The function \fBpos_menu_cursor\fR restores the cursor to the current position
-associated with the menu's selected item. This is useful after \fBcurses\fR
+associated with the menu's selected item.
+This is useful after \fBcurses\fR
routines have been called to do screen-painting in response to a menu select.
.SH RETURN VALUE
This routine returns one of the following:
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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: menu_driver.3x,v 1.22 2017/11/18 23:47:37 tom Exp $
+.\" $Id: menu_driver.3x,v 1.24 2018/07/28 22:08:59 tom Exp $
.TH menu_driver 3X ""
.de bP
.ie n .IP \(bu 4
.bP
The input is a form navigation request.
Navigation request codes are constants defined in \fB<form.h>\fP,
-which are distinct from the key- and character codes returned by \fBwgetch\fP(3X).
+which are distinct from the key- and character codes
+returned by \fBwgetch\fP(3X).
.bP
The input is a printable character.
Printable characters (which must be positive, less than 256) are
.PP
If the second argument is a printable character, the code appends
it to the pattern buffer and attempts to move to the next item matching
-the new pattern. If there is no such match, \fBmenu_driver\fR returns
+the new pattern.
+If there is no such match, \fBmenu_driver\fR returns
\fBE_NO_MATCH\fR and deletes the appended character from the buffer.
.PP
If the second argument is one of the above pre-defined requests, the
If a translation
into a request was done, \fBmenu_driver\fR returns the result of this request.
.PP
-If you clicked outside the user window or the mouse event could not be translated
+If you clicked outside the user window
+or the mouse event could not be translated
into a menu request an \fBE_REQUEST_DENIED\fR is returned.
.SS APPLICATION-DEFINED COMMANDS
.PP
If the second argument is neither printable nor one of the above
-pre-defined menu requests or KEY_MOUSE, the drive assumes it is an application-specific
+pre-defined menu requests or KEY_MOUSE,
+the drive assumes it is an application-specific
command and returns \fBE_UNKNOWN_COMMAND\fR. Application-defined commands
should be defined relative to \fBMAX_COMMAND\fR, the maximum value of these
pre-defined requests.
The header file \fB<menu.h>\fR automatically includes the header files
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
-Version 7 or BSD versions. The support for mouse events is ncurses specific.
+These routines emulate the System V menu library.
+They were not supported on
+Version 7 or BSD versions.
+The support for mouse events is ncurses specific.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2015,2016 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2016,2018 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: menu_format.3x,v 1.14 2016/10/15 17:02:31 tom Exp $
+.\" $Id: menu_format.3x,v 1.15 2018/07/28 21:34:06 tom Exp $
.TH menu_format 3X ""
.SH NAME
\fBset_menu_format\fP,
.br
.SH DESCRIPTION
The function \fBset_menu_format\fR sets the maximum display size of the given
-menu. If this size is too small to display all menu items, the menu will be
-made scrollable. If this size is larger than the menus subwindow and the
+menu.
+If this size is too small to display all menu items, the menu will be
+made scrollable.
+If this size is larger than the menus subwindow and the
subwindow is too small to display all menu items, \fBpost_menu\fR will fail.
.PP
-The default format is 16 rows, 1 column. Calling \fBset_menu_format\fR with a
-null menu pointer will change this default. A zero row or column argument to
+The default format is 16 rows, 1 column.
+Calling \fBset_menu_format\fR with a
+null menu pointer will change this default.
+A zero row or column argument to
\fBset_menu_format\fR is interpreted as a request not to change the current
value.
.PP
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2010,2018 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: menu_hook.3x,v 1.11 2010/12/04 18:40:45 tom Exp $
+.\" $Id: menu_hook.3x,v 1.12 2018/07/28 21:34:06 tom Exp $
.TH menu_hook 3X ""
.SH NAME
\fBmenu_hook\fR \- set hooks for automatic invocation by applications
points in the automatic processing of input event codes by \fBmenu_driver\fR.
.PP
The function \fBset_item_init\fR sets a hook to be called at menu-post time and
-each time the selected item changes (after the change). \fBitem_init\fR
+each time the selected item changes (after the change).
+\fBitem_init\fR
returns the current item init hook, if any (\fBNULL\fR if there is no such
hook).
.PP
The function \fBset_item_term\fR sets a hook to be called at menu-unpost time
-and each time the selected item changes (before the change). \fBitem_term\fR
+and each time the selected item changes (before the change).
+\fBitem_term\fR
returns the current item term hook, if any (\fBNULL\fR if there is no such
hook).
.PP
The function \fBset_menu_init\fR sets a hook to be called at menu-post time and
-just after the top row on the menu changes once it is posted. \fBmenu_init\fR
+just after the top row on the menu changes once it is posted.
+\fBmenu_init\fR
returns the current menu init hook, if any (\fBNULL\fR if there is no such
hook).
.PP
\fBmenu_term\fR returns the current menu term hook, if any (\fBNULL\fR if there
is no such hook).
.SH RETURN VALUE
-Routines that return pointers return \fBNULL\fR on error. Other routines
+Routines that return pointers return \fBNULL\fR on error.
+Other routines
return one of the following:
.TP 5
.B E_OK
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric
S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2012,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: menu_items.3x,v 1.11 2015/12/05 23:47:32 tom Exp $
+.\" $Id: menu_items.3x,v 1.12 2018/07/28 21:34:06 tom Exp $
.TH menu_items 3X ""
.SH NAME
\fBset_menu_items\fR,
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.PP
The SVr4 menu library documentation specifies the \fBitem_count\fR error value
as \-1 (which is the value of \fBERR\fR).
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: menu_mark.3x,v 1.12 2015/12/05 23:42:45 tom Exp $
+.\" $Id: menu_mark.3x,v 1.13 2018/07/28 21:34:06 tom Exp $
.TH menu_mark 3X ""
.SH NAME
\fBset_menu_mark\fP,
Note that changing the length of the mark string for a menu while the
menu is posted is likely to produce unhelpful behavior.
.PP
-The default string is "\-" (a dash). Calling \fBset_menu_mark\fR with
+The default string is "\-" (a dash).
+Calling \fBset_menu_mark\fR with
a non-\fBNULL\fR menu argument will change this default.
.PP
The function \fBmenu_mark\fR returns the menu's mark string (or \fBNULL\fR if
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: menu_new.3x,v 1.12 2015/12/05 23:42:45 tom Exp $
+.\" $Id: menu_new.3x,v 1.13 2018/07/28 21:34:06 tom Exp $
.TH menu_new 3X ""
.SH NAME
\fBnew_menu\fP,
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2015,2016 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2016,2018 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: menu_opts.3x,v 1.14 2016/03/26 22:42:41 tom Exp $
+.\" $Id: menu_opts.3x,v 1.15 2018/07/28 21:34:06 tom Exp $
.TH menu_opts 3X ""
.SH NAME
\fBset_menu_opts\fP,
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: menu_pattern.3x,v 1.14 2015/12/05 23:42:45 tom Exp $
+.\" $Id: menu_pattern.3x,v 1.16 2018/07/28 22:08:59 tom Exp $
.TH menu_pattern 3X ""
.SH NAME
\fBset_menu_pattern\fP,
char *menu_pattern(const MENU *menu);
.br
.SH DESCRIPTION
-Every menu has an associated pattern match buffer. As input events that are
+Every menu has an associated pattern match buffer.
+As input events that are
printable characters come in, they are appended to this match buffer
and tested for a match, as described in \fBmenu_driver\fR(3X).
.PP
The function \fBset_menu_pattern\fR sets the pattern buffer for the given menu
-and tries to find the first matching item. If it succeeds, that item becomes
-current; if not, the current item does not change.
+and tries to find the first matching item.
+If it succeeds, that item becomes
+current; if not, the current item does not change.
.PP
The function \fBmenu_pattern\fR returns the pattern buffer of the given
\fImenu\fR.
.SH RETURN VALUE
-The function \fBmenu_pattern\fR returns a pointer, which is \fBNULL\fR if the \fImenu\fP parameter is \fBNULL\fP.
-Otherwise, it is a pointer to a string which is empty if no pattern has been set.
+The function \fBmenu_pattern\fR returns a pointer,
+which is \fBNULL\fR if the \fImenu\fP parameter is \fBNULL\fP.
+Otherwise, it is a pointer to a string which is empty
+if no pattern has been set.
It does not set errno.
.PP
The function \fBset_menu_pattern\fR may return the following error codes:
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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: menu_post.3x,v 1.14 2017/01/07 19:25:15 tom Exp $
+.\" $Id: menu_post.3x,v 1.16 2018/07/28 22:08:59 tom Exp $
.TH menu_post 3X ""
.SH NAME
\fBpost_menu\fR,
int unpost_menu(MENU *menu);
.br
.SH DESCRIPTION
-The function \fBpost_menu\fR displays a menu to its associated subwindow. To
-trigger physical display of the subwindow, use \fBrefresh\fR(3X) or some equivalent
+The function \fBpost_menu\fR displays a menu to its associated subwindow.
+To
+trigger physical display of the subwindow,
+use \fBrefresh\fR(3X) or some equivalent
\fBcurses\fR routine (the implicit \fBdoupdate\fR triggered by an \fBcurses\fR
-input request will do). \fBpost_menu\fR resets the selection status of all items.
+input request will do).
+\fBpost_menu\fR resets the selection status of all items.
.PP
The function \fBunpost_menu\fR erases menu from its associated subwindow.
.SH RETURN VALUE
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: menu_requestname.3x,v 1.10 2015/12/05 23:42:45 tom Exp $
+.\" $Id: menu_requestname.3x,v 1.11 2018/07/28 21:34:06 tom Exp $
.TH menu_requestname 3X ""
.SH NAME
\fBmenu_request_by_name\fP,
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines are specific to ncurses. They were not supported on
-Version 7, BSD or System V implementations. It is recommended that
+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 conditioned using NCURSES_VERSION.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: menu_spacing.3x,v 1.13 2015/12/05 23:42:45 tom Exp $
+.\" $Id: menu_spacing.3x,v 1.14 2018/07/28 22:20:54 tom Exp $
.TH menu_spacing 3X ""
.SH NAME
\fBset_menu_spacing\fP,
.br
.SH DESCRIPTION
The function \fBset_menu_spacing\fR sets the spacing information for the menu.
-Its parameter \fBspc_description\fR controls the number of spaces between an item name and an item
-description.
+Its parameter \fBspc_description\fR controls the number of spaces
+between an item name and an item description.
It must not be larger than \fBTABSIZE\fR.
The menu system puts in the
middle of this spacing area the pad character.
The remaining parts are filled with
spaces.
-The \fBspc_rows\fR parameter controls the number of rows that are used for an item.
+The \fBspc_rows\fR parameter controls the number of rows
+that are used for an item.
It must not be larger than 3.
The menu system inserts the blank lines between item rows, these lines
will contain the pad character in the appropriate positions.
-The \fBspc_columns\fR parameter controls the number of blanks between columns of items.
+The \fBspc_columns\fR parameter controls
+the number of blanks between columns of items.
It must not be larger than TABSIZE.
-A value of 0 for all the spacing values resets them to the default, which is 1 for all
-of them.
+A value of 0 for all the spacing values resets them to the default,
+which is 1 for all of them.
.br
The function \fBmenu_spacing\fR passes back the spacing info for the menu.
If a
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: menu_userptr.3x,v 1.11 2015/12/05 23:42:45 tom Exp $
+.\" $Id: menu_userptr.3x,v 1.12 2018/07/28 21:34:06 tom Exp $
.TH menu_userptr 3X ""
.SH NAME
\fBset_menu_userptr\fP,
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.PP
The user pointer is a void pointer.
We chose not to leave it as a char pointer for SVr4 compatibility.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2010,2018 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: menu_win.3x,v 1.11 2010/12/04 18:38:55 tom Exp $
+.\" $Id: menu_win.3x,v 1.12 2018/07/28 21:34:06 tom Exp $
.TH menu_win 3X ""
.SH NAME
\fBmenu_win\fR \- make and break menu window and subwindow associations
int scale_menu(const MENU *menu, int *rows, int *columns);
.br
.SH DESCRIPTION
-Every menu has an associated pair of \fBcurses\fR windows. The menu window
+Every menu has an associated pair of \fBcurses\fR windows.
+The menu window
displays any title and border associated with the window; the menu subwindow
displays the items of the menu that are currently available for selection.
.PP
-The first four functions get and set those windows. It is not necessary to set
+The first four functions get and set those windows.
+It is not necessary to set
either window; by default, the driver code uses \fBstdscr\fR for both.
.PP
In the \fBset_\fR functions, window argument of \fBNULL\fR is treated as though
The function \fBscale_menu\fR returns the minimum size required for the
subwindow of \fImenu\fR.
.SH RETURN VALUE
-Routines that return pointers return \fBNULL\fR on error. Routines that return
+Routines that return pointers return \fBNULL\fR on error.
+Routines that return
an integer return one of the following error codes:
.TP 5
.B E_OK
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2010,2018 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: mitem_current.3x,v 1.13 2010/12/04 18:40:45 tom Exp $
+.\" $Id: mitem_current.3x,v 1.14 2018/07/28 21:34:06 tom Exp $
.TH mitem_current 3X ""
.SH NAME
\fBmitem_current\fR \- set and get current_menu_item
.br
.SH DESCRIPTION
The function \fBset_current_item\fR sets the current item (the item on which
-the menu cursor is positioned). \fBcurrent_item\fR returns a pointer to the
+the menu cursor is positioned).
+\fBcurrent_item\fR returns a pointer to the
current item in the given menu.
.PP
The function \fBset_top_row\fR sets the top row of the menu to show the given
row (the top row is initially 0, and is reset to this value whenever the
-\fBO_ROWMAJOR\fR option is toggled). The item leftmost on the given row
-becomes current. The function \fBtop_row\fR returns the number of the top menu
+\fBO_ROWMAJOR\fR option is toggled).
+The item leftmost on the given row
+becomes current.
+The function \fBtop_row\fR returns the number of the top menu
row being displayed.
.PP
The function \fBitem_index\fR returns the (zero-origin) index of \fIitem\fR in
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.PP
The SVr4 menu library documentation specifies the \fBtop_row\fR and
\fBindex_item\fR error value as \-1 (which is the value of \fBERR\fR).
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: mitem_name.3x,v 1.9 2015/12/05 23:42:45 tom Exp $
+.\" $Id: mitem_name.3x,v 1.10 2018/07/28 21:34:06 tom Exp $
.TH mitem_name 3X ""
.SH NAME
\fBitem_name\fR,
These routines emulate the System V menu library.
They were not supported on Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: mitem_new.3x,v 1.13 2015/12/05 23:42:45 tom Exp $
+.\" $Id: mitem_new.3x,v 1.14 2018/07/28 21:34:06 tom Exp $
.TH mitem_new 3X ""
.SH NAME
\fBnew_item\fP,
.br
.SH DESCRIPTION
The function \fBnew_item\fR allocates a new item and initializes it from the
-\fBname\fR and \fBdescription\fR pointers. Please notice that the item stores
-only the pointers to the name and description. Those pointers must be valid
-during the lifetime of the item. So you should be very careful with names
+\fBname\fR and \fBdescription\fR pointers.
+Please notice that the item stores
+only the pointers to the name and description.
+Those pointers must be valid
+during the lifetime of the item.
+So you should be very careful with names
or descriptions allocated on the stack of some routines.
.br
-The function \fBfree_item\fR de-allocates an item. Please notice that it
+The function \fBfree_item\fR de-allocates an item.
+Please notice that it
is the responsibility of the application to release the memory for the
name or the description of the item.
.SH RETURN VALUE
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: mitem_opts.3x,v 1.12 2015/12/05 23:42:45 tom Exp $
+.\" $Id: mitem_opts.3x,v 1.13 2018/07/28 21:34:06 tom Exp $
.TH mitem_opts 3X ""
.SH NAME
\fBset_item_opts\fP,
The function \fBitem_opts\fR returns the item's current option bits.
.PP
There is only one defined option bit mask, \fBO_SELECTABLE\fR. When this is
-on, the item may be selected during menu processing. This option defaults
+on, the item may be selected during menu processing.
+This option defaults
to on.
.SH RETURN VALUE
Except for \fBitem_opts\fR, each routine returns one of the following:
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: mitem_userptr.3x,v 1.12 2015/12/05 23:42:45 tom Exp $
+.\" $Id: mitem_userptr.3x,v 1.13 2018/07/28 21:34:06 tom Exp $
.TH mitem_userptr 3X ""
.SH NAME
\fBset_item_userptr\fP,
.br
.SH DESCRIPTION
Every menu item has a field that can be used to hold application-specific data
-(that is, the menu-driver code leaves it alone). These functions get and set
+(that is, the menu-driver code leaves it alone).
+These functions get and set
that field.
.SH RETURN VALUE
The function \fBitem_userptr\fR returns a pointer (possibly \fBNULL\fR).
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.PP
The user pointer is a void pointer.
We chose not to leave it as a char pointer for SVr4 compatibility.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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: mitem_value.3x,v 1.11 2015/12/05 23:01:16 tom Exp $
+.\" $Id: mitem_value.3x,v 1.12 2018/07/28 21:34:06 tom Exp $
.TH mitem_value 3X ""
.SH NAME
\fBset_item_value\fP,
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2010,2018 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: mitem_visible.3x,v 1.7 2010/12/04 18:40:45 tom Exp $
+.\" $Id: mitem_visible.3x,v 1.8 2018/07/28 21:34:06 tom Exp $
.TH mitem_visible 3X ""
.SH NAME
\fBmitem_visible\fR \- check visibility of a menu item
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
-These routines emulate the System V menu library. They were not supported on
+These routines emulate the System V menu library.
+They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
-Juergen Pfeifer. Manual pages and adaptation for new curses by Eric
-S. Raymond.
+Juergen Pfeifer.
+Manual pages and adaptation for new curses by Eric S. Raymond.
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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: ncurses.3x,v 1.136 2017/11/18 23:48:44 tom Exp $
+.\" $Id: ncurses.3x,v 1.140 2018/07/28 23:30:17 tom Exp $
.hy 0
.TH ncurses 3X ""
.ie \n(.g .ds `` \(lq
.de NE
.fi
.ft R
-.in -4
+.ie n .in -4
+.el .in -2
..
.ds n 5
.ds d @TERMINFO@
support, \fBncurses\fR will check for a terminal's description in
termcap form if it is not available in the terminfo database.
.PP
-The \fBTERMCAP\fP environment variable contains either a terminal description (with
-newlines stripped out),
+The \fBTERMCAP\fP environment variable contains
+either a terminal description (with newlines stripped out),
or a file name telling where the information denoted by
the \fBTERM\fP environment variable exists.
In either case, setting it directs \fBncurses\fR to ignore
.SS TERMINFO
.PP
\fBncurses\fP can be configured to read from multiple terminal databases.
-The \fBTERMINFO\fP variable overrides the location for the default terminal database.
+The \fBTERMINFO\fP variable overrides the location for
+the default terminal database.
Terminal descriptions (in terminal format) are stored in terminal databases:
.bP
Normally these are stored in a directory tree,
\fB\-lncursesw\fR
.NE
.IP
-You must also define \fB_XOPEN_SOURCE_EXTENDED\fP when compiling for the
-wide-character library to use the extended (wide-character) functions.
+You must also enable the wide-character features in the header file
+when compiling for the wide-character library
+to use the extended (wide-character) functions.
+The symbol which enables these features has changed since XSI Curses, Issue 4:
+.RS
+.bP
+Originally, the wide-character feature required the symbol
+\fB_XOPEN_SOURCE_EXTENDED\fP
+but that was only valid for XPG4 (1996).
+.bP
+Later, that was deemed conflicting with \fB_XOPEN_SOURCE\fP defined to 500.
+.bP
+As of mid-2018,
+none of the features in this implementation require a \fB_XOPEN_SOURCE\fP
+feature greater than 600.
+However, X/Open Curses, Issue 7 (2009) recommends defining it to 700.
+.bP
+Alternatively, you can enable the feature by defining \fBNCURSES_WIDECHAR\fP
+with the caveat that some other header file than \fBcurses.h\fP
+may require a specific value for \fB_XOPEN_SOURCE\fP
+(or a system-specific symbol).
+.RE
+.IP
The \fBcurses.h\fP file which is installed for the wide-character
library is designed to be compatible with the normal library's header.
Only the size of the \fBWINDOW\fP structure differs, and very few
applications require more than a pointer to \fBWINDOW\fPs.
+.IP
If the headers are installed allowing overwrite,
the wide-character library's headers should be installed last,
to allow applications to be built using either library
.\"
.\" Author: Thomas E. Dickey
.\"
-.\" $Id: new_pair.3x,v 1.11 2018/04/01 00:01:17 tom Exp $
+.\" $Id: new_pair.3x,v 1.13 2018/07/28 22:19:56 tom Exp $
.TH new_pair 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.de NE
.fi
.ft R
-.in -4
+.ie n .in -4
+.el .in -2
..
.SH NAME
\fBalloc_pair\fP,
\fBCOLORS\fP\fI * \fP\fBCOLORS\fP
.NE
.bP
-Terminals which support \fIdefault colors\fP distinct from \*(``ANSI colors\*(''
+Terminals which support \fIdefault colors\fP distinct
+from \*(``ANSI colors\*(''
add to the possible combinations, producing this total:
.NS
\fI( \fP\fBCOLORS\fP\fI + 1 ) * ( \fP\fBCOLORS\fP\fI + 1 )\fP
foreground and background color, and
checks if that color combination is already associated with a color pair.
.bP
-If the combination already exists, \fBalloc_pair\fP returns the existing pair.
+If the combination already exists,
+\fBalloc_pair\fP returns the existing pair.
.bP
-If the combination does not exist, \fBalloc_pair\fP allocates a new color pair and returns that.
+If the combination does not exist,
+\fBalloc_pair\fP allocates a new color pair and returns that.
.bP
If the table fills up, \fBalloc_pair\fP discards the least-recently
allocated entry using \fBfree_pair\fP and allocates a new color pair.
The \fBalloc_pair\fP function returns a color pair number in the range
1 through \fBCOLOR_PAIRS\fP\-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.
+a color pair.
+In that case, it returns \-1.
.PP
The \fBfind_pair\fP function returns a color pair number if the
given color combination has been associated with a color pair,
Likewise, \fBfree_pair\fP returns \fBOK\fP unless it encounters an
error updating the fast index or if no such color pair is in use.
.SH PORTABILITY
-These routines are specific to ncurses. They were not supported on
-Version 7, BSD or System V implementations. It is recommended that
+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 conditioned using NCURSES_VERSION.
.SH SEE ALSO
\fBcurs_color\fR(3X).
.\"***************************************************************************
-.\" Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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: panel.3x,v 1.24 2017/11/25 20:31:13 tom Exp $
+.\" $Id: panel.3x,v 1.26 2018/07/28 22:56:56 tom Exp $
.TH panel 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.br
.SH DESCRIPTION
Panels are \fBcurses\fR(3X) windows with the added feature of
-depth. Panel functions allow the use of stacked windows and ensure
+depth.
+Panel functions allow the use of stacked windows and ensure
the proper portions of each window and the curses \fBstdscr\fR window are
hidden or displayed when panels are added, moved, modified or removed.
-The set of currently visible panels is the stack of panels. The
+The set of currently visible panels is the stack of panels.
+The
\fBstdscr\fR window is beneath all panels, and is not considered part
of the stack.
.P
-A window is associated with every panel. The panel routines enable
+A window is associated with every panel.
+The panel routines enable
you to create, move, hide, and show panels, as well as position a
panel at any desired location in the stack.
.P
pointer to the new panel.
.TP
.B update_panels
-refreshes the virtual screen to reflect the relations between the
+refreshes the \fIvirtual screen\fP to reflect the relations between the
panels in the stack, but does not call \fBdoupdate\fP to refresh the
-physical screen.
+\fIphysical screen\fP.
Use this function and not \fBwrefresh\fP or \fBwnoutrefresh\fP.
.B update_panels
may be called more than once before a call to
\fBdoupdate\fP, but \fBdoupdate\fP is the function responsible for updating
-the physical screen.
+the \fIphysical screen\fP.
.TP
.B del_panel(pan)
removes the given panel from the stack and deallocates the
.TP
.B hide_panel(pan)
removes the given panel from the panel stack and thus hides it from
-view. The \fBPANEL\fR structure is not lost, merely removed from the stack.
+view.
+The \fBPANEL\fR structure is not lost, merely removed from the stack.
.TP
.B panel_hidden(pan)
returns \fBTRUE\fP if the panel is in the panel stack,
.TP
.B show_panel(pan)
makes a hidden panel visible by placing it on top of the panels in the
-panel stack. See COMPATIBILITY below.
+panel stack.
+See COMPATIBILITY below.
.TP
.B top_panel(pan)
-puts the given visible panel on top of all panels in the stack. See
+puts the given visible panel on top of all panels in the stack.
+See
COMPATIBILITY below.
.TP
.B bottom_panel(pan)
.TP
.B move_panel(pan,starty,startx)
moves the given panel window so that its upper-left corner is at
-\fBstarty\fR, \fBstartx\fR. It does not change the position of the
-panel in the stack. Be sure to use this function, not \fBmvwin\fR,
+\fBstarty\fR, \fBstartx\fR.
+It does not change the position of the
+panel in the stack.
+Be sure to use this function, not \fBmvwin\fR,
to move a panel window.
.TP
.B replace_panel(pan,window)
It does not change the position of the panel in the stack.
.TP
.B panel_above(pan)
-returns a pointer to the panel above pan. If the panel argument is
+returns a pointer to the panel above pan.
+If the panel argument is
\fB(PANEL *)0\fR, it returns a pointer to the bottom panel in the stack.
.TP
.B panel_below(pan)
-returns a pointer to the panel just below pan. If the panel argument
+returns a pointer to the panel just below pan.
+If the panel argument
is \fB(PANEL *)0\fR, it returns a pointer to the top panel in the stack.
.TP
.B set_panel_userptr(pan,ptr)
returns a pointer to the window of the given panel.
.SH DIAGNOSTICS
Each routine that returns a pointer returns \fBNULL\fR if an error
-occurs. Each routine that returns an int value returns \fBOK\fR if it
+occurs.
+Each routine that returns an int value returns \fBOK\fR if it
executes successfully and \fBERR\fR if not.
.SH COMPATIBILITY
Reasonable care has been taken to ensure compatibility
with the native panel facility introduced in System V (inspection of
the SVr4 manual pages suggests the programming interface is unchanged).
-The \fBPANEL\fR data structures are merely similar. The programmer
+The \fBPANEL\fR data structures are merely similar.
+The programmer
is cautioned not to directly use \fBPANEL\fR fields.
.P
The functions \fBshow_panel\fR and \fBtop_panel\fR are identical
in this implementation, and work equally well with displayed or hidden
-panels. In the native System V implementation, \fBshow_panel\fR is
+panels.
+In the native System V implementation, \fBshow_panel\fR is
intended for making a hidden panel visible (at the top of the stack)
and \fBtop_panel\fR is intended for making an already-visible panel
-move to the top of the stack. You are cautioned to use the correct
+move to the top of the stack.
+You are cautioned to use the correct
function to ensure compatibility with native panel libraries.
.SH NOTE
In your library list, libpanel.a should be before libncurses.a; that is,
.SH AUTHOR
Originally written by Warren Tucker <wht@n4hgf.mt-park.ga.us>,
primarily to assist in porting u386mon to systems without a native
-panels library. Repackaged for ncurses by Zeyd ben-Halim.
+panels library.
+Repackaged for ncurses by Zeyd ben-Halim.
.\"***************************************************************************
-.\" Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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 1996-on
.\"
-.\" $Id: resizeterm.3x,v 1.24 2017/11/18 23:47:37 tom Exp $
+.\" $Id: resizeterm.3x,v 1.25 2018/07/28 22:20:54 tom Exp $
.TH resizeterm 3X ""
.de bP
.ie n .IP \(bu 4
.SS resize_term
.PP
Most of the work is done by the inner function \fBresize_term\fR.
-The outer function \fBresizeterm\fR adds bookkeeping for the \fBSIGWINCH\fP handler.
+The outer function \fBresizeterm\fR adds bookkeeping
+for the \fBSIGWINCH\fP handler.
When resizing the windows,
\fBresize_term\fR blank-fills the areas that are extended.
The calling application should fill in these areas with appropriate data.
.PP
A support function \fBis_term_resized\fR is provided so that applications
can check if the \fBresize_term\fR function would modify the window structures.
-It returns \fBTRUE\fP if the windows would be modified, and \fBFALSE\fP otherwise.
+It returns \fBTRUE\fP if the windows would be modified,
+and \fBFALSE\fP otherwise.
.SH RETURN VALUE
Except as noted, these functions return
the integer \fBERR\fR upon failure and \fBOK\fR on success.
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: scr_dump.5,v 1.13 2018/05/19 21:10:21 tom Exp $
+.\" $Id: scr_dump.5,v 1.15 2018/07/28 21:46:15 tom Exp $
.TH scr_dump 5
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.de NE
.fi
.ft R
-.in -4
+.ie n .in -4
+.el .in -2
..
.de bP
.ie n .IP \(bu 4
(back color erase) capability, and does not color the window background.
.ne 10
.PP
-On the other hand, the SVr4 curses library does know about the background
-color. However, its screen dumps are in binary.
+On the other hand, the SVr4 curses library does know about the background color.
+However, its screen dumps are in binary.
Here is the corresponding dump (using \*(``od -t x1\*(''):
.NS
0000000 1c 01 c3 d6 f3 58 05 00 0b 00 0a 00 14 00 00 00
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: tabs.1,v 1.17 2018/05/19 21:07:46 tom Exp $
+.\" $Id: tabs.1,v 1.19 2018/07/28 21:46:31 tom Exp $
.TH @TABS@ 1 ""
.ds n 5
.ie \n(.g .ds `` \(lq
.de NE
.fi
.ft R
-.in -4
+.ie n .in -4
+.el .in -2
..
.SH NAME
\fB@TABS@\fR \- set tabs on a terminal
by other implementations.
.PP
Documentation for other implementations states that there is a limit on the
-number of tab stops. While some terminals may not accept an arbitrary number
+number of tab stops.
+While some terminals may not accept an arbitrary number
of tab stops, this implementation will attempt to set tab stops up to the
right margin of the screen, if the given list happens to be that long.
.SH SEE ALSO
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: term.5,v 1.29 2018/05/19 21:09:25 tom Exp $
+.\" $Id: term.5,v 1.30 2018/07/28 21:46:48 tom Exp $
.TH term 5
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.de NE
.fi
.ft R
-.in -4
+.ie n .in -4
+.el .in -2
..
.de bP
.ie n .IP \(bu 4
.\"***************************************************************************
-.\" Copyright (c) 1998-2011,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 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: term.7,v 1.24 2017/02/18 17:01:51 tom Exp $
+.\" $Id: term.7,v 1.26 2018/07/28 22:19:56 tom Exp $
.TH term 7
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.SH DESCRIPTION
.PP
The environment variable \fBTERM\fR should normally contain the type name of
-the terminal, console or display-device type you are using. This information
+the terminal, console or display-device type you are using.
+This information
is critical for all screen-oriented programs, including your editor and mailer.
.PP
A default \fBTERM\fR value will be set on a per-line basis by either
or \fB/etc/ttys\fR (BSD UNIXes).
This will nearly always suffice for workstation and microcomputer consoles.
.PP
-If you use a dialup line, the type of device attached to it may vary. Older
-UNIX systems pre-set a very dumb terminal type like \*(``dumb\*('' or \*(``dialup\*('' on
-dialup lines. Newer ones may pre-set \*(``vt100\*('', reflecting the prevalence of DEC
+If you use a dialup line, the type of device attached to it may vary.
+Older UNIX systems pre-set a very dumb terminal type
+like \*(``dumb\*('' or \*(``dialup\*('' on dialup lines.
+Newer ones may pre-set \*(``vt100\*('', reflecting the prevalence of DEC
VT100-compatible terminals and personal-computer emulators.
.PP
Modern telnets pass your \fBTERM\fR environment variable from the local side to
-the remote one. There can be problems if the remote terminfo or termcap entry
+the remote one.
+There can be problems if the remote terminfo or termcap entry
for your type is not compatible with yours, but this situation is rare and
-can almost always be avoided by explicitly exporting \*(``vt100\*('' (assuming you
-are in fact using a VT100-superset console, terminal, or terminal emulator.)
+can almost always be avoided by explicitly exporting \*(``vt100\*(''
+(assuming you are in fact using a VT100-superset console,
+terminal, or terminal emulator.)
.PP
In any case, you are free to override the system \fBTERM\fR setting to your
-taste in your shell profile. The \fB@TSET@\fP(1) utility may be of assistance;
+taste in your shell profile.
+The \fB@TSET@\fP(1) utility may be of assistance;
you can give it a set of rules for deducing or requesting a terminal type based
on the tty device and baud rate.
.PP
which you wish to override the system default type for your line.
.PP
Terminal type descriptions are stored as files of capability data underneath
-\*d. To browse a list of all terminal names recognized by the system, do
+\*d.
+To browse a list of all terminal names recognized by the system, do
.sp
@TOE@ | more
.sp
-from your shell. These capability files are in a binary format optimized for
+from your shell.
+These capability files are in a binary format optimized for
retrieval speed (unlike the old text-based \fBtermcap\fR format they replace);
to examine an entry, you must use the \fB@INFOCMP@\fR(1M) command.
Invoke it as follows:
.sp
where \fIentry_name\fR is the name of the type you wish to examine (and the
name of its capability file the subdirectory of \*d named for its first
-letter). This command dumps a capability file in the text format described by
+letter).
+This command dumps a capability file in the text format described by
\fBterminfo\fR(\*n).
.PP
The first line of a \fBterminfo\fR(\*n) description gives the names by which
-terminfo knows a terminal, separated by \*(``|\*('' (pipe-bar) characters with the last
-name field terminated by a comma. The first name field is the type's
+terminfo knows a terminal,
+separated by \*(``|\*('' (pipe-bar) characters with the last
+name field terminated by a comma.
+The first name field is the type's
\fIprimary name\fR, and is the one to use when setting \fBTERM\fR. The last
name field (if distinct from the first) is actually a description of the
-terminal type (it may contain blanks; the others must be single words). Name
+terminal type (it may contain blanks; the others must be single words).
+Name
fields between the first and last (if present) are aliases for the terminal,
usually historical names retained for compatibility.
.PP
There are some conventions for how to choose terminal primary names that help
-keep them informative and unique. Here is a step-by-step guide to naming
+keep them informative and unique.
+Here is a step-by-step guide to naming
terminals that also explains how to parse them:
.PP
-First, choose a root name. The root will consist of a lower-case letter
-followed by up to seven lower-case letters or digits. You need to avoid using
+First, choose a root name.
+The root will consist of a lower-case letter
+followed by up to seven lower-case letters or digits.
+You need to avoid using
punctuation characters in root names, because they are used and interpreted as
filenames and shell meta-characters (such as !, $, *, ?, etc.) embedded in them
-may cause odd and unhelpful behavior. The slash (/), or any other character
+may cause odd and unhelpful behavior.
+The slash (/), or any other character
that may be interpreted by anyone's file system (\e, $, [, ]), is especially
dangerous (terminfo is platform-independent, and choosing names with special
-characters could someday make life difficult for users of a future port). The
+characters could someday make life difficult for users of a future port).
+The
dot (.) character is relatively safe as long as there is at most one per root
name; some historical terminfo names use it.
.PP
feature suffixes.
.TP 5
2p
-Has two pages of memory. Likewise 4p, 8p, etc.
+Has two pages of memory.
+Likewise 4p, 8p, etc.
.TP 5
mc
-Magic-cookie. Some terminals (notably older Wyses) can only support one
-attribute without magic-cookie lossage. Their base entry is usually paired
+Magic-cookie.
+Some terminals (notably older Wyses) can only support one
+attribute without magic-cookie lossage.
+Their base entry is usually paired
with another that has this suffix and uses magic cookies to support multiple
attributes.
.TP 5
Wide; terminal is in 132 column mode.
.PP
Conventionally, if your terminal type is a variant intended to specify a
-line height, that suffix should go first. So, for a hypothetical FuBarCo
+line height, that suffix should go first.
+So, for a hypothetical FuBarCo
model 2317 terminal in 30-line mode with reverse video, best form would be
\fBfubar\-30\-rv\fR (rather than, say, \*(``fubar\-rv\-30\*('').
.PP
are distinguished by using embedded plus signs rather than dashes.
.PP
Commands which use a terminal type to control display often accept a \-T
-option that accepts a terminal name argument. Such programs should fall back
+option that accepts a terminal name argument.
+Such programs should fall back
on the \fBTERM\fR environment variable when no \-T option is specified.
.SH PORTABILITY
For maximum compatibility with older System V UNIXes, names and aliases
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: terminfo.head,v 1.34 2018/05/19 20:57:27 tom Exp $
+.\" $Id: terminfo.head,v 1.35 2018/07/28 22:29:09 tom Exp $
.TH terminfo 5 "" "" "File Formats"
.ds n 5
.ds d @TERMINFO@
.de NE
.fi
.ft R
-.in -4
+.ie n .in -4
+.el .in -2
..
.SH NAME
terminfo \- terminal capability data base
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: tput.1,v 1.58 2018/05/19 21:07:46 tom Exp $
+.\" $Id: tput.1,v 1.59 2018/07/28 21:30:27 tom Exp $
.TH @TPUT@ 1 ""
.ds d @TERMINFO@
.ds n 1
\fBlongname\fR
If the terminal database is present and an entry for the
user's terminal exists (see \fB\-T\fR\fItype\fR above), then the long name
-of the terminal will be put out. The long name is the last
+of the terminal will be put out.
+The long name is the last
name in the first line of the terminal's description in the
\fBterminfo\fR database [see \fBterm\fR(5)].
.SS Aliases
because of this difference with resetting terminal modes and special characters.
.PP
With the changes made for ncurses 6.1, the \fIreset\fP feature of the
-two programs is (mostly) the same. A few differences remain:
+two programs is (mostly) the same.
+A few differences remain:
.bP
The \fB@TSET@\fP program waits one second when resetting,
in case it happens to be a hardware terminal.
.bP
The two programs write the terminal initialization strings
-to different streams (i.e.,. the standard error for \fB@TSET@\fP and the
+to different streams (i.e., the standard error for \fB@TSET@\fP and the
standard output for \fB@TPUT@\fP).
.IP
\fBNote:\fP although these programs write to different streams,
\fBbold=`@TPUT@ smso` offbold=`@TPUT@ rmso`\fR
Set the shell variables \fBbold\fR, to begin stand-out mode
sequence, and \fBoffbold\fR, to end standout mode sequence,
-for the current terminal. This might be followed by a
+for the current terminal.
+This might be followed by a
prompt: \fBecho "${bold}Please type in your name: ${offbold}\\c"\fR
.TP 5
\fB@TPUT@ hc\fR
number of lines with errors.
If no errors are found, the exit code is \fB0\fR.
No indication of which line failed can be given so
-exit code \fB1\fR will never appear. Exit codes \fB2\fR, \fB3\fR, and
+exit code \fB1\fR will never appear.
+Exit codes \fB2\fR, \fB3\fR, and
\fB4\fR retain their usual interpretation.
If the \fB\-S\fR option is not used,
the exit code depends on the type of \fIcapname\fR:
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: tset.1,v 1.53 2018/05/19 21:07:46 tom Exp $
+.\" $Id: tset.1,v 1.54 2018/07/28 21:30:27 tom Exp $
.TH @TSET@ 1 ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.B TERMINAL TYPE MAPPING
for more information).
Then, if the terminal type begins with a question mark (\*(``?\*(''), the
-user is prompted for confirmation of the terminal type. An empty
+user is prompted for confirmation of the terminal type.
+An empty
response confirms the type, or, another type can be entered to specify
a new type.
Once the terminal type has been determined,
This is done using the \fB\-s\fR option.
.PP
When the \fB\-s\fR option is specified, the commands to enter the information
-into the shell's environment are written to the standard output. If
+into the shell's environment are written to the standard output.
+If
the \fBSHELL\fR environmental variable ends in \*(``csh\*('', the commands
are for \fBcsh\fR, otherwise, they are for \fBsh\fR.
Note, the \fBcsh\fR commands set and unset the shell variable
-\fBnoglob\fR, leaving it unset. The following line in the \fB.login\fR
+\fBnoglob\fR, leaving it unset.
+The following line in the \fB.login\fR
or \fB.profile\fR files will initialize the environment correctly:
.sp
eval \`@TSET@ \-s options ... \`
.PP
The argument to the \fB\-m\fR option consists of an optional port type, an
optional operator, an optional baud rate specification, an optional
-colon (\*(``:\*('') character and a terminal type. The port type is a
+colon (\*(``:\*('') character and a terminal type.
+The port type is a
string (delimited by either the operator or the colon character).
The operator may be any combination of
\*(``>\*('',
The terminal type is a string.
.PP
If the terminal type is not specified on the command line, the \fB\-m\fR
-mappings are applied to the terminal type. If the port type and baud
+mappings are applied to the terminal type.
+If the port type and baud
rate match the mapping, the terminal type specified in the mapping
-replaces the current type. If more than one mapping is specified, the
+replaces the current type.
+If more than one mapping is specified, the
first applicable mapping is used.
.PP
For example, consider the following mapping: \fBdialup>9600:vt100\fR.
The port type is dialup , the operator is >, the baud rate
-specification is 9600, and the terminal type is vt100. The result of
+specification is 9600, and the terminal type is vt100.
+The result of
this mapping is to specify that if the terminal type is \fBdialup\fR,
and the baud rate is greater than 9600 baud, a terminal type of
\fBvt100\fR will be used.
The \fB@TSET@\fR utility provides for backward-compatibility with BSD
environments (under most modern UNIXes, \fB/etc/inittab\fR and \fBgetty\fR(1)
can set \fBTERM\fR appropriately for each dial-up line; this obviates what was
-\fB@TSET@\fR's most important use). This implementation behaves like 4.4BSD
+\fB@TSET@\fR's most important use).
+This implementation behaves like 4.4BSD
\fBtset\fP, with a few exceptions specified here.
.PP
A few options are different
of limited utility at best.
The \fB\-a\fR, \fB\-d\fR, and \fB\-p\fR options are similarly
not documented or useful, but were retained as they appear to be in
-widespread use. It is strongly recommended that any usage of these
+widespread use.
+It is strongly recommended that any usage of these
three options be changed to use the \fB\-m\fR option instead.
The \fB\-a\fP, \fB\-d\fP, and \fB\-p\fR options
are therefore omitted from the usage summary above.
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: user_caps.5,v 1.7 2018/02/17 19:07:01 tom Exp $
+.\" $Id: user_caps.5,v 1.9 2018/07/28 22:05:23 tom Exp $
.TH user_caps 5
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.de NE
.fi
.ft R
-.in -4
+.ie n .in -4
+.el .in -2
..
.de bP
.ie n .IP \(bu 4
.PP
The ncurses utilities \fBtic\fP and \fBinfocmp\fP have a command-line
option \*(``\-x\*('' to control whether the nonstandard capabilities
-are stored or retrieved. A library function \fBuse_extended_names\fP
+are stored or retrieved.
+A library function \fBuse_extended_names\fP
is provided for the same purpose.
.PP
When compiling a terminal database, if \*(``\-x\*('' is set,
.TP 3
AX
\fIboolean\fP, asserts that the terminal interprets SGR 39 and SGR 49
-by resetting the foreground and background color, respectively, to the default.
+by resetting the foreground and background color, respectively, to the default.
.IP
This is a feature recognized by the \fBscreen\fP program as well.
.TP 3
RGB
\fIboolean\fP, \fInumber\fP \fBor\fP \fIstring\fP,
to assert that the
-\fBset_a_foreground\fP and
+\fBset_a_foreground\fP and
\fBset_a_background\fP capabilities correspond to \fIdirect colors\fP,
-using an RGB (red/green/blue) convention.
+using an RGB (red/green/blue) convention.
This capability allows the \fBcolor_content\fP function to
return appropriate values without requiring the application
to initialize colors using \fBinit_color\fP.
kHOM/special form of khome (Home)
kLFT/special form of kcub1 (cursor-left or cursor-back)
kNXT/special form of knext (Next, or Page-Down)
-kPRV/special form of kprev (Prev, or Page-Up)
+kPRV/special form of kprev (Prev, or Page-Up)
kRIT/special form of kcuf1 (cursor-right, or cursor-forward)
kUP/special form of kcuu1 (cursor-up)
.TE
.\"***************************************************************************
-.\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2015,2018 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 1996
.\"
-.\" $Id: wresize.3x,v 1.14 2015/09/26 19:57:24 tom Exp $
+.\" $Id: wresize.3x,v 1.15 2018/07/28 21:34:06 tom Exp $
.TH wresize 3X ""
.SH NAME
\fBwresize\fR \- resize a curses window
.sp
\fBint wresize(WINDOW *win, int lines, int columns);\fR
.SH DESCRIPTION
-This is an extension to the curses library.
-It reallocates storage for an \fBncurses\fR
+This is an extension to the curses library.
+It reallocates storage for an \fBncurses\fR
window to adjust its dimensions to the specified values.
If either dimension is larger than the current values, the
window's data is filled with blanks that have the current background rendition
-ncurses6 (6.1+20180721) unstable; urgency=low
+ncurses6 (6.1+20180728) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 21 Jul 2018 09:45:51 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 28 Jul 2018 09:24:09 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.1+20180721) unstable; urgency=low
+ncurses6 (6.1+20180728) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 21 Jul 2018 09:45:51 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 28 Jul 2018 09:24:09 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.1+20180721) unstable; urgency=low
+ncurses6 (6.1+20180728) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 21 Jul 2018 09:45:51 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 28 Jul 2018 09:24:09 -0400
ncurses6 (5.9-20120608) unstable; urgency=low
-; $Id: mingw-ncurses.nsi,v 1.280 2018/07/21 13:45:51 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.281 2018/07/28 13:24:09 tom Exp $\r
\r
; TODO add examples\r
; TODO bump ABI to 6\r
!define VERSION_MAJOR "6"\r
!define VERSION_MINOR "1"\r
!define VERSION_YYYY "2018"\r
-!define VERSION_MMDD "0721"\r
+!define VERSION_MMDD "0728"\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.1
-Release: 20180721
+Release: 20180728
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.1
-Release: 20180721
+Release: 20180728
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz