-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: NEWS,v 1.3300 2019/03/30 23:12:31 tom Exp $
+-- $Id: NEWS,v 1.3304 2019/04/07 00:05:35 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.
+20190406
+ + modify MKcaptab.sh, MKkey_defs.sh, and MKhashsize.sh to handle
+ split-up Caps-files.
+ + build-fixes if extended-functions are disabled.
+
20190330
+ add "screen5", to mention italics (report by Stefan Assmann)
+ modify description of xterm+x11hilite to eliminate unused p5 -TD
-5:0:10 6.1 20190330
+5:0:10 6.1 20190406
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: dist.mk,v 1.1276 2019/03/30 13:07:14 tom Exp $
+# $Id: dist.mk,v 1.1277 2019/04/06 10:42:54 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 = 20190330
+NCURSES_PATCH = 20190406
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
#!/bin/sh
##############################################################################
-# Copyright (c) 1998,2006 Free Software Foundation, Inc. #
+# Copyright (c) 1998-2006,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"), #
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: MKhashsize.sh,v 1.7 2006/10/22 00:45:39 tom Exp $
+# $Id: MKhashsize.sh,v 1.8 2019/04/06 22:53:17 tom Exp $
#
# MKhashsize.sh --- generate size include for hash functions
#
echo " * hashsize.h -- hash and token table constants"
echo " */"
-CAPS="${1-Caps}"
-TABSIZE=`grep -v '^[ #]' $CAPS | grep -v "^$" | grep -v "^capalias"| grep -v "^infoalias" | wc -l`
+test $# = 0 && set Caps
+TABSIZE=`cat "$@" | grep -v '^[ #]' | grep -v "^$" | grep -v "^capalias"| grep -v "^infoalias" | grep -v "^userdef" | grep -v "^used_by" | wc -l`
echo ""
echo "#define CAPTABSIZE ${TABSIZE}"
#! /bin/sh
-# $Id: MKkey_defs.sh,v 1.17 2019/03/02 22:51:42 tom Exp $
+# $Id: MKkey_defs.sh,v 1.18 2019/04/06 23:38:16 tom Exp $
##############################################################################
# Copyright (c) 2001-2017,2019 Free Software Foundation, Inc. #
# #
# Extract function-key definitions from the Caps file
#
: ${AWK-awk}
-DATA=${1-Caps}
+
+test $# = 0 && set Caps
data=data$$
pass1=pass1_$$
# change repeated tabs (used for readability) to single tabs (needed to make
# awk see the right field alignment of the corresponding columns):
-if sort -k 6 $DATA >$data 2>/dev/null
+if sort -k 6 "$@" >$data 2>/dev/null
then
# POSIX
- sed -e 's/[ ][ ]*/ /g' < $DATA |sort -n -k 6 >$data
-elif sort -n +5 $DATA >$data 2>/dev/null
+ sed -e 's/[ ][ ]*/ /g' "$@" |sort -n -k 6 >$data
+elif sort -n +5 "$@" >$data 2>/dev/null
then
# SunOS (and SVr4, marked as obsolete but still recognized)
- sed -e 's/[ ][ ]*/ /g' < $DATA |sort -n +5 >$data
+ sed -e 's/[ ][ ]*/ /g' "$@" |sort -n +5 >$data
else
echo "Your sort utility is broken. Please install one that works." >&2
exit 1
EOF
THIS=./`basename $0`
-PARM=./`basename $DATA`
cat <<EOF
/*
- * These definitions were generated by $THIS $PARM
+ * These definitions were generated by $THIS $*
*/
EOF
/^#/ {next;}
/^capalias/ {next;}
/^infoalias/ {next;}
+/^used_by/ {next;}
+/^userdef/ {next;}
$5 != "-" && $6 != "-" {
if ($6 == "+") {
#!/bin/sh
##############################################################################
-# Copyright (c) 2007-2010,2011 Free Software Foundation, Inc. #
+# Copyright (c) 2007-2011,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"), #
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: MKcaptab.sh,v 1.14 2011/10/22 16:34:50 tom Exp $
-AWK=${1-awk}
-OPT1=${2-0}
-OPT2=${3-tinfo/MKcaptab.awk}
-DATA=${4-../include/Caps}
+# $Id: MKcaptab.sh,v 1.15 2019/04/06 21:53:49 tom Exp $
+
+if test $# != 0
+then
+ AWK="$1"; shift 1
+else
+ AWK=awk
+fi
+
+if test $# != 0
+then
+ OPT1="$1"; shift 1
+else
+ OPT1="-0"
+fi
+
+if test $# != 0
+then
+ OPT2="$1"; shift 1
+else
+ OPT2="tinfo/MKcaptab.awk"
+fi
cat <<EOF
/*
EOF
-./make_hash 1 info $OPT1 <$DATA
-./make_hash 3 cap $OPT1 <$DATA
+cat "$@" |./make_hash 1 info $OPT1
+cat "$@" |./make_hash 3 cap $OPT1
-$AWK -f $OPT2 bigstrings=$OPT1 tablename=capalias <$DATA
+cat "$@" |$AWK -f $OPT2 bigstrings=$OPT1 tablename=capalias
-$AWK -f $OPT2 bigstrings=$OPT1 tablename=infoalias <$DATA
+cat "$@" |$AWK -f $OPT2 bigstrings=$OPT1 tablename=infoalias
cat <<EOF
-ncurses6 (6.1+20190330) unstable; urgency=low
+ncurses6 (6.1+20190406) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 30 Mar 2019 09:07:14 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 06 Apr 2019 06:42:54 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.1+20190330) unstable; urgency=low
+ncurses6 (6.1+20190406) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 30 Mar 2019 09:07:14 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 06 Apr 2019 06:42:54 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.1+20190330) unstable; urgency=low
+ncurses6 (6.1+20190406) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 30 Mar 2019 09:07:14 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 06 Apr 2019 06:42:54 -0400
ncurses6 (5.9-20120608) unstable; urgency=low
-; $Id: mingw-ncurses.nsi,v 1.322 2019/03/30 13:07:14 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.323 2019/04/06 10:42:54 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 "0330"\r
+!define VERSION_MMDD "0406"\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: 20190330
+Release: 20190406
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.1
-Release: 20190330
+Release: 20190406
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: Curses library with POSIX thread support.
Name: ncursest6
Version: 6.1
-Release: 20190330
+Release: 20190406
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
#include <parametrized.h>
#include <transform.h>
-MODULE_ID("$Id: tic.c,v 1.271 2019/03/17 00:46:55 tom Exp $")
+MODULE_ID("$Id: tic.c,v 1.272 2019/04/06 20:18:54 tom Exp $")
#define STDIN_NAME "<stdin>"
#endif
}
+#if NCURSES_XNAMES
static bool
uses_SGR_39_49(const char *value)
{
static void
check_screen(TERMTYPE2 *tp)
{
-#if NCURSES_XNAMES
if (_nc_user_definable) {
int have_XT = tigetflag("XT");
int have_XM = tigetflag("XM");
}
}
}
-#endif
}
+#else
+#define check_screen(tp) /* nothing */
+#endif
/*
* Returns the expected number of parameters for the given capability.
* Check for user-capabilities that happen to be used in ncurses' terminal
* database.
*/
+#if NCURSES_XNAMES
static struct user_table_entry const *
lookup_user_capability(const char *name)
{
}
return result;
}
+#endif
/*
* If a given name is likely to be a user-capability, return the number of
(name[1] >= '0' && name[1] <= '9') &&
name[2] == '\0') {
result = (name[1] == '6') ? 2 : 0;
- } else if (using_extensions) {
+ }
+#if NCURSES_XNAMES
+ else if (using_extensions) {
struct user_table_entry const *p = lookup_user_capability(name);
if (p != 0) {
result = (int) p->ute_argc;
}
}
+#endif
return result;
}
s++;
}
+#if NCURSES_XNAMES
if (extended) {
int check = is_user_capability(name);
if (check != actual) {
}
expected = actual;
}
+#endif
if (params[0]) {
_nc_warning("%s refers to parameter 0 (%%p0), which is not allowed", name);
analyzed = popcount;
}
if (actual != analyzed && expected != analyzed) {
+#if NCURSES_XNAMES
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, expected %d",
analyzed, name, user_cap);
- } else {
+ } else
+#endif
+ {
_nc_warning("tparm analyzed %d parameters for %s, expected %d",
analyzed, name, actual);
}
}
}
+#if NCURSES_XNAMES
static int
standard_type(const char *name)
{
}
}
}
+#endif
/* other sanity-checks (things that we don't want in the normal
* logic that reads a terminfo entry)
/****************************************************************************
- * Copyright (c) 2005-2016,2017 Free Software Foundation, Inc. *
+ * Copyright (c) 2005-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: demo_menus.c,v 1.65 2017/11/24 21:03:30 tom Exp $
+ * $Id: demo_menus.c,v 1.66 2019/04/06 20:42:48 tom Exp $
*
* Demonstrate a variety of functions from the menu library.
* Thomas Dickey - 2005/4/9
}
}
-#ifdef KEY_RESIZE
+#if defined(KEY_RESIZE) && NCURSES_EXT_FUNCS
static void
resize_menu(MENU ** menu)
{
resize_menu(&mpTrace);
#endif
}
-#endif
+#endif /* defined(KEY_RESIZE) && NCURSES_EXT_FUNCS */
static void
show_status(int ch, MENU * menu)
case KEY_SRIGHT:
move_menus(last_menu, 0, 1);
continue;
-#ifdef KEY_RESIZE
+#if defined(KEY_RESIZE) && NCURSES_EXT_FUNCS
case KEY_RESIZE:
resize_menus(last_menu);
continue;
/****************************************************************************
- * Copyright (c) 2017 Free Software Foundation, Inc. *
+ * Copyright (c) 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 *
****************************************************************************/
/*
- * $Id: sp_tinfo.c,v 1.21 2017/06/17 21:19:25 tom Exp $
+ * $Id: sp_tinfo.c,v 1.22 2019/04/06 20:42:57 tom Exp $
*
* TOTO: add option for non-sp-funcs interface
*/
static void
do_stuff(MYDATA * data)
{
- char *s;
SCREEN *sp = data->sp;
+#if NCURSES_EXT_FUNCS
+ char *s;
int my_code = 1234;
const char *my_text = "\033[?m";
+#endif
set_curterm_sp(sp, data->term);
show_string(data, "unctrl", unctrl_sp(sp, 033));
fflush(data->fp);
+#if NCURSES_EXT_FUNCS
define_key_sp(sp, my_text, my_code);
has_key_sp(sp, 0);
key_defined_sp(sp, my_text);
if ((s = keybound_sp(sp, my_code, 0)) != 0)
free(s);
+#endif
keyname_sp(sp, '?');
+#if NCURSES_EXT_FUNCS
keyok_sp(sp, my_code, FALSE);
keyok_sp(sp, my_code, TRUE);
+#endif
savetty_sp(sp);
/*
* These functions are low-level settings for ncurses.
*/
+#if NCURSES_EXT_FUNCS
set_tabsize_sp(sp, 5); /* waddch */
+#endif
typeahead_sp(sp, FALSE); /* waddch */
use_env_sp(sp, FALSE); /* newterm */
use_tioctl_sp(sp, FALSE); /* newterm */