-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: NEWS,v 1.3484 2020/05/09 14:53:16 tom Exp $
+-- $Id: NEWS,v 1.3486 2020/05/17 00:40:58 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.
+20200516
+ + add notes on termcap.h header in curs_termcap.3x
+ + update notes on vscode / xterm.js -TD
+
20200509
+ add "-r" option to the dots test-programs, to help with scripting
a performance comparison.
-5:0:10 6.2 20200509
+5:0:10 6.2 20200516
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: dist.mk,v 1.1349 2020/05/09 09:21:38 tom Exp $
+# $Id: dist.mk,v 1.1350 2020/05/16 12:23:59 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 = 2
-NCURSES_PATCH = 20200509
+NCURSES_PATCH = 20200516
# 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.2 (patch 20200425).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
</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.2 (patch 20200425).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
</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.2 (patch 20200425).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_termcap.3x,v 1.43 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_termcap.3x,v 1.44 2020/05/17 01:20:13 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
+
+</PRE><H3><a name="h3-Standards">Standards</a></H3><PRE>
These functions are provided for supporting legacy applications, and
should not be used in new programs:
bility with the <EM>termcap</EM> library, that is a defect in XCurses, Issue 4,
Version 2 rather than in ncurses.
+
+</PRE><H3><a name="h3-Compatibility-with-BSD-Termcap">Compatibility with BSD Termcap</a></H3><PRE>
External variables are provided for support of certain termcap applica-
tions. However, termcap applications' use of those variables is poorly
documented, e.g., not distinguishing between input and output. In par-
against extended capability names which are longer than two charac-
ters.
+ The BSD termcap function <STRONG>tgetent</STRONG> returns the text of a termcap entry in
+ the buffer passed as an argument. This library (like other terminfo
+ implementations) does not store terminal descriptions as text. It sets
+ the buffer contents to a null-terminated string.
+
+
+</PRE><H3><a name="h3-Other-Compatibility">Other Compatibility</a></H3><PRE>
+ This library includes a termcap.h header, for compatibility with other
+ implementations. But the header is rarely used because the other im-
+ plementations are not strictly compatible.
+
+ The original BSD termcap (through 4.3BSD) had no header file which gave
+ function prototypes, because that was a feature of ANSI C. BSD termcap
+ was written several years before C was standardized. However, there
+ were two different termcap.h header files in the BSD sources:
+
+ <STRONG>o</STRONG> One was used internally by the <EM>jove</EM> editor in 2BSD through 4.4BSD.
+ It defined global symbols for the termcap variables which it used.
+
+ <STRONG>o</STRONG> The other appeared in 4.4BSD Lite Release 2 (mid-1993) as part of
+ <EM>libedit</EM> (also known as the <EM>editline</EM> library). The CSRG source his-
+ tory shows that this was added in mid-1992. The <EM>libedit</EM> header
+ file was used internally, as a convenience for compiling the <EM>edit-</EM>
+ <EM>line</EM> library. It declared function prototypes, but no global vari-
+ ables.
+
+ The header file from <EM>libedit</EM> was added to NetBSD's termcap library in
+ mid-1994.
+
+ Meanwhile, GNU termcap was under development, starting in 1990. The
+ first release (termcap 1.0) in 1991 included a termcap.h header. The
+ second release (termcap 1.1) in September 1992 modified the header to
+ use <STRONG>const</STRONG> for the function prototypes in the header where one would ex-
+ pect the parameters to be read-only. This was a difference versus the
+ original BSD termcap. The prototype for <STRONG>tputs</STRONG> also differed, but in
+ that instance, it was <EM>libedit</EM> which differed from BSD termcap.
+
+ A copy of GNU termcap 1.3 was bundled with <EM>bash</EM> in mid-1993, to support
+ the <EM>readline</EM> library.
+
+ A termcap.h file was provided in ncurses 1.8.1 (November 1993). That
+ reflected influence by <EM>emacs</EM> (rather than <EM>jove</EM>) and GNU termcap:
+
+ <STRONG>o</STRONG> it provided declarations for a few global symbols used by <EM>emacs</EM>
+
+ <STRONG>o</STRONG> it provided function prototypes (using <STRONG>const</STRONG>).
+
+ <STRONG>o</STRONG> a prototype for <STRONG>tparam</STRONG> (a GNU termcap feature) was provided.
+
+ Later (in mid-1996) the <STRONG>tparam</STRONG> function was removed from ncurses. As a
+ result, there are differences between any of the four implementations,
+ which must be taken into account by programs which can work with all
+ termcap library interfaces.
+
</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="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG>putc(3)</STRONG>.
</li>
<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
<li><a href="#h2-BUGS">BUGS</a></li>
-<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
+<li><a href="#h2-PORTABILITY">PORTABILITY</a>
+<ul>
+<li><a href="#h3-Standards">Standards</a></li>
+<li><a href="#h3-Compatibility-with-BSD-Termcap">Compatibility with BSD Termcap</a></li>
+<li><a href="#h3-Other-Compatibility">Other Compatibility</a></li>
+</ul>
+</li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
</ul>
</div>
<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.2 (patch 20200425).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
https://invisible-island.net/ncurses/tctest.html
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200425).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200425).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
</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.2 (patch 20200425).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
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.2 (patch 20200425).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
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.2 (patch 20200425).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
</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.2 (patch 20200425).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
</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.2 (patch 20200425).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
have, by specifying how to perform screen operations, and by specifying
padding requirements and initialization sequences.
- This manual describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200425).
+ This manual describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
</PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE>
<STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
<STRONG><A HREF="term.5.html">term(5)</A></STRONG>. <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200425).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
<STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG>ter-</STRONG>
<STRONG><A HREF="terminfo.5.html">minfo(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200425).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
</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.2 (patch 20200425).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
<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.2 (patch 20200425).
+ This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200516).
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_termcap.3x,v 1.43 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_termcap.3x,v 1.44 2020/05/17 01:20:13 tom Exp $
.TH curs_termcap 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
This implementation checks for, and modifies the data shown to the
termcap interface to accommodate termcap's limitation in this respect.
.SH PORTABILITY
+.SS Standards
These functions are provided for supporting legacy applications,
and should not be used in new programs:
.bP
Because the purpose of these functions is to provide compatibility with
the \fItermcap\fR library, that is a defect in XCurses, Issue 4, Version 2
rather than in ncurses.
+.SS Compatibility with BSD Termcap
.PP
External variables are provided for support of certain termcap applications.
However, termcap applications' use of those variables is poorly documented,
.bP
This implementation disallows matches by the termcap interface against
extended capability names which are longer than two characters.
+.PP
+The BSD termcap function \fBtgetent\fP returns the text of a termcap
+entry in the buffer passed as an argument.
+This library (like other terminfo implementations) does not store
+terminal descriptions as text.
+It sets the buffer contents to a null-terminated string.
+.SS Other Compatibility
+This library includes a termcap.h header,
+for compatibility with other implementations.
+But the header is rarely used because the other implementations
+are not strictly compatible.
+.PP
+The original BSD termcap (through 4.3BSD) had no header file which
+gave function prototypes, because that was a feature of ANSI C.
+BSD termcap was written several years before C was standardized.
+However, there were two different termcap.h header files in the BSD
+sources:
+.bP
+One was used internally by the \fIjove\fP editor in 2BSD through 4.4BSD.
+It defined global symbols for the termcap variables which it used.
+.bP
+The other appeared in 4.4BSD Lite Release 2 (mid-1993)
+as part of \fIlibedit\fP (also known as the \fIeditline\fP library).
+The CSRG source history shows that this was added in mid-1992.
+The \fIlibedit\fP header file was used internally,
+as a convenience for compiling the \fIeditline\fP library.
+It declared function prototypes, but no global variables.
+.PP
+The header file from \fIlibedit\fP was added to NetBSD's termcap
+library in mid-1994.
+.PP
+Meanwhile, GNU termcap was under development, starting in 1990.
+The first release (termcap 1.0) in 1991 included a termcap.h header.
+The second release (termcap 1.1) in September 1992 modified the
+header to use \fBconst\fP for the function prototypes in the header
+where one would expect the parameters to be read-only.
+This was a difference versus the original BSD termcap.
+The prototype for \fBtputs\fP also differed,
+but in that instance, it was \fIlibedit\fP which differed from BSD termcap.
+.PP
+A copy of GNU termcap 1.3 was bundled with \fIbash\fP in mid-1993,
+to support the \fIreadline\fP library.
+.PP
+A termcap.h file was provided in ncurses 1.8.1 (November 1993).
+That reflected influence by \fIemacs\fP (rather than \fIjove\fP)
+and GNU termcap:
+.bP
+it provided declarations for a few global symbols used by \fIemacs\fP
+.bP
+it provided function prototypes (using \fBconst\fP).
+.bP
+a prototype for \fBtparam\fP (a GNU termcap feature) was provided.
+.PP
+Later (in mid-1996) the \fBtparam\fP function was removed from ncurses.
+As a result, there are differences between any of the four implementations,
+which must be taken into account by programs which can work with all
+termcap library interfaces.
.SH SEE ALSO
\fBcurses\fR(3X),
\fBterminfo\fR(\*n),
# Report bugs and new terminal descriptions to
# bug-ncurses@gnu.org
#
-# $Revision: 1.795 $
-# $Date: 2020/05/02 23:39:49 $
+# $Revision: 1.800 $
+# $Date: 2020/05/16 16:59:20 $
#
# The original header is preserved below for reference. It is noted that there
# is a "newer" version which differs in some cosmetic details (but actually
setaf=\E[3%p1%dm, use=mach-gnu,
# From: Marcus Brinkmann
-# http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/hurd/hurd/console/
+# http://git.savannah.gnu.org/cgit/hurd/hurd.git/log/console/
#
# Comments in the original are summarized here:
#
use=xterm-basic,
#### Visual Studio
+# Visual Studio Code 1.45.0 uses xterm.js 12.8.1 (see https://xtermjs.org/).
+#
+# vttest:
+# - fixes menu 1 problem with wrapping
+# - supports DECALN
+# - fixes menu 8 problem with delete-character
+# - REP, SL/SL work
+# - keypad application mode still does not work; PF1-PF4 are not assigned.
+# - DECRQM/DECRPM do not work
+# - xterm mouse features:
+# - SGR coordinates work; the other modes do not (see vscode #96058)
+# - focus-events are not sent
+# - mouse highlight tracking does not send button event
+# tack/other:
+# - little or no change since previous review
+#
# Visual Studio Code 1.35.1 uses xterm.js (see https://xtermjs.org/).
# https://code.visualstudio.com/docs/editor/integrated-terminal
#
# https://github.com/thestinger/vte-ng
# which (based on the default branch setting) seems to be a fork of vte
# 0.48.2, and is noted as such in Arch:
-# https://www.archlinux.org/packages/community/x86_64/vte3-ng/
+# https://aur.archlinux.org/packages/vte3-ng/
# It won't be merged:
# https://bugzilla.gnome.org/show_bug.cgi?id=679658#c10
# https://bugzilla.gnome.org/show_bug.cgi?id=78291
# variables may be permanently set in the Control Panel\System applet.
#
# You can find out more about the restrictions of this facility at
-# <http://www.nentug.org/unix-to-nt/ntposix.htm>.
+# <https://jeffpar.github.io/kbarchive/kb/108/Q108581/>
#
# From: Federico Bianchi <bianchi@magna.cisid.unipi.it>, 15 Jan 1997
ansi-nt|psx_ansi|Microsoft Windows NT console POSIX ANSI mode,
#
# Someone has put a scanned copy of the manual online at:
# http://vt100.net/televideo/912b-om/
+# (https://vt100.net/manx/details/6,5484)
#
# These terminals were produced ca. 1979, and had a 12" monochrome
# screen, supported 75-9600 baud (no handshaking), monochrome, 7-bit
# + add details on the change to Linux SGR 21 in 2018 -TD
# + add xterm-direct16 and xterm-direct256 -TD
#
+# 2020-05-03
+# + fix some dead URLs -TD
+#
+# 2020-05-16
+# + update notes on vscode / xterm.js -TD
+#
######## SHANTIH! SHANTIH! SHANTIH!
-ncurses6 (6.2+20200509) unstable; urgency=low
+ncurses6 (6.2+20200516) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 09 May 2020 05:21:38 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 16 May 2020 08:23:59 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.2+20200509) unstable; urgency=low
+ncurses6 (6.2+20200516) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 09 May 2020 05:21:38 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 16 May 2020 08:23:59 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.2+20200509) unstable; urgency=low
+ncurses6 (6.2+20200516) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 09 May 2020 05:21:38 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 16 May 2020 08:23:59 -0400
ncurses6 (5.9-20120608) unstable; urgency=low
-; $Id: mingw-ncurses.nsi,v 1.393 2020/05/09 09:21:38 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.394 2020/05/16 12:23:59 tom Exp $\r
\r
; TODO add examples\r
; TODO bump ABI to 6\r
!define VERSION_MAJOR "6"\r
!define VERSION_MINOR "2"\r
!define VERSION_YYYY "2020"\r
-!define VERSION_MMDD "0509"\r
+!define VERSION_MMDD "0516"\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.2
-Release: 20200509
+Release: 20200516
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.2
-Release: 20200509
+Release: 20200516
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: Curses library with POSIX thread support.
Name: ncursest6
Version: 6.2
-Release: 20200509
+Release: 20200516
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz