diff --git a/NEWS b/NEWS index 92c2864b..46df07d3 100644 --- a/NEWS +++ b/NEWS @@ -26,7 +26,7 @@ -- sale, use or other dealings in this Software without prior written -- -- authorization. -- ------------------------------------------------------------------------------- --- $Id: NEWS,v 1.4398 2026/01/04 00:59:35 tom Exp $ +-- $Id: NEWS,v 1.4412 2026/01/18 00:54:25 tom Exp $ ------------------------------------------------------------------------------- This is a log of changes that ncurses has gone through since Zeyd started @@ -46,6 +46,32 @@ See the AUTHORS file for the corresponding full names. Changes through 1.9.9e did not credit all contributions; it is not possible to add this information. +20260117 + + add "alt_" to special key-prefix check for "djgpp" terminfo + + provide a generated list of user-defined special keys (adapted from + patch by Jakub Horky) -TD + + rename vt100+keypad, etc., to vt100+keypad+sco, etc., to keep + historical blocks while providing for renaming of vt220+keypad as + vt100+keypad (prompted by patch by Jakub Horky) -TD + + use vt100+keypad instead of vt220+keypad (patch by Jakub Horky) + + use vt100+keypad in putty+keypad, replacing kpXX extension -TD + + remove vt100+fnkeys-sco from putty -TD + + fix link_test.c for configuration without extended colors by + adjusting ifdefs and improving MKlib_gen.sh by checking for #if + statements with only a 0 or 1 parameter. + + fixes for "make check" (report by Brian Inglis): + + adjust definition of USE_TRACEF + + modify ncurses/wcwidth.h + + modify makefile to add dependencies needed in shared library + + modify makefile to work with libtool + + separate ncurses/tty/lib_mvcur.c test-driver from routine checks + + add a paragraph to user_caps.5 to mention extended capabilities which + are not documented as part of ncurses. + + use symbol DEFAULT_TERM_VAR for several cases where getenv("TERM") + returns null pointer. + + modify test/demo_new_pair.c to fix build with SmartOS (report by + Thomas Klausner). + 20260103 + cancel ncv in putty (patch by Jakub Horky) + add NQ to list of user-definable capabilities in user_caps(5) (patch diff --git a/VERSION b/VERSION index 84b0abfc..001a795f 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -5:0:10 6.6 20260103 +5:0:10 6.6 20260117 diff --git a/configure b/configure index 48ad381f..bf6acb9d 100755 --- a/configure +++ b/configure @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in Revision: 1.824 . +# From configure.in Revision: 1.826 . # Guess values for system-dependent variables and create Makefiles. # Generated by Autoconf 2.52.20250126. # @@ -29955,9 +29955,17 @@ else CHECK_BUILD= fi +# provide for commenting-out makefile rules building/using shared libraries +if test "$DFT_LWR_MODEL" = normal +then + NO_SHARED= +else + NO_SHARED="#" +fi + # This is used for the *-config script and *.pc data files. -echo "$as_me:29960: checking for linker search path" >&5 +echo "$as_me:29968: checking for linker search path" >&5 echo $ECHO_N "checking for linker search path... $ECHO_C" >&6 if test "${cf_cv_ld_searchpath+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -30005,7 +30013,7 @@ then cf_pathlist="$cf_pathlist /lib /usr/lib" ;; (*) - { echo "$as_me:30008: WARNING: problem with Solaris architecture" >&5 + { echo "$as_me:30016: WARNING: problem with Solaris architecture" >&5 echo "$as_me: WARNING: problem with Solaris architecture" >&2;} ;; esac @@ -30046,7 +30054,7 @@ done test -z "$cf_cv_ld_searchpath" && cf_cv_ld_searchpath=/usr/lib fi -echo "$as_me:30049: result: $cf_cv_ld_searchpath" >&5 +echo "$as_me:30057: result: $cf_cv_ld_searchpath" >&5 echo "${ECHO_T}$cf_cv_ld_searchpath" >&6 LD_SEARCHPATH=`echo "$cf_cv_ld_searchpath"|sed -e 's/ /|/g'` @@ -30136,7 +30144,7 @@ DEFS=-DHAVE_CONFIG_H : "${CONFIG_STATUS=./config.status}" ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ echo "$as_me:30139: creating $CONFIG_STATUS" >&5 +{ echo "$as_me:30147: creating $CONFIG_STATUS" >&5 echo "$as_me: creating $CONFIG_STATUS" >&6;} cat >"$CONFIG_STATUS" <<_ACEOF #! $SHELL @@ -30317,7 +30325,7 @@ cat >>"$CONFIG_STATUS" <<\EOF echo "$ac_cs_version"; exit 0 ;; --he | --h) # Conflict between --help and --header - { { echo "$as_me:30320: error: ambiguous option: $1 + { { echo "$as_me:30328: error: ambiguous option: $1 Try \`$0 --help' for more information." >&5 echo "$as_me: error: ambiguous option: $1 Try \`$0 --help' for more information." >&2;} @@ -30336,7 +30344,7 @@ Try \`$0 --help' for more information." >&2;} ac_need_defaults=false;; # This is an error. - -*) { { echo "$as_me:30339: error: unrecognized option: $1 + -*) { { echo "$as_me:30347: error: unrecognized option: $1 Try \`$0 --help' for more information." >&5 echo "$as_me: error: unrecognized option: $1 Try \`$0 --help' for more information." >&2;} @@ -30470,7 +30478,7 @@ do "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; "default" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;; "include/ncurses_cfg.h" ) CONFIG_HEADERS="$CONFIG_HEADERS include/ncurses_cfg.h:include/ncurses_cfg.hin" ;; - *) { { echo "$as_me:30473: error: invalid argument: $ac_config_target" >&5 + *) { { echo "$as_me:30481: error: invalid argument: $ac_config_target" >&5 echo "$as_me: error: invalid argument: $ac_config_target" >&2;} { (exit 1); exit 1; }; };; esac @@ -30870,6 +30878,7 @@ s,@UNALTERED_SYMS@,$UNALTERED_SYMS,;t t s,@ADAGEN_LDFLAGS@,$ADAGEN_LDFLAGS,;t t s,@CHECK_BUILD@,$CHECK_BUILD,;t t s,@PRIVATE_LIBS@,$PRIVATE_LIBS,;t t +s,@NO_SHARED@,$NO_SHARED,;t t s,@LD_SEARCHPATH@,$LD_SEARCHPATH,;t t CEOF @@ -31003,7 +31012,7 @@ done; } esac if test x"$ac_file" != x-; then - { echo "$as_me:31006: creating $ac_file" >&5 + { echo "$as_me:31015: creating $ac_file" >&5 echo "$as_me: creating $ac_file" >&6;} rm -f "$ac_file" fi @@ -31021,7 +31030,7 @@ echo "$as_me: creating $ac_file" >&6;} -) echo "$tmp"/stdin ;; [\\/$]*) # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:31024: error: cannot find input file: $f" >&5 + test -f "$f" || { { echo "$as_me:31033: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } echo "$f";; @@ -31034,7 +31043,7 @@ echo "$as_me: error: cannot find input file: $f" >&2;} echo "$srcdir/$f" else # /dev/null tree - { { echo "$as_me:31037: error: cannot find input file: $f" >&5 + { { echo "$as_me:31046: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } fi;; @@ -31050,7 +31059,7 @@ cat >>"$CONFIG_STATUS" <<\EOF if test -n "$ac_seen"; then ac_used=`grep '@datarootdir@' "$ac_item"` if test -z "$ac_used"; then - { echo "$as_me:31053: WARNING: datarootdir was used implicitly but not set: + { echo "$as_me:31062: WARNING: datarootdir was used implicitly but not set: $ac_seen" >&5 echo "$as_me: WARNING: datarootdir was used implicitly but not set: $ac_seen" >&2;} @@ -31059,7 +31068,7 @@ $ac_seen" >&2;} fi ac_seen=`grep '${datarootdir}' "$ac_item"` if test -n "$ac_seen"; then - { echo "$as_me:31062: WARNING: datarootdir was used explicitly but not set: + { echo "$as_me:31071: WARNING: datarootdir was used explicitly but not set: $ac_seen" >&5 echo "$as_me: WARNING: datarootdir was used explicitly but not set: $ac_seen" >&2;} @@ -31104,7 +31113,7 @@ cat >>"$CONFIG_STATUS" <<\EOF ac_init=`$EGREP '[ ]*'$ac_name'[ ]*=' "$ac_file"` if test -z "$ac_init"; then ac_seen=`echo "$ac_seen" |sed -e 's,^,'"$ac_file"':,'` - { echo "$as_me:31107: WARNING: Variable $ac_name is used but was not set: + { echo "$as_me:31116: WARNING: Variable $ac_name is used but was not set: $ac_seen" >&5 echo "$as_me: WARNING: Variable $ac_name is used but was not set: $ac_seen" >&2;} @@ -31115,7 +31124,7 @@ $ac_seen" >&2;} $EGREP -n '@[A-Z_][A-Z_0-9]+@' "$ac_file" >>"$tmp"/out if test -s "$tmp"/out; then ac_seen=`sed -e 's,^,'"$ac_file"':,' < "$tmp"/out` - { echo "$as_me:31118: WARNING: Some variables may not be substituted: + { echo "$as_me:31127: WARNING: Some variables may not be substituted: $ac_seen" >&5 echo "$as_me: WARNING: Some variables may not be substituted: $ac_seen" >&2;} @@ -31164,7 +31173,7 @@ for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue * ) ac_file_in=$ac_file.in ;; esac - test x"$ac_file" != x- && { echo "$as_me:31167: creating $ac_file" >&5 + test x"$ac_file" != x- && { echo "$as_me:31176: creating $ac_file" >&5 echo "$as_me: creating $ac_file" >&6;} # First look for the input files in the build tree, otherwise in the @@ -31175,7 +31184,7 @@ echo "$as_me: creating $ac_file" >&6;} -) echo "$tmp"/stdin ;; [\\/$]*) # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:31178: error: cannot find input file: $f" >&5 + test -f "$f" || { { echo "$as_me:31187: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } echo $f;; @@ -31188,7 +31197,7 @@ echo "$as_me: error: cannot find input file: $f" >&2;} echo "$srcdir/$f" else # /dev/null tree - { { echo "$as_me:31191: error: cannot find input file: $f" >&5 + { { echo "$as_me:31200: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } fi;; @@ -31246,7 +31255,7 @@ cat >>"$CONFIG_STATUS" <<\EOF rm -f "$tmp"/in if test x"$ac_file" != x-; then if cmp -s "$ac_file" "$tmp/config.h" 2>/dev/null; then - { echo "$as_me:31249: $ac_file is unchanged" >&5 + { echo "$as_me:31258: $ac_file is unchanged" >&5 echo "$as_me: $ac_file is unchanged" >&6;} else ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ @@ -31633,7 +31642,7 @@ cf_ITEM=`echo "$cf_item" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQ (cygdll|msysdll|mingw|msvcdll) test "x$with_shared_cxx" = xno && test -n "$verbose" && echo " overriding CXX_MODEL to SHARED" 1>&6 -echo "${as_me:-configure}:31636: testing overriding CXX_MODEL to SHARED ..." 1>&5 +echo "${as_me:-configure}:31645: testing overriding CXX_MODEL to SHARED ..." 1>&5 with_shared_cxx=yes ;; diff --git a/configure.in b/configure.in index ad79dc9a..3188a651 100644 --- a/configure.in +++ b/configure.in @@ -1,5 +1,5 @@ dnl*************************************************************************** -dnl Copyright 2018-2024,2025 Thomas E. Dickey * +dnl Copyright 2018-2025,2026 Thomas E. Dickey * dnl Copyright 1998-2017,2018 Free Software Foundation, Inc. * dnl * dnl Permission is hereby granted, free of charge, to any person obtaining a * @@ -29,7 +29,7 @@ dnl*************************************************************************** dnl dnl Author: Thomas E. Dickey 1995-on dnl -dnl $Id: configure.in,v 1.824 2025/12/27 00:12:13 tom Exp $ +dnl $Id: configure.in,v 1.826 2026/01/14 08:51:49 tom Exp $ dnl Process this file with autoconf to produce a configure script. dnl dnl For additional information, see @@ -38,7 +38,7 @@ dnl https://invisible-island.net/autoconf/my-autoconf.html dnl dnl --------------------------------------------------------------------------- AC_PREREQ(2.52.20210101) -AC_REVISION($Revision: 1.824 $) +AC_REVISION($Revision: 1.826 $) AC_INIT AC_CONFIG_SRCDIR([ncurses/base/lib_initscr.c]) AC_CONFIG_HEADERS([include/ncurses_cfg.h:include/ncurses_cfg.hin]) @@ -2560,6 +2560,15 @@ AC_SUBST(ADAGEN_LDFLAGS) AC_SUBST(CHECK_BUILD) AC_SUBST(PRIVATE_LIBS) +# provide for commenting-out makefile rules building/using shared libraries +if test "$DFT_LWR_MODEL" = normal +then + NO_SHARED= +else + NO_SHARED="#" +fi +AC_SUBST(NO_SHARED) + # This is used for the *-config script and *.pc data files. CF_LD_SEARCHPATH diff --git a/dist.mk b/dist.mk index 4fef5048..5aa4b79d 100644 --- a/dist.mk +++ b/dist.mk @@ -26,7 +26,7 @@ # use or other dealings in this Software without prior written # # authorization. # ############################################################################## -# $Id: dist.mk,v 1.1712 2026/01/04 00:59:54 tom Exp $ +# $Id: dist.mk,v 1.1714 2026/01/17 11:18:11 tom Exp $ # Makefile for creating ncurses distributions. # # This only needs to be used directly as a makefile by developers, but @@ -38,7 +38,7 @@ SHELL = /bin/sh # These define the major/minor/patch versions of ncurses. NCURSES_MAJOR = 6 NCURSES_MINOR = 6 -NCURSES_PATCH = 20260103 +NCURSES_PATCH = 20260117 # We don't append the patch to the version, since this only applies to releases VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR) diff --git a/doc/html/man/ncurses.3x.html b/doc/html/man/ncurses.3x.html index b27c8380..70e051bb 100644 --- a/doc/html/man/ncurses.3x.html +++ b/doc/html/man/ncurses.3x.html @@ -59,7 +59,7 @@ displays with output optimized to minimize screen updates. ncurses replaces the curses libraries from System V Release 4 Unix ("SVr4") and 4.4BSD Unix, the development of which ceased in the 1990s. This - document describes ncurses version 6.6 (patch 20251230). + document describes ncurses version 6.6 (patch 20260117). ncurses permits control of the terminal screen's contents; abstraction and subdivision thereof with windows and pads; acquisition of keyboard diff --git a/doc/html/man/terminfo.5.html b/doc/html/man/terminfo.5.html index 0fe01942..1a26af00 100644 --- a/doc/html/man/terminfo.5.html +++ b/doc/html/man/terminfo.5.html @@ -72,7 +72,7 @@ have, by specifying how to perform screen operations, and by specifying padding requirements and initialization sequences. - This document describes ncurses version 6.6 (patch 20251230). + This document describes ncurses version 6.6 (patch 20260117).

terminfo Entry Syntax

diff --git a/doc/html/man/user_caps.5.html b/doc/html/man/user_caps.5.html
index 5b00603f..e7edd923 100644
--- a/doc/html/man/user_caps.5.html
+++ b/doc/html/man/user_caps.5.html
@@ -1,7 +1,7 @@
 
 
 
 
 
 
-user_caps 5 2025-11-11 ncurses 6.6 File formats
+user_caps 5 2026-01-11 ncurses 6.6 File formats
 
 
 
 
-

user_caps 5 2025-11-11 ncurses 6.6 File formats

+

user_caps 5 2026-01-11 ncurses 6.6 File formats

 user_caps(5)                     File formats                     user_caps(5)
 
@@ -317,6 +317,14 @@
                           %p2%d;
                           %?%p4%tM%em%;,
 
+          Some of these extended capabilities have  parameters  which  ncurses
+          may  use  in  the tparm, tiparm, or tiparm_s functions.  The ncurses
+          library  checks  to  ensure  that   both   standard   and   extended
+          capabilities  have  the expected number and type of parameters.  The
+          terminfo compiler tic has similar checks  for  these  extensions  as
+          well  as  for  those which are used by other programs, which include
+          mintty, screen, tack, tmux, vim, and xterm.
+
 
 

Extended Key Definitions

        Several terminals provide the ability  to  send  distinct  strings  for
@@ -406,7 +414,7 @@
        XTerm Control Sequences provides further information  on  the  xterm(1)
        features that are used in these extended capabilities.
 
-ncurses 6.6                       2025-11-11                      user_caps(5)
+ncurses 6.6                       2026-01-11                      user_caps(5)