-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: NEWS,v 1.2554 2016/01/03 01:17:55 tom Exp $
+-- $Id: NEWS,v 1.2560 2016/01/17 00:37:27 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.
+20160116
+ + tidy up comments about hardcoded 256color palette (report by
+ Leonardo Brondani Schenkel) -TD
+ + add putty-noapp entry, and amend putty entry to use application mode
+ for better consistency with xterm (report by Leonardo Brondani
+ Schenkel) -TD
+ + modify _nc_viscbuf2() and _tracecchar_t2() to trace wide-characters
+ as a whole rather than their multibyte equivalents.
+ + minor fix in wadd_wchnstr() to ensure that each cell has nonzero
+ width.
+ + move PUTC_INIT calls next to wcrtomb calls, to avoid carry-over of
+ error status when processing Unicode values which are not mapped.
+
20160102
+ modify ncurses c/C color test-screens to take advantage of wide
screens, reducing the number of lines used for 88- and 256-colors.
-5:0:9 6.0 20160102
+5:0:9 6.0 20160116
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: dist.mk,v 1.1087 2016/01/02 20:24:37 tom Exp $
+# $Id: dist.mk,v 1.1089 2016/01/16 21:24:23 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 = 0
-NCURSES_PATCH = 20160102
+NCURSES_PATCH = 20160116
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
# Report bugs and new terminal descriptions to
# bug-ncurses@gnu.org
#
-# $Revision: 1.559 $
-# $Date: 2015/11/28 21:35:00 $
+# $Revision: 1.561 $
+# $Date: 2016/01/17 00:25:26 $
#
# 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
ind=^J, indn=\E[%p1%dS,
initc=\E]P%p1%x%p2%{255}%*%{1000}%/%02x%p3%{255}%*%{1000}%/%02x%p4%{255}%*%{1000}%/%02x,
is2=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>\E]R,
- kLFT=\EOD, kRIT=\EOC, kb2=\E[G, kbs=\177, kcbt=\E[Z,
- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
+ kLFT=\E[D, kRIT=\E[C, kb2=\E[G, kbs=\177, kcbt=\E[Z,
+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
kdch1=\E[3~, kend=\E[4~, khome=\E[1~, kich1=\E[2~,
- kind=\EOB, kmous=\E[M, knp=\E[6~, kpp=\E[5~, kri=\EOA,
+ kind=\E[B, kmous=\E[M, knp=\E[6~, kpp=\E[5~, kri=\E[A,
kspd=^Z, nel=^M^J, oc=\E]R, op=\E[39;49m, rc=\E8, rev=\E[7m,
ri=\EM, rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l,
- rmcup=\E[2J\E[?47l, rmir=\E[4l, rmpch=\E[10m,
- rmso=\E[27m, rmul=\E[24m,
+ rmcup=\E[2J\E[?47l, rmir=\E[4l, rmkx=\E[?1l\E>,
+ rmpch=\E[10m, rmso=\E[27m, rmul=\E[24m,
rs2=\E<\E["p\E[50;6"p\Ec\E[?3l\E]R\E[?1000l,
s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m, sc=\E7,
setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[?47h,
- smir=\E[4h, smpch=\E[11m, smso=\E[7m, smul=\E[4m,
- tbc=\E[3g, vpa=\E[%i%p1%dd, E3=\E[3J, use=putty+fnkeys,
- use=vt102+enq, use=xterm+sl,
+ smir=\E[4h, smkx=\E[?1h\E=, smpch=\E[11m, smso=\E[7m,
+ smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, E3=\E[3J,
+ use=putty+fnkeys, use=vt102+enq, use=xterm+sl,
vt100-putty|Reset PuTTY to pure vt100,
rs2=\E<\E["p\Ec\E[?3l\E]R\E[40"p\E[61"p\E[50;1;2"p,
use=vt100,
-# palette is hardcoded...
putty-256color|PuTTY 0.58 with xterm 256-colors,
use=xterm+256setaf, use=putty,
+putty-noapp|putty with cursor keys in normal mode,
+ kLFT=\EOD, kRIT=\EOC, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
+ kcuu1=\E[A, kind=\EOB, kri=\EOA, rmkx=\E>, smkx=\E=,
+ use=putty,
# One of the keyboard selections is "VT100+".
# pterm (the X11 port) uses shifted F1-F10 as F11-F20
setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m,
setb@, setf@,
+# palette is hardcoded...
xterm+256setaf|xterm 256-color (set-only),
ccc@,
colors#256, pairs#32767,
vte|VTE aka GNOME Terminal,
use=vte-2014,
-# palette is hardcoded...
vte-256color|VTE with xterm 256-colors,
use=xterm+256color, use=vte,
gnome-256color|GNOME Terminal with xterm 256-colors,
konsole|KDE console window,
use=konsole-xf4x,
-# palette is hardcoded...
konsole-256color|KDE console window with xterm 256-colors,
use=xterm+256setaf, use=konsole,
# + fix some inconsistencies in the pccon* entries -TD
#
# 2015-11-28
-# add viewdata (Alexandre Montaron).
+# + add viewdata (Alexandre Montaron).
+#
+# 2016-01-16
+# + tidy up comments about hardcoded 256color palette (report by
+# Leonardo Brondani Schenkel) -TD
+# + add putty-noapp entry, and amend putty entry to use application mode
+# for better consistency with xterm (report by Leonardo Brondani
+# Schenkel) -TD
#
######## SHANTIH! SHANTIH! SHANTIH!
/****************************************************************************
- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2011,2016 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 *
#include <curses.priv.h>
-MODULE_ID("$Id: lib_addstr.c,v 1.52 2011/05/28 23:02:09 tom Exp $")
+MODULE_ID("$Id: lib_addstr.c,v 1.53 2016/01/16 21:00:53 tom Exp $")
NCURSES_EXPORT(int)
waddnstr(WINDOW *win, const char *astr, int n)
}
SetWidecExt(line->text[x + j], j);
}
+ } else {
+ len = 1;
}
x = (NCURSES_SIZE_T) (x + len);
end += len - 1;
/****************************************************************************
- * Copyright (c) 1998-2014,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2016 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 *
****************************************************************************/
/*
- * $Id: curses.priv.h,v 1.547 2015/06/27 01:22:16 tom Exp $
+ * $Id: curses.priv.h,v 1.548 2016/01/10 22:17:19 tom Exp $
*
* curses.priv.h
*
NCURSES_OUTC_FUNC (NCURSES_SP_ARGx CharOf(ch)); \
COUNT_OUTCHARS(1); \
} else { \
- PUTC_INIT; \
for (PUTC_i = 0; PUTC_i < CCHARW_MAX; ++PUTC_i) { \
PUTC_ch = (ch).chars[PUTC_i]; \
if (PUTC_ch == L'\0') \
break; \
+ PUTC_INIT; \
PUTC_n = (int) wcrtomb(PUTC_buf, \
(ch).chars[PUTC_i], &PUT_st); \
if (PUTC_n <= 0) { \
/****************************************************************************
- * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2014,2016 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_traceatr.c,v 1.83 2015/04/04 13:41:37 tom Exp $")
+MODULE_ID("$Id: lib_traceatr.c,v 1.85 2016/01/16 21:23:43 tom Exp $")
#define COLOR_OF(c) ((c < 0) ? "default" : (c > 7 ? color_of(c) : colors[c].name))
PUTC_DATA;
int n;
- PUTC_INIT;
(void) _nc_trace_bufcat(bufnum, "{ ");
for (PUTC_i = 0; PUTC_i < CCHARW_MAX; ++PUTC_i) {
PUTC_ch = ch->chars[PUTC_i];
(void) _nc_trace_bufcat(bufnum, "\\000");
break;
}
+ PUTC_INIT;
PUTC_n = (int) wcrtomb(PUTC_buf, ch->chars[PUTC_i], &PUT_st);
if (PUTC_n <= 0) {
if (PUTC_ch != L'\0') {
UChar(ch->chars[PUTC_i])));
}
break;
+ } else if (ch->chars[PUTC_i] > 255) {
+ char temp[80];
+ sprintf(temp, "{%d:\\u%x}",
+ wcwidth(ch->chars[PUTC_i]),
+ ch->chars[PUTC_i]);
+ (void) _nc_trace_bufcat(bufnum, temp);
+ break;
}
for (n = 0; n < PUTC_n; n++) {
if (n)
/****************************************************************************
- * Copyright (c) 2001-2012,2014 Free Software Foundation, Inc. *
+ * Copyright (c) 2001-2014,2016 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 *
#include <tic.h>
#include <ctype.h>
-MODULE_ID("$Id: visbuf.c,v 1.44 2014/09/25 08:51:13 tom Exp $")
+MODULE_ID("$Id: visbuf.c,v 1.46 2016/01/10 23:51:56 tom Exp $")
#define NUM_VISBUFS 4
if (!isWidecExt(buf[j])) {
PUTC_DATA;
- PUTC_INIT;
for (PUTC_i = 0; PUTC_i < CCHARW_MAX; ++PUTC_i) {
int k;
+ char temp[80];
PUTC_ch = buf[j].chars[PUTC_i];
if (PUTC_ch == L'\0') {
(void) _nc_trace_bufcat(bufnum, "\\000");
break;
}
+ PUTC_INIT;
PUTC_n = (int) wcrtomb(PUTC_buf,
buf[j].chars[PUTC_i], &PUT_st);
- if (PUTC_n <= 0)
+ if (PUTC_n <= 0 || buf[j].chars[PUTC_i] > 255) {
+ sprintf(temp, "{%d:\\u%x}",
+ wcwidth(buf[j].chars[PUTC_i]),
+ buf[j].chars[PUTC_i]);
+ (void) _nc_trace_bufcat(bufnum, temp);
break;
+ }
for (k = 0; k < PUTC_n; k++) {
- char temp[80];
VisChar(temp, UChar(PUTC_buf[k]), sizeof(temp));
(void) _nc_trace_bufcat(bufnum, temp);
}
-ncurses6 (6.0+20160102) unstable; urgency=low
+ncurses6 (6.0+20160116) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 02 Jan 2016 13:42:09 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 16 Jan 2016 16:24:23 -0500
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.0+20160102) unstable; urgency=low
+ncurses6 (6.0+20160116) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 02 Jan 2016 13:42:09 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 16 Jan 2016 16:24:23 -0500
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.0+20160102) unstable; urgency=low
+ncurses6 (6.0+20160116) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 02 Jan 2016 13:42:09 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 16 Jan 2016 16:24:23 -0500
ncurses6 (5.9-20120608) unstable; urgency=low
-; $Id: mingw-ncurses.nsi,v 1.139 2016/01/02 18:42:09 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.141 2016/01/16 21:24:23 tom Exp $\r
\r
; TODO add examples\r
; TODO bump ABI to 6\r
!define VERSION_MAJOR "6"\r
!define VERSION_MINOR "0"\r
!define VERSION_YYYY "2016"\r
-!define VERSION_MMDD "0102"\r
+!define VERSION_MMDD "0116"\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.0
-Release: 20160102
+Release: 20160116
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.0
-Release: 20160102
+Release: 20160116
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
/****************************************************************************
- * Copyright (c) 2015 Free Software Foundation, Inc. *
+ * Copyright (c) 2015,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
/*
* Author: Thomas E. Dickey
*
- * $Id: test_sgr.c,v 1.4 2015/11/21 22:43:50 tom Exp $
+ * $Id: test_sgr.c,v 1.5 2016/01/09 18:15:53 tom Exp $
*
* A simple demo of the sgr/sgr0 terminal capabilities.
*/
printf("%4d ", bits);
bits &= ~ignore;
for (n = 0; n < MAXPAR; ++n) {
- putchar((bits & (1 << n)) ? params[n] : '-');
+ putchar((int) ((bits & (unsigned) (1 << n)) ? params[n] : '-'));
}
putchar(' ');
putp(sgr);
}
}
for (j = 0; j < MAXPAR; ++j) {
- unsigned mask = (1 << j);
+ unsigned mask = (unsigned) (1 << j);
for (count = 0; count < MAXSGR; ++count) {
if ((count & mask) != 0)
continue;