-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: NEWS,v 1.3347 2019/07/13 23:10:57 tom Exp $
+-- $Id: NEWS,v 1.3351 2019/07/21 00:33:00 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started
Changes through 1.9.9e did not credit all contributions;
it is not possible to add this information.
+20190720
+ + fix a few warnings for gcc 4.x
+ + add some portability/historical details to the tic, toe and infocmp
+ manual pages.
+ + correct fix for broken link from terminfo(5) to tabs(1) manpage
+ (report by Sven Joachim).
+
20190713
+ change reset's behavior for margins to simply clear soft-margins if
possible, rather than clearing and then setting them according to the
-5:0:10 6.1 20190713
+5:0:10 6.1 20190720
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: dist.mk,v 1.1294 2019/07/13 20:42:44 tom Exp $
+# $Id: dist.mk,v 1.1296 2019/07/20 10:26:30 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 = 20190713
+NCURSES_PATCH = 20190720
# 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 20190713).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
</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 20190713).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190713).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
<!--
****************************************************************************
- * Copyright (c) 2002-2017,2018 Free Software Foundation, Inc. *
+ * Copyright (c) 2002-2018,2019 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.16 2018/09/01 20:58:10 tom Exp @
+ * @Id: curs_get_wstr.3x,v 1.18 2019/07/20 19:14:56 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<STRONG>wchar_t</STRONG> is a unsigned type. All of the vendors implement this using
<STRONG>wint_t</STRONG>, following the standard.
- X/Open Curses issue 7 is unclear regarding whether the terminating <EM>null</EM>
- <STRONG>wchar_t</STRONG> value is counted in the length parameter <EM>n</EM>. X/Open Curses is-
- sue 7 revised the corresponding description of <STRONG>wgetnstr</STRONG> to address this
- issue. The unrevised description of <STRONG>wget_nwstr</STRONG> can be interpreted ei-
- ther way. This implementation counts the terminator in the length.
+ X/Open Curses, Issue 7 (2009) is unclear regarding whether the termi-
+ nating <EM>null</EM> <STRONG>wchar_t</STRONG> value is counted in the length parameter <EM>n</EM>. X/Open
+ Curses, Issue 7 revised the corresponding description of <STRONG>wgetnstr</STRONG> to
+ address this issue. The unrevised description of <STRONG>wget_nwstr</STRONG> can be in-
+ terpreted either way. This implementation counts the terminator in the
+ length.
- X/Open Curses does not specify what happens if the length <EM>n</EM> is nega-
+ X/Open Curses does not specify what happens if the length <EM>n</EM> is nega-
tive.
- <STRONG>o</STRONG> For analogy with <STRONG>wgetnstr</STRONG>, ncurses 6.2 uses a limit (based on
+ <STRONG>o</STRONG> For analogy with <STRONG>wgetnstr</STRONG>, ncurses 6.2 uses a limit (based on
<STRONG>LINE_MAX</STRONG>).
- <STRONG>o</STRONG> Some other implementations (such as Solaris xcurses) do the same,
+ <STRONG>o</STRONG> Some other implementations (such as Solaris xcurses) do the same,
while others (PDCurses) do not allow this.
- <STRONG>o</STRONG> NetBSD 7 curses imitates ncurses 6.1 in this regard, treating a <STRONG>-1</STRONG>
+ <STRONG>o</STRONG> NetBSD 7 curses imitates ncurses 6.1 in this regard, treating a <STRONG>-1</STRONG>
as an indefinite number of characters.
<!--
****************************************************************************
- * Copyright (c) 1998-2017,2018 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2018,2019 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.26 2018/09/01 20:34:52 tom Exp @
+ * @Id: curs_getstr.3x,v 1.28 2019/07/20 19:14:56 tom Exp @
* X/Open says also until EOf
* X/Open says then an EOS is added to the result
* X/Open doesn't mention n<0
The functions <STRONG>getnstr</STRONG>, <STRONG>mvgetnstr</STRONG>, and <STRONG>mvwgetnstr</STRONG> were present but not
documented in SVr4.
- X/Open Curses issue 5 (2007) stated that these functions "read at most
+ X/Open Curses, Issue 5 (2007) stated that these functions "read at most
<EM>n</EM> bytes" but did not state whether the terminating NUL is counted in
- that limit. X/Open Curses issue 7 (2009) changed that to say they
+ that limit. X/Open Curses, Issue 7 (2009) changed that to say they
"read at most <EM>n</EM>-1 bytes" to allow for the terminating NUL. As of 2018,
some implementations do, some do not count it:
<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 20190713).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: infocmp.1m,v 1.74 2019/05/18 22:00:55 tom Exp @
+ * @Id: infocmp.1m,v 1.75 2019/07/20 18:42:11 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
/usr/share/terminfo Compiled terminal description database.
+</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+ Although System V Release 2 provided a terminfo library, it had no doc-
+ umented tool for decompiling the terminal descriptions. Tony Hansen
+ (AT&T) wrote the first <STRONG>infocmp</STRONG> in early 1984, for System V Release 3.
+
+ Eric Raymond used the AT&T documentation in 1995 to provide an equiva-
+ lent <STRONG>infocmp</STRONG> for ncurses. In addition, he added a few new features
+ such as:
+
+ <STRONG>o</STRONG> the <STRONG>-e</STRONG> option, to support <EM>fallback</EM> (compiled-in) terminal descrip-
+ tions
+
+ <STRONG>o</STRONG> the <STRONG>-i</STRONG> option, to help with analysis
+
+ Later, Thomas Dickey added the <STRONG>-x</STRONG> (user-defined capabilities) option,
+ and the <STRONG>-E</STRONG> option to support fallback entries with user-defined capa-
+ bilities.
+
+ For a complete list, see the <EM>EXTENSIONS</EM> section.
+
+ In 2010, Roy Marples provided an <STRONG>infocmp</STRONG> program for NetBSD. It is
+ less capable than the SVr4 or ncurses versions (e.g., it lacks the
+ sorting options documented in X/Open), but does include the <STRONG>-x</STRONG> option
+ adapted from ncurses.
+
+
+</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
+ X/Open Curses, Issue 7 (2009) provides a description of <STRONG>infocmp</STRONG>. It
+ does not mention the options used for converting to termcap format.
+
+
</PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
- The <STRONG>-0</STRONG>, <STRONG>-1</STRONG>, <STRONG>-E</STRONG>, <STRONG>-F</STRONG>, <STRONG>-G</STRONG>, <STRONG>-Q</STRONG>, <STRONG>-R</STRONG>, <STRONG>-T</STRONG>, <STRONG>-V</STRONG>, <STRONG>-a</STRONG>, <STRONG>-e</STRONG>, <STRONG>-f</STRONG>, <STRONG>-g</STRONG>, <STRONG>-i</STRONG>, <STRONG>-l</STRONG>, <STRONG>-p</STRONG>, <STRONG>-q</STRONG>
+ The <STRONG>-0</STRONG>, <STRONG>-1</STRONG>, <STRONG>-E</STRONG>, <STRONG>-F</STRONG>, <STRONG>-G</STRONG>, <STRONG>-Q</STRONG>, <STRONG>-R</STRONG>, <STRONG>-T</STRONG>, <STRONG>-V</STRONG>, <STRONG>-a</STRONG>, <STRONG>-e</STRONG>, <STRONG>-f</STRONG>, <STRONG>-g</STRONG>, <STRONG>-i</STRONG>, <STRONG>-l</STRONG>, <STRONG>-p</STRONG>, <STRONG>-q</STRONG>
and <STRONG>-t</STRONG> options are not supported in SVr4 curses.
SVr4 infocmp does not distinguish between absent and cancelled capabil-
ities. Also, it shows missing integer capabilities as <STRONG>-1</STRONG> (the internal
- value used to represent missing integers). This implementation shows
+ value used to represent missing integers). This implementation shows
those as "NULL", for consistency with missing strings.
- The <STRONG>-r</STRONG> option's notion of "termcap" capabilities is System V Release
- 4's. Actual BSD curses versions will have a more restricted set. To
+ The <STRONG>-r</STRONG> option's notion of "termcap" capabilities is System V Release
+ 4's. Actual BSD curses versions will have a more restricted set. To
see only the 4.4BSD set, use <STRONG>-r</STRONG> <STRONG>-RBSD</STRONG>.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG>ter-</STRONG>
+ <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(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>. <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
https://invisible-island.net/ncurses/tctest.html
- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190713).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
</ul>
</li>
<li><a href="#h2-FILES">FILES</a></li>
+<li><a href="#h2-HISTORY">HISTORY</a></li>
+<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
<li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li>
<li><a href="#h2-BUGS">BUGS</a></li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
</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 20190713).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "menu_" for detailed
descriptions of the entry points.
- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190713).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
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 20190713).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
The <STRONG>ncurses</STRONG> library emulates the curses library of System V Release 4
UNIX, and XPG4 (X/Open Portability Guide) curses (also known as XSI
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190713).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
</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 20190713).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190713).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
****************************************************************************
* @Id: terminfo.head,v 1.36 2019/07/13 23:17:33 tom Exp @
* Head of terminfo man page ends here
- * @Id: terminfo.tail,v 1.95 2019/07/13 23:29:04 tom Exp @
- * Beginning of terminfo.tail file
- * This file is part of ncurses.
- * See "terminfo.head" for copyright.
+ ****************************************************************************
+ * Copyright (c) 1998-2018,2019 Free Software Foundation, Inc. *
+ * *
+ * Permission is hereby granted, free of charge, to any person obtaining a *
+ * copy of this software and associated documentation files (the *
+ * "Software"), to deal in the Software without restriction, including *
+ * without limitation the rights to use, copy, modify, merge, publish, *
+ * distribute, distribute with modifications, sublicense, and/or sell *
+ * copies of the Software, and to permit persons to whom the Software is *
+ * furnished to do so, subject to the following conditions: *
+ * *
+ * The above copyright notice and this permission notice shall be included *
+ * in all copies or substantial portions of the Software. *
+ * *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+ * *
+ * Except as contained in this notice, the name(s) of the above copyright *
+ * holders shall not be used in advertising or otherwise to promote the *
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************
+ * @Id: terminfo.tail,v 1.97 2019/07/20 10:20:57 tom Exp @
*.in -2
*.in +2
*.in -2
<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 20190713).
+ <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
</PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE>
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="tabs.1m.html">tabs(1m)</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="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>, <STRONG>curs_vari-</STRONG>
+ <STRONG><A HREF="tabs.1.html">tabs(1)</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="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>, <STRONG>curs_vari-</STRONG>
<STRONG><A HREF="curs_variables.3x.html">ables(3x)</A></STRONG>, <STRONG>printf(3)</STRONG>, <STRONG><A HREF="term.5.html">term(5)</A></STRONG>. <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>. <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: tic.1m,v 1.69 2019/05/18 22:48:40 tom Exp @
+ * @Id: tic.1m,v 1.74 2019/07/20 17:57:09 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
will be printed.
-</PRE><H2><a name="h2-COMPATIBILITY">COMPATIBILITY</a></H2><PRE>
- There is some evidence that historic <STRONG>tic</STRONG> implementations treated
- description fields with no whitespace in them as additional aliases or
+</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+ System V Release 2 provided a <STRONG>tic</STRONG> utility. It accepted a single
+ option: <STRONG>-v</STRONG> (optionally followed by a number). According to Ross
+ Ridge's comment in <EM>mytinfo</EM>, this version of <STRONG>tic</STRONG> was unable to represent
+ cancelled capabilities.
+
+ System V Release 3 provided a different <STRONG>tic</STRONG> utility, written by Pavel
+ Curtis, (originally named "compile" in <EM>pcurses</EM>). This added an option
+ <STRONG>-c</STRONG> to check the file for errors, with the caveat that errors in "use="
+ links would not be reported. System V Release 3 documented a few warn-
+ ing messages which did not appear in <EM>pcurses</EM>. While the program itself
+ was changed little as development continued with System V Release 4,
+ the table of capabilities grew from 180 (<EM>pcurses</EM>) to 464 (Solaris).
+
+ In early development of ncurses (1993), Zeyd Ben-Halim used the table
+ from <EM>mytinfo</EM> to extend the <EM>pcurses</EM> table to 469 capabilities (456
+ matched SVr4, 8 were only in SVr4, 13 were not in SVr4). Of those 13,
+ 11 were ultimately discarded (perhaps to match the draft of X/Open
+ Curses). The exceptions were <STRONG>memory_lock_above</STRONG> and <STRONG>memory_unlock</STRONG> (see
+ <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>).
+
+ Eric Raymond incorporated parts of <EM>mytinfo</EM> into ncurses to implement
+ the termcap-to-terminfo source conversion, and extended that to begin
+ development of the corresponding terminfo-to-termcap source conversion,
+ Thomas Dickey completed that development over the course of several
+ years.
+
+ In 1999, Thomas Dickey added the <STRONG>-x</STRONG> option to support user-defined
+ capabilities.
+
+ In 2010, Roy Marples provided a <STRONG>tic</STRONG> program and terminfo library for
+ NetBSD. This implementation adapts several features from ncurses,
+ including <STRONG>tic</STRONG>'s <STRONG>-x</STRONG> option.
+
+ The <STRONG>-c</STRONG> option tells <STRONG>tic</STRONG> to check for problems in the terminfo source
+ file. Continued development provides additional checks:
+
+ <STRONG>o</STRONG> <EM>pcurses</EM> had 8 warnings
+
+ <STRONG>o</STRONG> ncurses in 1996 had 16 warnings
+
+ <STRONG>o</STRONG> Solaris (SVr4) curses has 28 warnings
+
+ <STRONG>o</STRONG> NetBSD tic in 2019 has 19 warnings.
+
+ <STRONG>o</STRONG> ncurses in 2019 has 96 warnings
+
+ The checking done in ncurses' <STRONG>tic</STRONG> helps with the conversion to termcap,
+ as well as pointing out errors and inconsistencies. It is also used to
+ ensure consistency with the user-defined capabilities. There are 527
+ distinct capabilities in ncurses' terminal database; 128 of those are
+ user-defined.
+
+
+</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
+ X/Open Curses, Issue 7 (2009) provides a brief description of <STRONG>tic</STRONG>. It
+ lists one option: <STRONG>-c</STRONG>. The omission of <STRONG>-v</STRONG> is unexpected. The change
+ history states that the description is derived from True64 UNIX.
+ According to its manual pages, that system also supported the <STRONG>-v</STRONG>
+ option.
+
+ Shortly after Issue 7 was released, Tru64 was discontinued. As of
+ 2019, the surviving implementations of <STRONG>tic</STRONG> are SVr4 (AIX, HP-UX and
+ Solaris), ncurses and NetBSD curses.
+
+ The X/Open rationale states that some implementations of <STRONG>tic</STRONG> read ter-
+ minal descriptions from the standard input if the <EM>file</EM> parameter is
+ omitted. None of these implementations do that. Further, it comments
+ that some may choose to read from "./terminfo.src" but that is obsoles-
+ cent behavior from SVr2, and is not (for example) a documented feature
+ of SVr3.
+
+
+</PRE><H3><a name="h3-COMPATIBILITY">COMPATIBILITY</a></H3><PRE>
+ There is some evidence that historic <STRONG>tic</STRONG> implementations treated
+ description fields with no whitespace in them as additional aliases or
short names. This <STRONG>tic</STRONG> does not do that, but it does warn when descrip-
- tion fields may be treated that way and check them for dangerous char-
+ tion fields may be treated that way and check them for dangerous char-
acters.
-</PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
- Unlike the SVr4 <STRONG>tic</STRONG> command, this implementation can actually compile
- termcap sources. In fact, entries in terminfo and termcap syntax can
- be mixed in a single source file. See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for the list of
+</PRE><H3><a name="h3-EXTENSIONS">EXTENSIONS</a></H3><PRE>
+ Unlike the SVr4 <STRONG>tic</STRONG> command, this implementation can actually compile
+ termcap sources. In fact, entries in terminfo and termcap syntax can
+ be mixed in a single source file. See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for the list of
termcap names taken to be equivalent to terminfo names.
- The SVr4 manual pages are not clear on the resolution rules for <STRONG>use</STRONG>
- capabilities. This implementation of <STRONG>tic</STRONG> will find <STRONG>use</STRONG> targets any-
- where in the source file, or anywhere in the file tree rooted at <STRONG>TER-</STRONG>
- <STRONG>MINFO</STRONG> (if <STRONG>TERMINFO</STRONG> is defined), or in the user's <EM>$HOME/.terminfo</EM> data-
+ The SVr4 manual pages are not clear on the resolution rules for <STRONG>use</STRONG>
+ capabilities. This implementation of <STRONG>tic</STRONG> will find <STRONG>use</STRONG> targets any-
+ where in the source file, or anywhere in the file tree rooted at <STRONG>TER-</STRONG>
+ <STRONG>MINFO</STRONG> (if <STRONG>TERMINFO</STRONG> is defined), or in the user's <EM>$HOME/.terminfo</EM> data-
base (if it exists), or (finally) anywhere in the system's file tree of
compiled entries.
- The error messages from this <STRONG>tic</STRONG> have the same format as GNU C error
+ The error messages from this <STRONG>tic</STRONG> have the same format as GNU C error
messages, and can be parsed by GNU Emacs's compile facility.
- The <STRONG>-0</STRONG>, <STRONG>-1</STRONG>, <STRONG>-C</STRONG>, <STRONG>-G</STRONG>, <STRONG>-I</STRONG>, <STRONG>-N</STRONG>, <STRONG>-R</STRONG>, <STRONG>-T</STRONG>, <STRONG>-V</STRONG>, <STRONG>-a</STRONG>, <STRONG>-e</STRONG>, <STRONG>-f</STRONG>, <STRONG>-g</STRONG>, <STRONG>-o</STRONG>, <STRONG>-r</STRONG>, <STRONG>-s</STRONG>, <STRONG>-t</STRONG>
+ The <STRONG>-0</STRONG>, <STRONG>-1</STRONG>, <STRONG>-C</STRONG>, <STRONG>-G</STRONG>, <STRONG>-I</STRONG>, <STRONG>-N</STRONG>, <STRONG>-R</STRONG>, <STRONG>-T</STRONG>, <STRONG>-V</STRONG>, <STRONG>-a</STRONG>, <STRONG>-e</STRONG>, <STRONG>-f</STRONG>, <STRONG>-g</STRONG>, <STRONG>-o</STRONG>, <STRONG>-r</STRONG>, <STRONG>-s</STRONG>, <STRONG>-t</STRONG>
and <STRONG>-x</STRONG> options are not supported under SVr4. The SVr4 <STRONG>-c</STRONG> mode does not
- report bad use links.
+ report bad "use=" links.
- System V does not compile entries to or read entries from your
+ System V does not compile entries to or read entries from your
<EM>$HOME/.terminfo</EM> database unless TERMINFO is explicitly set to it.
<STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
<STRONG><A HREF="term.5.html">term(5)</A></STRONG>. <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190713).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
<li><a href="#h3-PROCESSING">PROCESSING</a></li>
</ul>
</li>
-<li><a href="#h2-COMPATIBILITY">COMPATIBILITY</a></li>
-<li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li>
+<li><a href="#h2-HISTORY">HISTORY</a></li>
+<li><a href="#h2-PORTABILITY">PORTABILITY</a>
+<ul>
+<li><a href="#h3-COMPATIBILITY">COMPATIBILITY</a></li>
+<li><a href="#h3-EXTENSIONS">EXTENSIONS</a></li>
+</ul>
+</li>
<li><a href="#h2-FILES">FILES</a></li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
<li><a href="#h2-AUTHOR">AUTHOR</a></li>
<!--
****************************************************************************
- * Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2017,2019 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: toe.1m,v 1.29 2017/02/18 17:10:26 tom Exp @
+ * @Id: toe.1m,v 1.31 2019/07/20 19:06:44 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
and exits.
+</PRE><H2><a name="h2-EXAMPLES">EXAMPLES</a></H2><PRE>
+ Without sorting, the <STRONG>-a</STRONG> option reports all of the names found in all of
+ the terminal databases found by the <STRONG>TERMINFO</STRONG> and <STRONG>TERMINFO_DIRS</STRONG> environ-
+ ment variables:
+
+ MtxOrb162 16x2 Matrix Orbital LCD display
+ MtxOrb204 20x4 Matrix Orbital LCD display
+ MtxOrb Generic Matrix Orbital LCD display
+ qvt101+ qume qvt 101 PLUS product
+ qvt119+-25 QVT 119 PLUS with 25 data lines
+ qansi-g QNX ANSI
+ qvt103 qume qvt 103
+ qnxw QNX4 windows
+ qansi-w QNX ansi for windows
+ qnxm QNX4 with mouse events
+ qvt203-25-w QVT 203 PLUS with 25 by 132 columns
+ qansi-t QNX ansi without console writes
+ . . .
+
+ Use the <STRONG>-a</STRONG> and <STRONG>-s</STRONG> options together to show where each terminal descrip-
+ tion was found:
+
+ --> /usr/local/ncurses/share/terminfo
+ ----> /usr/share/terminfo
+ *-+-: 9term Plan9 terminal emulator for X
+ *---: Eterm Eterm with xterm-style color support (X Window System)
+ *-*-: Eterm-256color Eterm with xterm 256-colors
+ *-*-: Eterm-88color Eterm with 88 colors
+ *-+-: MtxOrb Generic Matrix Orbital LCD display
+ *-+-: MtxOrb162 16x2 Matrix Orbital LCD display
+ *-+-: MtxOrb204 20x4 Matrix Orbital LCD display
+ *-*-: NCR260VT300WPP NCR 2900_260 vt300 wide mode pc+ kybd
+ *-+-: aaa ann arbor ambassador/30 lines
+ *-+-: aaa+dec ann arbor ambassador in dec vt100 mode
+ *-+-: aaa+rv ann arbor ambassador in reverse video
+ . . .
+
+
</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
<STRONG>/usr/share/terminfo/?/*</STRONG>
Compiled terminal description database.
+</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+ This utility is not provided by other implementations. There is no
+ relevant X/Open or POSIX standard for <STRONG>toe</STRONG>.
+
+ The program name refers to a developer's pun:
+
+ <STRONG>o</STRONG> <STRONG>tic</STRONG>,
+
+ <STRONG>o</STRONG> <STRONG>tac</STRONG> (now <STRONG>tack</STRONG>),
+
+ <STRONG>o</STRONG> <STRONG>toe</STRONG>.
+
+ It replaced a <STRONG>-T</STRONG> option which was briefly supported by the ncurses
+ <STRONG>infocmp</STRONG> utility in 1995.
+
+ The <STRONG>-a</STRONG> and <STRONG>-s</STRONG> options were added to <STRONG>toe</STRONG> several years later (2006 and
+ 2011, respectively).
+
+
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</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 20190713).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
<li><a href="#h2-NAME">NAME</a></li>
<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
+<li><a href="#h2-EXAMPLES">EXAMPLES</a></li>
<li><a href="#h2-FILES">FILES</a></li>
+<li><a href="#h2-HISTORY">HISTORY</a></li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
</ul>
</div>
</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 20190713).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
<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 20190713).
+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190720).
****************************************************************************/
/*
- * $Id: tic.h,v 1.78 2019/03/10 00:06:02 tom Exp $
+ * $Id: tic.h,v 1.79 2019/07/20 20:19:54 tom Exp $
* tic.h - Global variables and structures for the terminfo compiler.
*/
#define IS_TIC_MAGIC(p) (LOW_MSB(p) == MAGIC || LOW_MSB(p) == MAGIC2)
-#define quick_prefix(s) (!strncmp((s), "b64:", 4) || !strncmp((s), "hex:", 4))
+#define quick_prefix(s) (!strncmp((s), "b64:", (size_t)4) || !strncmp((s), "hex:", (size_t)4))
/*
* The "maximum" here is misleading; XSI guarantees minimum values, which a
.\"***************************************************************************
-.\" Copyright (c) 2002-2017,2018 Free Software Foundation, Inc. *
+.\" Copyright (c) 2002-2018,2019 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.16 2018/09/01 20:58:10 tom Exp $
+.\" $Id: curs_get_wstr.3x,v 1.18 2019/07/20 19:14:56 tom Exp $
.TH curs_get_wstr 3X ""
.de bP
.ie n .IP \(bu 4
while \fBwchar_t\fP is a unsigned type.
All of the vendors implement this using \fBwint_t\fR, following the standard.
.PP
-X/Open Curses issue 7 is unclear regarding whether
+X/Open Curses, Issue 7 (2009) is unclear regarding whether
the terminating \fInull \fP\fBwchar_t\fP
value is counted in the length parameter \fIn\fP.
-X/Open Curses issue 7 revised the corresponding description
+X/Open Curses, Issue 7 revised the corresponding description
of \fBwgetnstr\fP to address this issue.
The unrevised description of \fBwget_nwstr\fP can be interpreted either way.
This implementation counts the terminator in the length.
.\"***************************************************************************
-.\" Copyright (c) 1998-2017,2018 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2018,2019 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.26 2018/09/01 20:34:52 tom Exp $
+.\" $Id: curs_getstr.3x,v 1.28 2019/07/20 19:14:56 tom Exp $
.TH curs_getstr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
The functions \fBgetnstr\fR, \fBmvgetnstr\fR, and \fBmvwgetnstr\fR were
present but not documented in SVr4.
.PP
-X/Open Curses issue 5 (2007) stated that these functions
+X/Open Curses, Issue 5 (2007) stated that these functions
\*(``read at most \fIn\fP bytes\*(''
but did not state whether the terminating NUL is counted in that limit.
-X/Open Curses issue 7 (2009) changed that to say they
+X/Open Curses, Issue 7 (2009) changed that to say they
\*(``read at most \fIn\fP\-1 bytes\*(''
to allow for the terminating NUL.
As of 2018, some implementations do, some do not count it:
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: infocmp.1m,v 1.74 2019/05/18 22:00:55 tom Exp $
+.\" $Id: infocmp.1m,v 1.75 2019/07/20 18:42:11 tom Exp $
.TH @INFOCMP@ 1M ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.TP 20
\*d
Compiled terminal description database.
+.SH HISTORY
+Although System V Release 2 provided a terminfo library,
+it had no documented tool for decompiling the terminal descriptions.
+Tony Hansen (AT&T) wrote the first \fBinfocmp\fP in early 1984,
+for System V Release 3.
+.PP
+Eric Raymond used the AT&T documentation in 1995 to provide an equivalent
+\fB@INFOCMP@\fP for ncurses.
+In addition, he added a few new features such as:
+.bP
+the \fB\-e\fP option, to support \fIfallback\fP
+(compiled-in) terminal descriptions
+.bP
+the \fB\-i\fP option, to help with analysis
+.PP
+Later, Thomas Dickey added the \fB\-x\fP (user-defined capabilities)
+option, and the \fB\-E\fP option to support fallback entries with
+user-defined capabilities.
+.PP
+For a complete list, see the \fIEXTENSIONS\fP section.
+.PP
+In 2010, Roy Marples provided an \fBinfocmp\fP program for NetBSD.
+It is less capable than the SVr4 or ncurses versions
+(e.g., it lacks the sorting options documented in X/Open),
+but does include the \fB\-x\fP option adapted from ncurses.
+.SH PORTABILITY
+X/Open Curses, Issue 7 (2009) provides a description of \fBinfocmp\fP.
+It does not mention the options used for converting to termcap format.
.SH EXTENSIONS
The
\fB\-0\fR,
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: man_db.renames,v 1.54 2019/06/23 19:12:27 tom Exp $
+# $Id: man_db.renames,v 1.55 2019/07/20 10:18:12 Sven.Joachim Exp $
# Manual-page renamings for the man_db program
#
# Files:
wresize.3x wresize.3ncurses
#
# Other:
-tabs.1m tabs.1
tack.1m tack.1
#
getty.1 getty.8
-.\" $Id: terminfo.tail,v 1.95 2019/07/13 23:29:04 tom Exp $
-.\" Beginning of terminfo.tail file
-.\" This file is part of ncurses.
-.\" See "terminfo.head" for copyright.
+.\"***************************************************************************
+.\" Copyright (c) 1998-2018,2019 Free Software Foundation, Inc. *
+.\" *
+.\" Permission is hereby granted, free of charge, to any person obtaining a *
+.\" copy of this software and associated documentation files (the *
+.\" "Software"), to deal in the Software without restriction, including *
+.\" without limitation the rights to use, copy, modify, merge, publish, *
+.\" distribute, distribute with modifications, sublicense, and/or sell *
+.\" copies of the Software, and to permit persons to whom the Software is *
+.\" furnished to do so, subject to the following conditions: *
+.\" *
+.\" The above copyright notice and this permission notice shall be included *
+.\" in all copies or substantial portions of the Software. *
+.\" *
+.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+.\" IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+.\" DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+.\" OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+.\" THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+.\" *
+.\" Except as contained in this notice, the name(s) of the above copyright *
+.\" holders shall not be used in advertising or otherwise to promote the *
+.\" sale, use or other dealings in this Software without prior written *
+.\" authorization. *
+.\"***************************************************************************
+.\"
+.\" $Id: terminfo.tail,v 1.97 2019/07/20 10:20:57 tom Exp $
.ps +1
.SS User-Defined Capabilities
.
\*d/?/*
files containing terminal descriptions
.SH SEE ALSO
-\fB@TABS@\fR(1M),
+\fB@TABS@\fR(1),
\fB@TIC@\fR(1M),
\fB@INFOCMP@\fR(1M),
\fBcurses\fR(3X),
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: tic.1m,v 1.69 2019/05/18 22:48:40 tom Exp $
+.\" $Id: tic.1m,v 1.74 2019/07/20 17:57:09 tom Exp $
.TH @TIC@ 1M ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
(32 characters on systems with long filenames, 14 characters otherwise)
will be truncated to the maximum alias length
and a warning message will be printed.
-.SH COMPATIBILITY
+.SH HISTORY
+.PP
+System V Release 2 provided a \fBtic\fP utility.
+It accepted a single option: \fB\-v\fP (optionally followed by a number).
+According to Ross Ridge's comment in \fImytinfo\fP,
+this version of \fBtic\fP was
+unable to represent cancelled capabilities.
+.PP
+System V Release 3 provided a different \fBtic\fP utility,
+written by Pavel Curtis,
+(originally named \*(``compile\*('' in \fIpcurses\fP).
+This added an option \fB\-c\fP to check the file for
+errors, with the caveat that errors in \*(``use=\*('' links
+would not be reported.
+System V Release 3 documented a few warning messages which
+did not appear in \fIpcurses\fP.
+While the program itself was changed little as development
+continued with System V Release 4,
+the table of capabilities grew from 180 (\fIpcurses\fP) to 464 (Solaris).
+.PP
+In early development of ncurses (1993),
+Zeyd Ben-Halim used the table from \fImytinfo\fP to
+extend the \fIpcurses\fP table to 469 capabilities
+(456 matched SVr4, 8 were only in SVr4, 13 were not in SVr4).
+Of those 13, 11 were ultimately discarded
+(perhaps to match the draft of X/Open Curses).
+The exceptions were
+\fBmemory_lock_above\fP and
+\fBmemory_unlock\fP (see \fBuser_caps\fP(5)).
+.PP
+Eric Raymond incorporated parts of \fImytinfo\fP into ncurses
+to implement the termcap-to-terminfo source conversion,
+and extended that to begin development of
+the corresponding terminfo-to-termcap source conversion,
+Thomas Dickey completed that development over the course of several years.
+.PP
+In 1999, Thomas Dickey added the \fB\-x\fP option
+to support user-defined capabilities.
+.PP
+In 2010, Roy Marples provided a \fBtic\fP program
+and terminfo library for NetBSD.
+This implementation adapts several features from ncurses,
+including \fB@TIC@\fP's \fB\-x\fP option.
+.PP
+The \fB\-c\fP option tells \fB@TIC@\fP to check for problems in the
+terminfo source file.
+Continued development provides additional checks:
+.bP
+\fIpcurses\fP had 8 warnings
+.bP
+ncurses in 1996 had 16 warnings
+.bP
+Solaris (SVr4) curses has 28 warnings
+.bP
+NetBSD tic in 2019 has 19 warnings.
+.bP
+ncurses in 2019 has 96 warnings
+.PP
+The checking done in ncurses' \fB@TIC@\fP helps with the conversion to
+termcap, as well as pointing out errors and inconsistencies.
+It is also used to ensure consistency with the user-defined capabilities.
+There are 527 distinct capabilities in ncurses' terminal database;
+128 of those are user-defined.
+.SH PORTABILITY
+.PP
+X/Open Curses, Issue 7 (2009) provides a brief description of \fBtic\fP.
+It lists one option: \fB\-c\fP.
+The omission of \fB\-v\fP is unexpected.
+The change history states that the description is derived from True64 UNIX.
+According to its manual pages, that system also supported the \fB\-v\fP option.
+.PP
+Shortly after Issue 7 was released, Tru64 was discontinued.
+As of 2019, the surviving implementations of \fBtic\fP
+are SVr4 (AIX, HP-UX and Solaris),
+ncurses
+and NetBSD curses.
+.PP
+The X/Open rationale states that some implementations of \fBtic\fP
+read terminal descriptions from the standard input if the \fIfile\fP
+parameter is omitted.
+None of these implementations do that.
+Further, it comments that some may choose to read from \*(''./terminfo.src\*(''
+but that is obsolescent behavior from SVr2,
+and is not (for example) a documented feature of SVr3.
+.SS COMPATIBILITY
There is some evidence that historic \fB@TIC@\fR implementations treated
description fields with no whitespace in them as additional aliases or
short names.
This \fB@TIC@\fR does not do that, but it does warn when
description fields may be treated that way and check them for dangerous
characters.
-.SH EXTENSIONS
+.SS EXTENSIONS
Unlike the SVr4 \fB@TIC@\fR command, this implementation can actually
compile termcap sources.
In fact, entries in terminfo and termcap syntax can
\fB\-x\fR
options
are not supported under SVr4.
-The SVr4 \fB\-c\fR mode does not report bad use links.
+The SVr4 \fB\-c\fR mode does not report bad \*(``use=\*('' links.
.PP
System V does not compile entries to or read entries from your
\fI$HOME/.terminfo\fR database unless TERMINFO is explicitly set to it.
.\"***************************************************************************
-.\" Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2019 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: toe.1m,v 1.29 2017/02/18 17:10:26 tom Exp $
+.\" $Id: toe.1m,v 1.31 2019/07/20 19:06:44 tom Exp $
.TH @TOE@ 1M ""
+.de bP
+.ie n .IP \(bu 4
+.el .IP \(bu 2
+..
.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
+.ie n .in -4
+.el .in -2
+..
.ds n 5
.ds d @TERMINFO@
.SH NAME
\fB\-V\fR
reports the version of ncurses which was used in this program,
and exits.
+.SH EXAMPLES
+.PP
+Without sorting, the \fB\-a\fP option reports all of the names found
+in all of the terminal databases found by the \fBTERMINFO\fP and
+\fBTERMINFO_DIRS\fP environment variables:
+.NS
+MtxOrb162 16x2 Matrix Orbital LCD display
+MtxOrb204 20x4 Matrix Orbital LCD display
+MtxOrb Generic Matrix Orbital LCD display
+qvt101+ qume qvt 101 PLUS product
+qvt119+-25 QVT 119 PLUS with 25 data lines
+qansi-g QNX ANSI
+qvt103 qume qvt 103
+qnxw QNX4 windows
+qansi-w QNX ansi for windows
+qnxm QNX4 with mouse events
+qvt203-25-w QVT 203 PLUS with 25 by 132 columns
+qansi-t QNX ansi without console writes
+\&.\ .\ .
+.NE
+.PP
+Use the \fB\-a\fP and \fB\-s\fP options together to show where each terminal
+description was found:
+.NS
+--> /usr/local/ncurses/share/terminfo
+----> /usr/share/terminfo
+*-+-: 9term Plan9 terminal emulator for X
+*---: Eterm Eterm with xterm-style color support (X Window System)
+*-*-: Eterm-256color Eterm with xterm 256-colors
+*-*-: Eterm-88color Eterm with 88 colors
+*-+-: MtxOrb Generic Matrix Orbital LCD display
+*-+-: MtxOrb162 16x2 Matrix Orbital LCD display
+*-+-: MtxOrb204 20x4 Matrix Orbital LCD display
+*-*-: NCR260VT300WPP NCR 2900_260 vt300 wide mode pc+ kybd
+*-+-: aaa ann arbor ambassador/30 lines
+*-+-: aaa+dec ann arbor ambassador in dec vt100 mode
+*-+-: aaa+rv ann arbor ambassador in reverse video
+\&.\ .\ .
+.NE
.SH FILES
.TP 5
\fB\*d/?/*\fR
Compiled terminal description database.
+.SH HISTORY
+This utility is not provided by other implementations.
+There is no relevant X/Open or POSIX standard for \fB@TOE@\fP.
+.PP
+The program name refers to a developer's pun:
+.bP
+\fBtic\fP,
+.bP
+\fBtac\fP (now \fBtack\fP),
+.bP
+\fBtoe\fP.
+.PP
+It replaced a \fB\-T\fP option which was briefly supported by
+the ncurses \fBinfocmp\fP utility in 1995.
+.PP
+The \fB\-a\fP and \fB\-s\fP options were added to
+\fB@TOE@\fR several years later (2006 and 2011, respectively).
.SH SEE ALSO
\fB@TIC@\fR(1M),
\fB@INFOCMP@\fR(1M),
/****************************************************************************
- * Copyright (c) 1998-2017,2018 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2018,2019 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 *
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_mouse.c,v 1.181 2018/11/24 17:28:37 tom Exp $")
+MODULE_ID("$Id: lib_mouse.c,v 1.182 2019/07/20 20:42:43 tom Exp $")
#include <tic.h>
#else
sp->_ifd,
#endif
- kbuf + grabbed, 1);
+ (kbuf + grabbed), (size_t) 1);
if (res == -1)
break;
grabbed += (size_t) res;
#else
sp->_ifd,
#endif
- kbuf + grabbed, 1);
+ (kbuf + grabbed), (size_t) 1);
if (res == -1)
break;
if ((grabbed + MAX_KBUF) >= (int) sizeof(kbuf)) {
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_screen.c,v 1.95 2019/05/04 20:31:31 tom Exp $")
+MODULE_ID("$Id: lib_screen.c,v 1.96 2019/07/20 20:23:21 tom Exp $")
#define MAX_SIZE 0x3fff /* 16k is big enough for a window or pad */
* Read the first 4 bytes to determine first if this is an old-format
* screen-dump, or new-format.
*/
- if (read_block(&tmp, 4, filep) < 0) {
+ if (read_block(&tmp, (size_t) 4, filep) < 0) {
returnWin(0);
}
/*
* If this is a new-format file, and we do not support it, give up.
*/
- if (!memcmp(&tmp, my_magic, 4)) {
+ if (!memcmp(&tmp, my_magic, (size_t) 4)) {
#if NCURSES_EXT_PUTWIN
if (read_win(&tmp, filep) < 0)
#endif
attr_t attr;
*buffer = '\0';
- if (!strncmp(name, "_pad.", 5) && !(win->_flags & _ISPAD)) {
+ if (!strncmp(name, "_pad.", (size_t) 5) && !(win->_flags & _ISPAD)) {
continue;
}
switch (scr_params[y].type) {
#include <ctype.h>
-MODULE_ID("$Id: make_hash.c,v 1.26 2019/03/10 01:10:15 tom Exp $")
+MODULE_ID("$Id: make_hash.c,v 1.27 2019/07/20 20:14:46 tom Exp $")
/*
* _nc_make_hash_table()
{
static char result[40];
unsigned n;
- strcpy(result, L_PAREN);
+ _nc_STRCPY(result, L_PAREN, sizeof(result));
for (n = 0; n < 3; ++n) {
if ((1 << n) & type_mask) {
if (result[1])
- strcat(result, "|");
- strcat(result, "1<<");
- strcat(result, typenames[n]);
+ _nc_STRCAT(result, "|", sizeof(result));
+ _nc_STRCAT(result, "1<<", sizeof(result));
+ _nc_STRCAT(result, typenames[n], sizeof(result));
}
}
- strcat(result, R_PAREN);
+ _nc_STRCAT(result, R_PAREN, sizeof(result));
return result;
}
#include <tic.h>
-MODULE_ID("$Id: read_entry.c,v 1.154 2019/03/23 23:47:16 tom Exp $")
+MODULE_ID("$Id: read_entry.c,v 1.155 2019/07/20 20:23:11 tom Exp $")
#define TYPE_CALLOC(type,elts) typeCalloc(type, (unsigned)(elts))
char *base = target;
int result = 0;
- if (!strncmp(source, "b64:", 4)) {
+ if (!strncmp(source, "b64:", (size_t) 4)) {
source += 4;
while (*source != '\0') {
int bits[4];
}
}
}
- } else if (!strncmp(source, "hex:", 4)) {
+ } else if (!strncmp(source, "hex:", (size_t) 4)) {
source += 4;
while (*source != '\0') {
int ch = decode_hex(&source);
-ncurses6 (6.1+20190713) unstable; urgency=low
+ncurses6 (6.1+20190720) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 13 Jul 2019 16:42:44 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 20 Jul 2019 06:26:30 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.1+20190713) unstable; urgency=low
+ncurses6 (6.1+20190720) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 13 Jul 2019 16:42:44 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 20 Jul 2019 06:26:30 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.1+20190713) unstable; urgency=low
+ncurses6 (6.1+20190720) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 13 Jul 2019 16:42:44 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 20 Jul 2019 06:26:30 -0400
ncurses6 (5.9-20120608) unstable; urgency=low
-; $Id: mingw-ncurses.nsi,v 1.340 2019/07/13 20:42:44 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.342 2019/07/20 10:26:30 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 "2019"\r
-!define VERSION_MMDD "0713"\r
+!define VERSION_MMDD "0720"\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: 20190713
+Release: 20190720
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.1
-Release: 20190713
+Release: 20190720
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: Curses library with POSIX thread support.
Name: ncursest6
Version: 6.1
-Release: 20190713
+Release: 20190720
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz