mirror of
https://github.com/Aigor44/ncursesw-morphos.git
synced 2025-01-12 14:54:25 +08:00
ncurses 6.0 - patch 20171216
+ repair template in test/package/ncurses-examples.spec (cf: 20171111). + improve tic's warning about the number of parameters tparm might use for u1-u9 by making a special case for u6. + improve curs_attr.3x discussion of color pairs.
This commit is contained in:
parent
86b16a498d
commit
0fbd5e1928
8
NEWS
8
NEWS
@ -25,7 +25,7 @@
|
||||
-- sale, use or other dealings in this Software without prior written --
|
||||
-- authorization. --
|
||||
-------------------------------------------------------------------------------
|
||||
-- $Id: NEWS,v 1.3021 2017/12/09 22:45:01 tom Exp $
|
||||
-- $Id: NEWS,v 1.3025 2017/12/17 00:14:16 tom Exp $
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
This is a log of changes that ncurses has gone through since Zeyd started
|
||||
@ -45,6 +45,12 @@ See the AUTHORS file for the corresponding full names.
|
||||
Changes through 1.9.9e did not credit all contributions;
|
||||
it is not possible to add this information.
|
||||
|
||||
20171216
|
||||
+ repair template in test/package/ncurses-examples.spec (cf: 20171111).
|
||||
+ improve tic's warning about the number of parameters tparm might use
|
||||
for u1-u9 by making a special case for u6.
|
||||
+ improve curs_attr.3x discussion of color pairs.
|
||||
|
||||
20171209
|
||||
+ modify misc/ncurses-config.in to make output with --includedir
|
||||
consistent with --cflags, i.e., when --disable-overwrite option was
|
||||
|
4
dist.mk
4
dist.mk
@ -25,7 +25,7 @@
|
||||
# use or other dealings in this Software without prior written #
|
||||
# authorization. #
|
||||
##############################################################################
|
||||
# $Id: dist.mk,v 1.1195 2017/12/09 12:38:04 tom Exp $
|
||||
# $Id: dist.mk,v 1.1196 2017/12/11 01:17:12 tom Exp $
|
||||
# Makefile for creating ncurses distributions.
|
||||
#
|
||||
# This only needs to be used directly as a makefile by developers, but
|
||||
@ -37,7 +37,7 @@ SHELL = /bin/sh
|
||||
# These define the major/minor/patch versions of ncurses.
|
||||
NCURSES_MAJOR = 6
|
||||
NCURSES_MINOR = 0
|
||||
NCURSES_PATCH = 20171209
|
||||
NCURSES_PATCH = 20171216
|
||||
|
||||
# We don't append the patch to the version, since this only applies to releases
|
||||
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
|
||||
|
@ -125,7 +125,7 @@
|
||||
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
|
||||
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
|
||||
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171125).
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
|
||||
|
||||
|
@ -190,7 +190,7 @@
|
||||
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
|
||||
<STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
|
||||
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171125).
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
|
||||
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
|
||||
|
@ -42,7 +42,7 @@
|
||||
<BODY>
|
||||
<H1 class="no-header">clear 1</H1>
|
||||
<PRE>
|
||||
<STRONG><A HREF="clear.1.html">clear(1)</A></STRONG> <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>
|
||||
<STRONG><A HREF="clear.1.html">clear(1)</A></STRONG> General Commands Manual <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>
|
||||
|
||||
|
||||
|
||||
@ -148,7 +148,7 @@
|
||||
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
|
||||
<STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
|
||||
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171125).
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
|
||||
|
||||
|
@ -27,7 +27,7 @@
|
||||
* sale, use or other dealings in this Software without prior written *
|
||||
* authorization. *
|
||||
****************************************************************************
|
||||
* @Id: curs_attr.3x,v 1.61 2017/11/18 23:47:37 tom Exp @
|
||||
* @Id: curs_attr.3x,v 1.62 2017/12/16 20:16:07 tom Exp @
|
||||
* ---------------------------------------------------------------------------
|
||||
* attr_get
|
||||
* .br
|
||||
@ -150,61 +150,84 @@
|
||||
|
||||
|
||||
</PRE><H3><a name="h3-Legacy-window-attributes">Legacy window attributes</a></H3><PRE>
|
||||
Most of the window attribute routines are extensions of older routines
|
||||
which assume that color pairs are OR'd into the attribute parameter.
|
||||
These older routines use the same name, omitting an underscore (<STRONG>_</STRONG>).
|
||||
The X/Open window attribute routines which <EM>set</EM> or <EM>get</EM>, turn <EM>on</EM> or <EM>off</EM>
|
||||
are extensions of older routines which assume that color pairs are OR'd
|
||||
into the attribute parameter. These newer routines use similar names,
|
||||
because X/Open simply added an underscore (<STRONG>_</STRONG>) for the newer names.
|
||||
|
||||
The <STRONG>attrset</STRONG> routine is a legacy feature predating SVr4 curses but kept
|
||||
The <STRONG>int</STRONG> datatype used in the legacy routines is treated as if it is the
|
||||
same size as <STRONG>chtype</STRONG> (used by <STRONG><A HREF="curs_addch.3x.html">addch(3x)</A></STRONG>). It holds the common video at-
|
||||
tributes (such as bold, reverse), as well as a few bits for color.
|
||||
Those bits correspond to the <STRONG>A_COLOR</STRONG> symbol. The <STRONG>COLOR_PAIR</STRONG> macro pro-
|
||||
vides a value which can be OR'd into the attribute parameter. For ex-
|
||||
ample, as long as that value fits into the <STRONG>A_COLOR</STRONG> mask, then these
|
||||
calls produce similar results:
|
||||
|
||||
attrset(A_BOLD | COLOR_PAIR(<EM>pair</EM>));
|
||||
attr_set(A_BOLD, <EM>pair</EM>, NULL);
|
||||
|
||||
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).
|
||||
|
||||
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
|
||||
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_NORMAL</STRONG> Normal display (no highlight)
|
||||
<STRONG>A_STANDOUT</STRONG> Best highlighting mode of the terminal.
|
||||
<STRONG>A_UNDERLINE</STRONG> Underlining
|
||||
@ -217,8 +240,9 @@
|
||||
<STRONG>A_ALTCHARSET</STRONG> Alternate character set
|
||||
<STRONG>A_ITALIC</STRONG> Italics (non-X/Open extension)
|
||||
<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>
|
||||
@ -230,74 +254,74 @@
|
||||
<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>
|
||||
@ -312,21 +336,22 @@
|
||||
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
|
||||
|
||||
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-
|
||||
@ -340,30 +365,30 @@
|
||||
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.
|
||||
@ -371,47 +396,47 @@
|
||||
|
||||
</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:
|
||||
@ -419,7 +444,7 @@
|
||||
<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:
|
||||
|
||||
@ -434,11 +459,11 @@
|
||||
<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-
|
||||
@ -446,17 +471,17 @@
|
||||
|
||||
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).
|
||||
|
||||
|
||||
@ -472,10 +497,10 @@
|
||||
<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.
|
||||
|
||||
|
@ -246,7 +246,7 @@
|
||||
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "form_" for detailed
|
||||
descriptions of the entry points.
|
||||
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171125).
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
|
||||
|
||||
|
@ -476,7 +476,7 @@
|
||||
|
||||
http://invisible-island.net/ncurses/tctest.html
|
||||
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171125).
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
|
||||
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
|
||||
|
@ -85,7 +85,7 @@
|
||||
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
|
||||
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
|
||||
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171125).
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
|
||||
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
|
||||
|
@ -221,7 +221,7 @@
|
||||
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "menu_" for detailed
|
||||
descriptions of the entry points.
|
||||
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171125).
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
|
||||
|
||||
|
@ -59,7 +59,7 @@
|
||||
method of updating character screens with reasonable optimization.
|
||||
This implementation is "new curses" (ncurses) and is the approved
|
||||
replacement for 4.4BSD classic curses, which has been discontinued.
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171125).
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
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
|
||||
|
@ -40,7 +40,7 @@
|
||||
<BODY>
|
||||
<H1 class="no-header">ncurses6-config 1</H1>
|
||||
<PRE>
|
||||
<STRONG><A HREF="ncurses6-config.1.html">ncurses6-config(1)</A></STRONG> <STRONG><A HREF="ncurses6-config.1.html">ncurses6-config(1)</A></STRONG>
|
||||
<STRONG><A HREF="ncurses6-config.1.html">ncurses6-config(1)</A></STRONG> General Commands Manual <STRONG><A HREF="ncurses6-config.1.html">ncurses6-config(1)</A></STRONG>
|
||||
|
||||
|
||||
|
||||
@ -112,7 +112,7 @@
|
||||
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
|
||||
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
|
||||
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171125).
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
|
||||
|
||||
|
@ -204,7 +204,7 @@
|
||||
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
|
||||
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
|
||||
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171125).
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
|
||||
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
|
||||
|
@ -40,7 +40,7 @@
|
||||
<BODY>
|
||||
<H1 class="no-header">scr_dump 5</H1>
|
||||
<PRE>
|
||||
<STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG> <STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG>
|
||||
<STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG> File Formats Manual <STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG>
|
||||
|
||||
|
||||
|
||||
|
@ -40,7 +40,7 @@
|
||||
<BODY>
|
||||
<H1 class="no-header">tabs 1</H1>
|
||||
<PRE>
|
||||
<STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG> <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>
|
||||
<STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG> General Commands Manual <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>
|
||||
|
||||
|
||||
|
||||
@ -164,7 +164,7 @@
|
||||
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
|
||||
<STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
|
||||
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171125).
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
|
||||
|
||||
|
@ -40,7 +40,7 @@
|
||||
<BODY>
|
||||
<H1 class="no-header">term 5</H1>
|
||||
<PRE>
|
||||
<STRONG><A HREF="term.5.html">term(5)</A></STRONG> <STRONG><A HREF="term.5.html">term(5)</A></STRONG>
|
||||
<STRONG><A HREF="term.5.html">term(5)</A></STRONG> File Formats Manual <STRONG><A HREF="term.5.html">term(5)</A></STRONG>
|
||||
|
||||
|
||||
|
||||
|
@ -40,7 +40,7 @@
|
||||
<BODY>
|
||||
<H1 class="no-header">term 7</H1>
|
||||
<PRE>
|
||||
<STRONG><A HREF="term.7.html">term(7)</A></STRONG> <STRONG><A HREF="term.7.html">term(7)</A></STRONG>
|
||||
<STRONG><A HREF="term.7.html">term(7)</A></STRONG> Miscellaneous Information Manual <STRONG><A HREF="term.7.html">term(7)</A></STRONG>
|
||||
|
||||
|
||||
|
||||
|
@ -74,7 +74,7 @@
|
||||
<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.0 (patch 20171125).
|
||||
<STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
|
||||
</PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE>
|
||||
|
@ -364,7 +364,7 @@
|
||||
<STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
|
||||
<STRONG><A HREF="term.5.html">term(5)</A></STRONG>. <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
|
||||
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171125).
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
|
||||
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
|
||||
|
@ -113,7 +113,7 @@
|
||||
<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.0 (patch 20171125).
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
|
||||
|
||||
|
@ -41,7 +41,7 @@
|
||||
<BODY>
|
||||
<H1 class="no-header">tput 1</H1>
|
||||
<PRE>
|
||||
<STRONG><A HREF="tput.1.html">tput(1)</A></STRONG> <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>
|
||||
<STRONG><A HREF="tput.1.html">tput(1)</A></STRONG> General Commands Manual <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>
|
||||
|
||||
|
||||
|
||||
@ -482,7 +482,7 @@
|
||||
</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.0 (patch 20171125).
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
|
||||
|
||||
|
@ -40,7 +40,7 @@
|
||||
<BODY>
|
||||
<H1 class="no-header">tset 1</H1>
|
||||
<PRE>
|
||||
<STRONG><A HREF="tset.1.html">tset(1)</A></STRONG> <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>
|
||||
<STRONG><A HREF="tset.1.html">tset(1)</A></STRONG> General Commands Manual <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>
|
||||
|
||||
|
||||
|
||||
@ -389,7 +389,7 @@
|
||||
<STRONG>csh(1)</STRONG>, <STRONG>sh(1)</STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG>tty(4)</STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>,
|
||||
<STRONG>ttys(5)</STRONG>, <STRONG>environ(7)</STRONG>
|
||||
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171125).
|
||||
This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20171216).
|
||||
|
||||
|
||||
|
||||
|
@ -40,7 +40,7 @@
|
||||
<BODY>
|
||||
<H1 class="no-header">user_caps 5</H1>
|
||||
<PRE>
|
||||
<STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG> <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>
|
||||
<STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG> File Formats Manual <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>
|
||||
|
||||
|
||||
|
||||
|
@ -27,12 +27,25 @@
|
||||
.\" authorization. *
|
||||
.\"***************************************************************************
|
||||
.\"
|
||||
.\" $Id: curs_attr.3x,v 1.61 2017/11/18 23:47:37 tom Exp $
|
||||
.\" $Id: curs_attr.3x,v 1.62 2017/12/16 20:16:07 tom Exp $
|
||||
.TH curs_attr 3X ""
|
||||
.ie \n(.g .ds `` \(lq
|
||||
.el .ds `` ``
|
||||
.ie \n(.g .ds '' \(rq
|
||||
.el .ds '' ''
|
||||
.de NS
|
||||
.ie n .sp
|
||||
.el .sp .5
|
||||
.ie n .in +4
|
||||
.el .in +2
|
||||
.nf
|
||||
.ft C \" Courier
|
||||
..
|
||||
.de NE
|
||||
.fi
|
||||
.ft R
|
||||
.in -4
|
||||
..
|
||||
.de bP
|
||||
.ie n .IP \(bu 4
|
||||
.el .IP \(bu 2
|
||||
@ -172,10 +185,42 @@ again values OR'd together in \fIattr\fP,
|
||||
without affecting other attributes.
|
||||
.\" ---------------------------------------------------------------------------
|
||||
.SS Legacy window attributes
|
||||
Most of the window attribute routines are extensions of older routines
|
||||
The X/Open window attribute routines which \fIset\fP or \fIget\fP,
|
||||
turn \fIon\fP or \fIoff\fP
|
||||
are extensions of older routines
|
||||
which assume that color pairs are OR'd into the attribute parameter.
|
||||
These older routines use the same name, omitting an underscore (\fB_\fP).
|
||||
|
||||
These newer routines use similar names, because
|
||||
X/Open simply added an underscore (\fB_\fP) for the newer names.
|
||||
.PP
|
||||
The \fBint\fP datatype used in the legacy routines is treated as if
|
||||
it is the same size as \fBchtype\fP (used by \fBaddch\fP(3X)).
|
||||
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 attribute parameter.
|
||||
For example,
|
||||
as long as that value fits into the \fBA_COLOR\fP mask,
|
||||
then these calls produce similar results:
|
||||
.NS
|
||||
attrset(A_BOLD | COLOR_PAIR(\fIpair\fP));
|
||||
attr_set(A_BOLD, \fIpair\fP, NULL);
|
||||
.NE
|
||||
.PP
|
||||
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).
|
||||
.PP
|
||||
The \fBPAIR_NUMBER\fP macro extracts a pair number from an \fBint\fP
|
||||
(or \fBchtype\fP).
|
||||
For example, the \fIinput\fP and \fIoutput\fP values in these statements
|
||||
would be the same:
|
||||
.NS
|
||||
int value = A_BOLD | COLOR_PAIR(\fIinput\fP);
|
||||
int \fIoutput\fP = PAIR_NUMBER(value);
|
||||
.NE
|
||||
.PP
|
||||
The \fBattrset\fP routine is a legacy feature predating SVr4 curses
|
||||
but kept in X/Open Curses for the same reason that SVr4 curses kept it:
|
||||
compatibility.
|
||||
@ -245,6 +290,7 @@ l l .
|
||||
\fBA_ALTCHARSET\fR Alternate character set
|
||||
\fBA_ITALIC\fR Italics (non-X/Open extension)
|
||||
\fBA_CHARTEXT\fR Bit-mask to extract a character
|
||||
\fBA_COLOR\fR Bit-mask to extract a color (legacy routines)
|
||||
.TE
|
||||
.RE
|
||||
.PP
|
||||
|
@ -1,8 +1,8 @@
|
||||
ncurses6 (6.0+20171209) unstable; urgency=low
|
||||
ncurses6 (6.0+20171216) unstable; urgency=low
|
||||
|
||||
* latest weekly patch
|
||||
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 09 Dec 2017 07:37:54 -0500
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Sun, 10 Dec 2017 20:17:12 -0500
|
||||
|
||||
ncurses6 (5.9-20131005) unstable; urgency=low
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
ncurses6 (6.0+20171209) unstable; urgency=low
|
||||
ncurses6 (6.0+20171216) unstable; urgency=low
|
||||
|
||||
* latest weekly patch
|
||||
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 09 Dec 2017 07:37:54 -0500
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Sun, 10 Dec 2017 20:17:12 -0500
|
||||
|
||||
ncurses6 (5.9-20131005) unstable; urgency=low
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
ncurses6 (6.0+20171209) unstable; urgency=low
|
||||
ncurses6 (6.0+20171216) unstable; urgency=low
|
||||
|
||||
* latest weekly patch
|
||||
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 09 Dec 2017 07:37:54 -0500
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Sun, 10 Dec 2017 20:17:12 -0500
|
||||
|
||||
ncurses6 (5.9-20120608) unstable; urgency=low
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; $Id: mingw-ncurses.nsi,v 1.243 2017/12/09 12:38:04 tom Exp $
|
||||
; $Id: mingw-ncurses.nsi,v 1.244 2017/12/11 01:17:12 tom Exp $
|
||||
|
||||
; TODO add examples
|
||||
; TODO bump ABI to 6
|
||||
@ -10,7 +10,7 @@
|
||||
!define VERSION_MAJOR "6"
|
||||
!define VERSION_MINOR "0"
|
||||
!define VERSION_YYYY "2017"
|
||||
!define VERSION_MMDD "1209"
|
||||
!define VERSION_MMDD "1216"
|
||||
!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
|
||||
|
||||
!define MY_ABI "5"
|
||||
|
@ -3,7 +3,7 @@
|
||||
Summary: shared libraries for terminal handling
|
||||
Name: mingw32-ncurses6
|
||||
Version: 6.0
|
||||
Release: 20171209
|
||||
Release: 20171216
|
||||
License: X11
|
||||
Group: Development/Libraries
|
||||
Source: ncurses-%{version}-%{release}.tgz
|
||||
|
@ -1,7 +1,7 @@
|
||||
Summary: shared libraries for terminal handling
|
||||
Name: ncurses6
|
||||
Version: 6.0
|
||||
Release: 20171209
|
||||
Release: 20171216
|
||||
License: X11
|
||||
Group: Development/Libraries
|
||||
Source: ncurses-%{version}-%{release}.tgz
|
||||
|
21
progs/tic.c
21
progs/tic.c
@ -48,7 +48,7 @@
|
||||
#include <parametrized.h>
|
||||
#include <transform.h>
|
||||
|
||||
MODULE_ID("$Id: tic.c,v 1.247 2017/10/09 15:16:15 tom Exp $")
|
||||
MODULE_ID("$Id: tic.c,v 1.248 2017/12/16 23:05:21 tom Exp $")
|
||||
|
||||
#define STDIN_NAME "<stdin>"
|
||||
|
||||
@ -1755,14 +1755,22 @@ expected_params(const char *name)
|
||||
return result;
|
||||
}
|
||||
|
||||
/*
|
||||
* ncurses assumes that u6 could be used for getting the cursor-position, but
|
||||
* that is not implemented. Make a special case for that, to quiet needless
|
||||
* warnings.
|
||||
*
|
||||
* There are other string-capability extensions (see terminfo.src) which could
|
||||
* have parameters such as "Ss", "%u", but are not used by ncurses.
|
||||
*/
|
||||
static int
|
||||
is_user_capability(const char *name)
|
||||
{
|
||||
int result = 0;
|
||||
int result = -1;
|
||||
if (name[0] == 'u' &&
|
||||
(name[1] >= '0' && name[1] <= '9') &&
|
||||
name[2] == '\0')
|
||||
result = 1;
|
||||
result = (name[1] == '6') ? 2 : 0;
|
||||
return result;
|
||||
}
|
||||
|
||||
@ -1844,7 +1852,10 @@ check_params(TERMTYPE2 *tp, const char *name, char *value, int extended)
|
||||
analyzed = popcount;
|
||||
}
|
||||
if (actual != analyzed && expected != analyzed) {
|
||||
if (is_user_capability(name)) {
|
||||
int user_cap = is_user_capability(name);
|
||||
if ((user_cap == analyzed) && using_extensions) {
|
||||
; /* ignore */
|
||||
} else if (user_cap >= 0) {
|
||||
_nc_warning("tparm will use %d parameters for %s",
|
||||
analyzed, name);
|
||||
} else {
|
||||
@ -2705,7 +2716,7 @@ check_termtype(TERMTYPE2 *tp, bool literal)
|
||||
* check for consistent number of parameters.
|
||||
*/
|
||||
if (j >= SIZEOF(parametrized) ||
|
||||
is_user_capability(name) ||
|
||||
is_user_capability(name) > 0 ||
|
||||
parametrized[j] > 0) {
|
||||
check_params(tp, name, a, (j >= STRCOUNT));
|
||||
}
|
||||
|
@ -1,8 +1,8 @@
|
||||
Summary: ncurses-examples - example/test programs from ncurses
|
||||
%define AppProgram ncurses-examples
|
||||
%define AppVersion 6.0
|
||||
%define AppRelease 20171111
|
||||
# $Id: ncurses-examples.spec,v 1.8 2017/12/09 20:41:16 tom Exp $
|
||||
%define AppVersion MAJOR.MINOR
|
||||
%define AppRelease YYYYMMDD
|
||||
# $Id: ncurses-examples.spec,v 1.9 2017/12/17 00:12:42 tom Exp $
|
||||
Name: %{AppProgram}
|
||||
Version: %{AppVersion}
|
||||
Release: %{AppRelease}
|
||||
@ -13,8 +13,8 @@ Source0: %{AppProgram}-%{AppRelease}.tgz
|
||||
Packager: Thomas Dickey <dickey@invisible-island.net>
|
||||
|
||||
%description
|
||||
These are the example/test programs from the ncurses 6.0 distribution,
|
||||
for patch-date 20171111.
|
||||
These are the example/test programs from the ncurses MAJOR.MINOR distribution,
|
||||
for patch-date YYYYMMDD.
|
||||
|
||||
This package installs in "bin/ncurses-examples" to avoid conflict with other
|
||||
packages.
|
||||
|
@ -26,7 +26,7 @@
|
||||
* authorization. *
|
||||
****************************************************************************/
|
||||
/*
|
||||
* $Id: picsmap.c,v 1.112 2017/11/26 00:10:57 tom Exp $
|
||||
* $Id: picsmap.c,v 1.114 2017/12/16 23:49:40 tom Exp $
|
||||
*
|
||||
* Author: Thomas E. Dickey
|
||||
*
|
||||
@ -1160,6 +1160,7 @@ parse_xpm(char **data)
|
||||
break;
|
||||
}
|
||||
num_colors++;
|
||||
free(list[reading_last]);
|
||||
list[reading_last] = strdup(arg1);
|
||||
if ((by_name = lookup_rgb(arg3)) != 0) {
|
||||
found = gather_c_values(by_name->value);
|
||||
@ -1473,6 +1474,7 @@ show_picture(PICS_HEAD * pics)
|
||||
int my_pair, my_color;
|
||||
|
||||
debugmsg("called show_picture");
|
||||
logmsg("...using %dx%d screen", LINES, COLS);
|
||||
#if USE_EXTENDED_COLORS
|
||||
reset_color_pairs();
|
||||
#elif HAVE_CURSCR
|
||||
|
Loading…
Reference in New Issue
Block a user