-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: NEWS,v 1.3320 2019/05/19 00:12:03 tom Exp $
+-- $Id: NEWS,v 1.3322 2019/05/25 19:18:23 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.
+20190525
+ + modify reset_cmd.c to allow for tabstops at intervals other than 8
+ (report by Vincent Huisman).
+
20190518
+ update xterm-new to xterm patch #345 -TD
+ add/use xterm+keypad in xterm-new (report by Alain D D Williams) -TD
-5:0:10 6.1 20190518
+5:0:10 6.1 20190525
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: dist.mk,v 1.1283 2019/05/18 10:29:53 tom Exp $
+# $Id: dist.mk,v 1.1284 2019/05/25 15:39:25 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 = 20190518
+NCURSES_PATCH = 20190525
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: tic.1m,v 1.68 2019/05/18 21:59:56 tom Exp $
+.\" $Id: tic.1m,v 1.69 2019/05/18 22:48:40 tom Exp $
.TH @TIC@ 1M ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.\"***************************************************************************
-.\" Copyright (c) 2017,2018 Free Software Foundation, Inc. *
+.\" Copyright (c) 2017-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: user_caps.5,v 1.9 2018/07/28 22:05:23 tom Exp $
+.\" $Id: user_caps.5,v 1.10 2019/05/18 22:48:40 tom Exp $
.TH user_caps 5
.ie \n(.g .ds `` \(lq
.el .ds `` ``
-ncurses6 (6.1+20190518) unstable; urgency=low
+ncurses6 (6.1+20190525) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 18 May 2019 06:29:53 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 25 May 2019 11:39:25 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.1+20190518) unstable; urgency=low
+ncurses6 (6.1+20190525) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 18 May 2019 06:29:53 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 25 May 2019 11:39:25 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.1+20190518) unstable; urgency=low
+ncurses6 (6.1+20190525) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 18 May 2019 06:29:53 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 25 May 2019 11:39:25 -0400
ncurses6 (5.9-20120608) unstable; urgency=low
-; $Id: mingw-ncurses.nsi,v 1.329 2019/05/18 10:29:53 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.330 2019/05/25 15:39:25 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 "0518"\r
+!define VERSION_MMDD "0525"\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: 20190518
+Release: 20190525
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.1
-Release: 20190518
+Release: 20190525
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: Curses library with POSIX thread support.
Name: ncursest6
Version: 6.1
-Release: 20190518
+Release: 20190525
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
#include <sys/ptem.h>
#endif
-MODULE_ID("$Id: reset_cmd.c,v 1.14 2019/02/23 18:33:19 tom Exp $")
+MODULE_ID("$Id: reset_cmd.c,v 1.17 2019/05/25 22:36:53 tom Exp $")
/*
* SCO defines TIOCGSIZE and the corresponding struct. Other systems (SunOS,
tty_settings->c_lflag |= (ECHOE | ECHOK);
}
+static bool
+sent_string(const char *s)
+{
+ bool sent = FALSE;
+ if (VALID_STRING(s)) {
+ tputs(s, 0, out_char);
+ sent = TRUE;
+ }
+ return sent;
+}
+
+static bool
+to_left_margin(void)
+{
+ if (VALID_STRING(carriage_return)) {
+ sent_string(carriage_return);
+ } else {
+ out_char('\r');
+ }
+ return TRUE;
+}
+
/*
* Set the hardware tabs on the terminal, using the 'ct' (clear all tabs),
* 'st' (set one tab) and 'ch' (horizontal cursor addressing) capabilities.
static bool
reset_tabstops(int wide)
{
- if ((init_tabs != 8) && (VALID_STRING(set_tab) && VALID_STRING(clear_all_tabs))) {
+ if ((init_tabs != 8)
+ && VALID_NUMERIC(init_tabs)
+ && VALID_STRING(set_tab)
+ && VALID_STRING(clear_all_tabs)) {
int c;
- (void) putc('\r', my_file); /* Force to left margin. */
+ to_left_margin();
tputs(clear_all_tabs, 0, out_char);
-
- for (c = 8; c < wide; c += 8) {
- /* Get to the right column. In BSD tset, this used to try a bunch
- * of half-clever things with cup and hpa, for an average saving of
- * somewhat less than two character times per tab stop, less than
- * .01 sec at 2400cps. We lost all this cruft because it seemed to
- * be introducing some odd bugs.
- * -----------12345678----------- */
- (void) fputs(" ", my_file);
- tputs(set_tab, 0, out_char);
+ if (init_tabs > 1) {
+ if (init_tabs > wide)
+ init_tabs = (short) wide;
+ for (c = init_tabs; c < wide; c += init_tabs) {
+ fprintf(my_file, "%*s", init_tabs, " ");
+ tputs(set_tab, 0, out_char);
+ }
+ to_left_margin();
}
- putc('\r', my_file);
return (TRUE);
}
return (FALSE);
}
-static bool
-sent_string(const char *s)
-{
- bool sent = FALSE;
- if (VALID_STRING(s)) {
- tputs(s, 0, out_char);
- sent = TRUE;
- }
- return sent;
-}
-
-#define PUTCHAR(c) fputc(c, my_file)
-
/* Output startup string. */
bool
send_init_strings(int fd GCC_UNUSED, TTY * old_settings)
&& VALID_STRING(set_left_margin)
&& VALID_STRING(set_right_margin)) {
need_flush |= sent_string(clear_margins);
- if (carriage_return != 0) {
- need_flush |= sent_string(carriage_return);
- } else {
- PUTCHAR('\r');
- }
+ need_flush |= to_left_margin();
need_flush |= sent_string(set_left_margin);
if (VALID_STRING(parm_right_cursor)) {
need_flush |= sent_string(TPARM_1(parm_right_cursor,
columns - 1));
} else {
for (i = 0; i < columns - 1; i++) {
- PUTCHAR(' ');
+ out_char(' ');
+ need_flush = TRUE;
}
}
need_flush |= sent_string(set_right_margin);
- if (VALID_STRING(carriage_return)) {
- need_flush |= sent_string(carriage_return);
- } else {
- PUTCHAR('\r');
- }
+ need_flush |= to_left_margin();
}
need_flush |= reset_tabstops(columns);