mirror of
https://github.com/ThomasDickey/ncurses-snapshots.git
synced 2026-01-26 11:04:35 +00:00
Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
607c49f34c | ||
|
|
f061503fbd | ||
|
|
3c3541a3f5 | ||
|
|
da68e51760 |
40
Ada95/aclocal.m4
vendored
40
Ada95/aclocal.m4
vendored
@ -1,5 +1,5 @@
|
||||
dnl***************************************************************************
|
||||
dnl Copyright 2018-2024,2025 Thomas E. Dickey *
|
||||
dnl Copyright 2018-2025,2026 Thomas E. Dickey *
|
||||
dnl Copyright 2010-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
|
||||
dnl
|
||||
dnl $Id: aclocal.m4,v 1.241 2025/12/25 23:45:32 tom Exp $
|
||||
dnl $Id: aclocal.m4,v 1.243 2026/01/18 16:36:44 tom Exp $
|
||||
dnl Macros used in NCURSES Ada95 auto-configuration script.
|
||||
dnl
|
||||
dnl These macros are maintained separately from NCURSES. The copyright on
|
||||
@ -477,7 +477,7 @@ fi
|
||||
AC_SUBST(ARFLAGS)
|
||||
])
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_BUILD_CC version: 14 updated: 2024/12/14 11:58:01
|
||||
dnl CF_BUILD_CC version: 15 updated: 2026/01/18 11:36:44
|
||||
dnl -----------
|
||||
dnl If we're cross-compiling, allow the user to override the tools and their
|
||||
dnl options. The configure script is oriented toward identifying the host
|
||||
@ -552,12 +552,12 @@ if test "$cross_compiling" = yes ; then
|
||||
test "$cf_build_cppflags" = "#" && cf_build_cppflags=
|
||||
ac_link='$BUILD_CC -o "conftest$ac_exeext" $BUILD_CFLAGS $cf_build_cppflags $BUILD_LDFLAGS "conftest.$ac_ext" $BUILD_LIBS >&AS_MESSAGE_LOG_FD'
|
||||
|
||||
AC_TRY_RUN([#include <stdio.h>
|
||||
int main(int argc, char *argv[])
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([#include <stdio.h>
|
||||
int main(int argc, char *argv[[]])
|
||||
{
|
||||
${cf_cv_main_return:-return}(argc < 0 || argv == (void*)0 || argv[0] == (void*)0);
|
||||
${cf_cv_main_return:-return}(argc < 0 || argv == (void*)0 || argv[[0]] == (void*)0);
|
||||
}
|
||||
],
|
||||
])],
|
||||
cf_ok_build_cc=yes,
|
||||
cf_ok_build_cc=no,
|
||||
cf_ok_build_cc=unknown)
|
||||
@ -2793,7 +2793,7 @@ AC_DEFUN([CF_LIB_TYPE],
|
||||
test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}"
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_LINK_DATAONLY version: 17 updated: 2025/12/24 12:27:29
|
||||
dnl CF_LINK_DATAONLY version: 18 updated: 2026/01/24 14:15:07
|
||||
dnl ----------------
|
||||
dnl Some systems have a non-ANSI linker that doesn't pull in modules that have
|
||||
dnl only data (i.e., no functions), for example NeXT. On those systems we'll
|
||||
@ -2839,13 +2839,13 @@ EOF
|
||||
( eval $RANLIB conftest.a ) 2>&AS_MESSAGE_LOG_FD >/dev/null
|
||||
cf_saveLIBS="$LIBS"
|
||||
LIBS="conftest.a $LIBS"
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
extern int testfunc(void);
|
||||
int main(void)
|
||||
{
|
||||
${cf_cv_main_return:-return} (!testfunc());
|
||||
}
|
||||
],
|
||||
])],
|
||||
[cf_cv_link_dataonly=yes],
|
||||
[cf_cv_link_dataonly=no],
|
||||
[cf_cv_link_dataonly=unknown])
|
||||
@ -2861,7 +2861,7 @@ AC_SUBST(BROKEN_LINKER)
|
||||
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_MAKE_PHONY version: 4 updated: 2025/12/24 12:27:29
|
||||
dnl CF_MAKE_PHONY version: 5 updated: 2025/12/27 13:03:23
|
||||
dnl -------------
|
||||
dnl Check if the make-program handles a ".PHONY" target, e.g,. a target which
|
||||
dnl acts as a placeholder.
|
||||
@ -2887,7 +2887,7 @@ dnl
|
||||
dnl + Version 3.8 of the dmake program in January 1992 also implemented this
|
||||
dnl GNU make extension, but is less well known than the BSD make.
|
||||
AC_DEFUN([CF_MAKE_PHONY],[
|
||||
AC_CACHE_CHECK(for \".PHONY\" make-support, cf_cv_make_PHONY,[
|
||||
AC_CACHE_CHECK(for ".PHONY" make-support, cf_cv_make_PHONY,[
|
||||
rm -rf conftest*
|
||||
(
|
||||
mkdir conftest || exit 1
|
||||
@ -3208,7 +3208,7 @@ printf("old\\n");
|
||||
,[$1=no])
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_NCURSES_CONFIG version: 30 updated: 2025/12/22 04:16:14
|
||||
dnl CF_NCURSES_CONFIG version: 31 updated: 2026/01/18 10:40:15
|
||||
dnl -----------------
|
||||
dnl Tie together the configure-script macros for ncurses, preferring these in
|
||||
dnl order:
|
||||
@ -3248,9 +3248,9 @@ if test "x${PKG_CONFIG:=none}" != xnone; then
|
||||
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <${cf_cv_ncurses_header:-curses.h}>],
|
||||
[initscr(); mousemask(0,0); tigetstr((char *)0);])],
|
||||
[AC_TRY_RUN([#include <${cf_cv_ncurses_header:-curses.h}>
|
||||
[AC_RUN_IFELSE([AC_LANG_SOURCE([#include <${cf_cv_ncurses_header:-curses.h}>
|
||||
int main(void)
|
||||
{ const char *xx = curses_version(); return (xx == 0); }],
|
||||
{ const char *xx = curses_version(); return (xx == 0); }])],
|
||||
[cf_test_ncuconfig=yes],
|
||||
[cf_test_ncuconfig=no],
|
||||
[cf_test_ncuconfig=maybe])],
|
||||
@ -3275,9 +3275,9 @@ if test "x${PKG_CONFIG:=none}" != xnone; then
|
||||
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <${cf_cv_ncurses_header:-curses.h}>],
|
||||
[initscr(); mousemask(0,0); tigetstr((char *)0);])],
|
||||
[AC_TRY_RUN([#include <${cf_cv_ncurses_header:-curses.h}>
|
||||
[AC_RUN_IFELSE([AC_LANG_SOURCE([#include <${cf_cv_ncurses_header:-curses.h}>
|
||||
int main(void)
|
||||
{ const char *xx = curses_version(); return (xx == 0); }],
|
||||
{ const char *xx = curses_version(); return (xx == 0); }])],
|
||||
[cf_have_ncuconfig=yes],
|
||||
[cf_have_ncuconfig=no],
|
||||
[cf_have_ncuconfig=maybe])],
|
||||
@ -3524,7 +3524,7 @@ CF_UPPER(cf_nculib_ROOT,HAVE_LIB$cf_nculib_root)
|
||||
AC_DEFINE_UNQUOTED($cf_nculib_ROOT)
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_NCURSES_VERSION version: 19 updated: 2025/12/22 04:16:14
|
||||
dnl CF_NCURSES_VERSION version: 20 updated: 2026/01/18 10:40:15
|
||||
dnl ------------------
|
||||
dnl Check for the version of ncurses, to aid in reporting bugs, etc.
|
||||
dnl Call CF_CURSES_CPPFLAGS first, or CF_NCURSES_CPPFLAGS. We don't use
|
||||
@ -3536,7 +3536,7 @@ AC_CACHE_CHECK(for ncurses version, cf_cv_ncurses_version,[
|
||||
cf_cv_ncurses_version=no
|
||||
cf_tempfile=out$$
|
||||
rm -f "$cf_tempfile"
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
$ac_includes_default
|
||||
|
||||
#include <${cf_cv_ncurses_header:-curses.h}>
|
||||
@ -3558,7 +3558,7 @@ int main(void)
|
||||
# endif
|
||||
#endif
|
||||
${cf_cv_main_return:-return}(0);
|
||||
}],[
|
||||
}])],[
|
||||
cf_cv_ncurses_version=`cat $cf_tempfile`],,[
|
||||
|
||||
# This will not work if the preprocessor splits the line after the
|
||||
|
||||
14
Ada95/configure
vendored
14
Ada95/configure
vendored
@ -1,9 +1,9 @@
|
||||
#! /bin/sh
|
||||
# From configure.in Revision: 1.97 .
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by Autoconf 2.52.20250126.
|
||||
# Generated by Autoconf 2.52.20260118.
|
||||
#
|
||||
# Copyright 2003-2022,2023 Thomas E. Dickey
|
||||
# Copyright 2003-2025,2026 Thomas E. Dickey
|
||||
# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
|
||||
# Free Software Foundation, Inc.
|
||||
# This configure script is free software; the Free Software Foundation
|
||||
@ -815,7 +815,7 @@ test -n "$ac_init_help" && exit 0
|
||||
if "$ac_init_version"; then
|
||||
cat <<\EOF
|
||||
|
||||
Copyright 2003-2022,2023 Thomas E. Dickey
|
||||
Copyright 2003-2025,2026 Thomas E. Dickey
|
||||
Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
|
||||
Free Software Foundation, Inc.
|
||||
This configure script is free software; the Free Software Foundation
|
||||
@ -829,7 +829,7 @@ This file contains any messages produced by compilers while
|
||||
running configure, to aid debugging if configure makes a mistake.
|
||||
|
||||
It was created by $as_me, which was
|
||||
generated by GNU Autoconf 2.52.20250126. Invocation command line was
|
||||
generated by GNU Autoconf 2.52.20260118. Invocation command line was
|
||||
|
||||
$ $0 $@
|
||||
|
||||
@ -19919,10 +19919,10 @@ EOF
|
||||
cat >>"$CONFIG_STATUS" <<EOF
|
||||
ac_cs_version="\\
|
||||
config.status
|
||||
configured by $0, generated by GNU Autoconf 2.52.20250126,
|
||||
configured by $0, generated by GNU Autoconf 2.52.20260118,
|
||||
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
|
||||
|
||||
Copyright 2003-2022,2023 Thomas E. Dickey
|
||||
Copyright 2003-2023,2025 Thomas E. Dickey
|
||||
Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
|
||||
Free Software Foundation, Inc.
|
||||
This config.status script is free software; the Free Software Foundation
|
||||
@ -20002,7 +20002,7 @@ cat >&5 << _ACEOF
|
||||
## Running config.status. ##
|
||||
## ----------------------- ##
|
||||
|
||||
This file was extended by $as_me 2.52.20250126, executed with
|
||||
This file was extended by $as_me 2.52.20260118, executed with
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
CONFIG_HEADERS = $CONFIG_HEADERS
|
||||
CONFIG_LINKS = $CONFIG_LINKS
|
||||
|
||||
@ -4,7 +4,7 @@ Upstream-Contact: Thomas E. Dickey <dickey@invisible-island.net>
|
||||
Source: https://invisible-island.net/ncurses/Ada95.html
|
||||
|
||||
Files: *
|
||||
Copyright: 2017-2024,2025 by Thomas E. Dickey
|
||||
Copyright: 2017-2025,2026 by Thomas E. Dickey
|
||||
Copyright: 1998-2016,2017 Free Software Foundation, Inc.
|
||||
License: X11 License Distribution Modification Variant
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
|
||||
4
COPYING
4
COPYING
@ -1,4 +1,4 @@
|
||||
Copyright 2018-2024,2025 Thomas E. Dickey
|
||||
Copyright 2018-2025,2026 Thomas E. Dickey
|
||||
Copyright 1998-2017,2018 Free Software Foundation, Inc.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
@ -26,4 +26,4 @@ sale, use or other dealings in this Software without prior written
|
||||
authorization.
|
||||
|
||||
-- vile:txtmode fc=72
|
||||
-- $Id: COPYING,v 1.14 2025/01/04 10:53:46 tom Exp $
|
||||
-- $Id: COPYING,v 1.15 2026/01/04 00:58:57 tom Exp $
|
||||
|
||||
51
NEWS
51
NEWS
@ -1,5 +1,5 @@
|
||||
-------------------------------------------------------------------------------
|
||||
-- Copyright 2018-2024,2025 Thomas E. Dickey --
|
||||
-- Copyright 2018-2025,2026 Thomas E. Dickey --
|
||||
-- Copyright 1998-2017,2018 Free Software Foundation, Inc. --
|
||||
-- --
|
||||
-- Permission is hereby granted, free of charge, to any person obtaining a --
|
||||
@ -26,7 +26,7 @@
|
||||
-- sale, use or other dealings in this Software without prior written --
|
||||
-- authorization. --
|
||||
-------------------------------------------------------------------------------
|
||||
-- $Id: NEWS,v 1.4390 2025/12/30 20:31:07 tom Exp $
|
||||
-- $Id: NEWS,v 1.4414 2026/01/25 01:28:03 tom Exp $
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
This is a log of changes that ncurses has gone through since Zeyd started
|
||||
@ -46,6 +46,53 @@ 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.
|
||||
|
||||
20260124
|
||||
+ add xterm+indirect16, vt100+keypad+emul, putty-direct,
|
||||
putty-direct16, wezterm-direct, wezterm-direct16
|
||||
(patch by Jakub Horky)
|
||||
+ add Smol/Rmol to ms-terminal, konsole, iTerm2 (report by Jared
|
||||
Finder)
|
||||
+ add ecma+overline -TD
|
||||
+ update configure macros
|
||||
|
||||
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
|
||||
by Jakub Horky)
|
||||
+ update ncurses/wcwidth.c, for MinGW ports, from xterm.
|
||||
|
||||
20251231
|
||||
+ amend fix for Windows-style pathnames to eliminate "./" in comment
|
||||
generated by infocmp where not needed (report by Sven Joachim).
|
||||
+ fix a few gcc 15.2 warnings for C23
|
||||
+ actually generate doc/html/announce.html (report by Branden Robinson)
|
||||
|
||||
20251230 6.6 release for upload to ftp.gnu.org
|
||||
+ update announcement
|
||||
+ corrected an ifdef needed for mouse support in MinGW/Windows
|
||||
|
||||
152
aclocal.m4
vendored
152
aclocal.m4
vendored
@ -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: aclocal.m4,v 1.1148 2025/12/25 23:44:16 tom Exp $
|
||||
dnl $Id: aclocal.m4,v 1.1151 2026/01/24 19:16:57 tom Exp $
|
||||
dnl Macros used in NCURSES auto-configuration script.
|
||||
dnl
|
||||
dnl These macros are maintained separately from NCURSES. The copyright on
|
||||
@ -620,7 +620,7 @@ $ac_includes_default
|
||||
[ifelse($1,,cf_cv_builtin_bool,[$1])=no])])
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_BOOL_SIZE version: 22 updated: 2025/02/22 20:49:45
|
||||
dnl CF_BOOL_SIZE version: 23 updated: 2026/01/24 14:15:07
|
||||
dnl ------------
|
||||
dnl Test for the size of 'bool' in the configured C++ compiler (e.g., a type).
|
||||
dnl Don't bother looking for bool.h, since it has been deprecated.
|
||||
@ -654,7 +654,7 @@ $ac_includes_default
|
||||
|
||||
AC_CACHE_CHECK(for type of bool, cf_cv_type_of_bool,[
|
||||
rm -f cf_test.out
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
$ac_includes_default
|
||||
|
||||
#if defined(__cplusplus)
|
||||
@ -690,7 +690,7 @@ int main(void)
|
||||
}
|
||||
${cf_cv_main_return:-return}(0);
|
||||
}
|
||||
],
|
||||
])],
|
||||
[cf_cv_type_of_bool=`cat cf_test.out`
|
||||
if test -z "$cf_cv_type_of_bool"; then
|
||||
cf_cv_type_of_bool=unknown
|
||||
@ -717,7 +717,7 @@ if test "$cf_cv_type_of_bool" = unknown ; then
|
||||
fi
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_BUILD_CC version: 14 updated: 2024/12/14 11:58:01
|
||||
dnl CF_BUILD_CC version: 15 updated: 2026/01/18 11:36:44
|
||||
dnl -----------
|
||||
dnl If we're cross-compiling, allow the user to override the tools and their
|
||||
dnl options. The configure script is oriented toward identifying the host
|
||||
@ -792,12 +792,12 @@ if test "$cross_compiling" = yes ; then
|
||||
test "$cf_build_cppflags" = "#" && cf_build_cppflags=
|
||||
ac_link='$BUILD_CC -o "conftest$ac_exeext" $BUILD_CFLAGS $cf_build_cppflags $BUILD_LDFLAGS "conftest.$ac_ext" $BUILD_LIBS >&AS_MESSAGE_LOG_FD'
|
||||
|
||||
AC_TRY_RUN([#include <stdio.h>
|
||||
int main(int argc, char *argv[])
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([#include <stdio.h>
|
||||
int main(int argc, char *argv[[]])
|
||||
{
|
||||
${cf_cv_main_return:-return}(argc < 0 || argv == (void*)0 || argv[0] == (void*)0);
|
||||
${cf_cv_main_return:-return}(argc < 0 || argv == (void*)0 || argv[[0]] == (void*)0);
|
||||
}
|
||||
],
|
||||
])],
|
||||
cf_ok_build_cc=yes,
|
||||
cf_ok_build_cc=no,
|
||||
cf_ok_build_cc=unknown)
|
||||
@ -1193,7 +1193,7 @@ __attribute__ ((visibility("default"))) int somefunc() {return 42;}
|
||||
])
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_CHECK_GETENV version: 5 updated: 2024/12/14 16:09:34
|
||||
dnl CF_CHECK_GETENV version: 6 updated: 2026/01/24 14:15:07
|
||||
dnl ---------------
|
||||
dnl Check if repeated getenv calls return the same pointer, e.g., it does not
|
||||
dnl discard the previous pointer when returning a new one.
|
||||
@ -1203,7 +1203,7 @@ AC_REQUIRE([CF_CHECK_ENVIRON])
|
||||
AC_CHECK_FUNC( getenv, ,, AC_MSG_ERROR(getenv not found) )
|
||||
AC_CHECK_FUNCS( putenv setenv strdup )
|
||||
AC_CACHE_CHECK(if getenv returns consistent values,cf_cv_consistent_getenv,[
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
$ac_includes_default
|
||||
|
||||
#if defined(HAVE_ENVIRON) && defined(DECL_ENVIRON) && !defined(environ)
|
||||
@ -1221,7 +1221,7 @@ static void set_value(const char *name, const char *value)
|
||||
#if defined(HAVE_SETENV)
|
||||
setenv(name, value, 1);
|
||||
#elif defined(HAVE_PUTENV)
|
||||
char buffer[1024];
|
||||
char buffer[[1024]];
|
||||
sprintf(buffer, "%s=%s", name, value);
|
||||
putenv(str_alloc(buffer));
|
||||
#else
|
||||
@ -1236,26 +1236,26 @@ int main(void)
|
||||
char **myvalues;
|
||||
char **mypointer;
|
||||
char *equals;
|
||||
for (numenv = 0; environ[numenv]; ++numenv) ;
|
||||
for (numenv = 0; environ[[numenv]]; ++numenv) ;
|
||||
limit = numenv + 10;
|
||||
mynames = (char **) calloc(limit + 1, sizeof(char *));
|
||||
myvalues = (char **) calloc(limit + 1, sizeof(char *));
|
||||
mypointer = (char **) calloc(limit + 1, sizeof(char *));
|
||||
#if defined(HAVE_ENVIRON)
|
||||
for (j = 0; environ[j]; ++j) {
|
||||
mynames[j] = str_alloc(environ[j]);
|
||||
equals = strchr(mynames[j], '=');
|
||||
for (j = 0; environ[[j]]; ++j) {
|
||||
mynames[[j]] = str_alloc(environ[[j]]);
|
||||
equals = strchr(mynames[[j]], '=');
|
||||
if (equals != NULL) {
|
||||
*equals++ = '\\0';
|
||||
myvalues[j] = str_alloc(equals);
|
||||
myvalues[[j]] = str_alloc(equals);
|
||||
} else {
|
||||
myvalues[j] = str_alloc("");
|
||||
myvalues[[j]] = str_alloc("");
|
||||
}
|
||||
}
|
||||
#endif
|
||||
for (j = numenv; j < limit; ++j) {
|
||||
char name[80];
|
||||
char value[80];
|
||||
char name[[80]];
|
||||
char value[[80]];
|
||||
size_t found;
|
||||
size_t k = 0;
|
||||
do {
|
||||
@ -1263,38 +1263,38 @@ int main(void)
|
||||
found = 0;
|
||||
sprintf(name, "TERM%lu", (unsigned long) k);
|
||||
for (jk = 0; jk < j; ++jk) {
|
||||
if (!strcmp(name, mynames[jk])) {
|
||||
if (!strcmp(name, mynames[[jk]])) {
|
||||
found = 1;
|
||||
++k;
|
||||
break;
|
||||
}
|
||||
}
|
||||
} while (found);
|
||||
sprintf(value, "%lu:%p", (unsigned long) k, (void*)&mynames[j]);
|
||||
sprintf(value, "%lu:%p", (unsigned long) k, (void*)&mynames[[j]]);
|
||||
set_value(name, value);
|
||||
mynames[j] = str_alloc(name);
|
||||
myvalues[j] = str_alloc(value);
|
||||
mynames[[j]] = str_alloc(name);
|
||||
myvalues[[j]] = str_alloc(value);
|
||||
}
|
||||
for (pass = 0; pass < 3; ++pass) {
|
||||
for (j = 0; j < limit; ++j) {
|
||||
char *value = getenv(mynames[j]);
|
||||
char *value = getenv(mynames[[j]]);
|
||||
if (pass) {
|
||||
if (value == 0) {
|
||||
fprintf(stderr, "getenv returned null for %s\\n", mynames[j]);
|
||||
fprintf(stderr, "getenv returned null for %s\\n", mynames[[j]]);
|
||||
${cf_cv_main_return:-return}(1);
|
||||
} else if (value != mypointer[j]) {
|
||||
fprintf(stderr, "getenv returned different pointer for %s\\n", mynames[j]);
|
||||
} else if (value != mypointer[[j]]) {
|
||||
fprintf(stderr, "getenv returned different pointer for %s\\n", mynames[[j]]);
|
||||
${cf_cv_main_return:-return}(1);
|
||||
} else if (strcmp(value, myvalues[j])) {
|
||||
fprintf(stderr, "getenv returned different value for %s\\n", mynames[j]);
|
||||
} else if (strcmp(value, myvalues[[j]])) {
|
||||
fprintf(stderr, "getenv returned different value for %s\\n", mynames[[j]]);
|
||||
${cf_cv_main_return:-return}(1);
|
||||
}
|
||||
} else {
|
||||
size_t k;
|
||||
mypointer[j] = value;
|
||||
mypointer[[j]] = value;
|
||||
for (k = 0; k < j; ++k) {
|
||||
if (mypointer[j] == mypointer[k]) {
|
||||
fprintf(stderr, "getenv returned same pointer for %s and %s\\n", mynames[j], mynames[k]);
|
||||
if (mypointer[[j]] == mypointer[[k]]) {
|
||||
fprintf(stderr, "getenv returned same pointer for %s and %s\\n", mynames[[j]], mynames[[k]]);
|
||||
${cf_cv_main_return:-return}(1);
|
||||
}
|
||||
}
|
||||
@ -1303,7 +1303,7 @@ int main(void)
|
||||
}
|
||||
${cf_cv_main_return:-return}(0);
|
||||
}
|
||||
],
|
||||
])],
|
||||
[cf_cv_consistent_getenv=yes],
|
||||
[cf_cv_consistent_getenv=no],
|
||||
[cf_cv_consistent_getenv=unknown])
|
||||
@ -1568,7 +1568,7 @@ then
|
||||
fi
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_CHECK_WCWIDTH_GRAPHICS version: 5 updated: 2024/12/14 16:09:34
|
||||
dnl CF_CHECK_WCWIDTH_GRAPHICS version: 6 updated: 2026/01/24 14:15:07
|
||||
dnl -------------------------
|
||||
dnl Most "modern" terminal emulators are based to some degree on VT100, and
|
||||
dnl should support line-drawing. Even with Unicode. There is a problem.
|
||||
@ -1665,7 +1665,7 @@ cat >conftest.in <<CF_EOF
|
||||
0x2551 vertical line
|
||||
0x256c large plus or crossover
|
||||
CF_EOF
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
$ac_includes_default
|
||||
|
||||
#include <locale.h>
|
||||
@ -1678,8 +1678,8 @@ main(void)
|
||||
{
|
||||
FILE *fp;
|
||||
unsigned value;
|
||||
char buffer[MY_LEN + 1];
|
||||
char notes[MY_LEN + 1];
|
||||
char buffer[[MY_LEN + 1]];
|
||||
char notes[[MY_LEN + 1]];
|
||||
int totals = 0;
|
||||
int passed = 0;
|
||||
|
||||
@ -1705,7 +1705,7 @@ main(void)
|
||||
fprintf(stderr, "%d/%d passed wcwidth/graphics check\\n", passed, totals);
|
||||
return (totals == passed) ? 0 : 1;
|
||||
}
|
||||
],
|
||||
])],
|
||||
[cf_cv_wcwidth_graphics=yes],
|
||||
[cf_cv_wcwidth_graphics=no],
|
||||
[cf_cv_wcwidth_graphics=unknown])
|
||||
@ -1841,7 +1841,7 @@ esac
|
||||
])
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_CPP_OVERRIDE version: 2 updated: 2024/11/09 18:07:29
|
||||
dnl CF_CPP_OVERRIDE version: 3 updated: 2026/01/24 14:15:07
|
||||
dnl ---------------
|
||||
dnl Check if the C++ compiler accepts the override keyword. This is a C++-11
|
||||
dnl feature.
|
||||
@ -1851,7 +1851,7 @@ if test -n "$CXX"; then
|
||||
AC_CACHE_CHECK(if $CXX accepts override keyword,cf_cv_cpp_override,[
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
|
||||
class base
|
||||
{
|
||||
@ -1867,7 +1867,7 @@ public:
|
||||
};
|
||||
|
||||
int main(void) { }
|
||||
],
|
||||
])],
|
||||
[cf_cv_cpp_override=yes],
|
||||
[cf_cv_cpp_override=no],
|
||||
[cf_cv_cpp_override=unknown])
|
||||
@ -1877,7 +1877,7 @@ fi
|
||||
test "$cf_cv_cpp_override" = yes && AC_DEFINE(CPP_HAS_OVERRIDE,1,[Define to 1 if C++ has override keyword])
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_CPP_PARAM_INIT version: 7 updated: 2017/01/21 11:06:25
|
||||
dnl CF_CPP_PARAM_INIT version: 8 updated: 2026/01/24 14:15:07
|
||||
dnl -----------------
|
||||
dnl Check if the C++ compiler accepts duplicate parameter initialization. This
|
||||
dnl is a late feature for the standard and is not in some recent compilers
|
||||
@ -1888,7 +1888,7 @@ if test -n "$CXX"; then
|
||||
AC_CACHE_CHECK(if $CXX accepts parameter initialization,cf_cv_cpp_param_init,[
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
class TEST {
|
||||
private:
|
||||
int value;
|
||||
@ -1902,7 +1902,7 @@ TEST::TEST(int x = 1) // some compilers do not like second initializer
|
||||
value = x;
|
||||
}
|
||||
int main(void) { }
|
||||
],
|
||||
])],
|
||||
[cf_cv_cpp_param_init=yes],
|
||||
[cf_cv_cpp_param_init=no],
|
||||
[cf_cv_cpp_param_init=unknown])
|
||||
@ -2627,14 +2627,14 @@ fi
|
||||
AC_SUBST(EXTRA_CFLAGS)
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_FOPEN_BIN_R version: 4 updated: 2024/12/14 16:09:34
|
||||
dnl CF_FOPEN_BIN_R version: 5 updated: 2026/01/24 14:15:07
|
||||
dnl --------------
|
||||
dnl Check if fopen works when the "b" (binary) flag is added to the mode
|
||||
dnl parameter. POSIX ignores the "b", which c89 specified. Some very old
|
||||
dnl systems do not accept it.
|
||||
AC_DEFUN([CF_FOPEN_BIN_R],[
|
||||
AC_CACHE_CHECK(if fopen accepts explicit binary mode,cf_cv_fopen_bin_r,[
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
$ac_includes_default
|
||||
|
||||
int main(void)
|
||||
@ -2664,7 +2664,7 @@ int main(void)
|
||||
}
|
||||
${cf_cv_main_return:-return} (rc);
|
||||
}
|
||||
],
|
||||
])],
|
||||
[cf_cv_fopen_bin_r=yes],
|
||||
[cf_cv_fopen_bin_r=no],
|
||||
[cf_cv_fopen_bin_r=unknown])
|
||||
@ -2763,7 +2763,7 @@ AC_CHECK_LIB(bsd, gettimeofday,
|
||||
fi
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_FUNC_GETTTYNAM version: 5 updated: 2025/12/24 12:27:29
|
||||
dnl CF_FUNC_GETTTYNAM version: 6 updated: 2026/01/24 14:15:07
|
||||
dnl -----------------
|
||||
dnl Check if the 4.3BSD function getttyname exists, as well as if <ttyent.h>
|
||||
dnl defines the _PATH_TTYS symbol. If the corresponding file exists, but the
|
||||
@ -2793,14 +2793,14 @@ fi
|
||||
if test $cf_cv_PATH_TTYS != no
|
||||
then
|
||||
AC_CACHE_CHECK(if _PATH_TTYS file exists,cf_cv_have_PATH_TTYS,[
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
$ac_includes_default
|
||||
#include <ttyent.h>
|
||||
|
||||
int main(void) {
|
||||
FILE *fp = fopen(_PATH_TTYS, "r");
|
||||
${cf_cv_main_return:-return} (fp == NULL);
|
||||
}],
|
||||
}])],
|
||||
[cf_cv_have_PATH_TTYS=yes],
|
||||
[cf_cv_have_PATH_TTYS=no],
|
||||
[cf_cv_have_PATH_TTYS=unknown])])
|
||||
@ -2819,7 +2819,7 @@ then
|
||||
fi
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_FUNC_MEMMOVE version: 10 updated: 2023/01/05 18:51:28
|
||||
dnl CF_FUNC_MEMMOVE version: 11 updated: 2026/01/24 14:15:07
|
||||
dnl ---------------
|
||||
dnl Check for memmove, or a bcopy that can handle overlapping copy. If neither
|
||||
dnl is found, add our own version of memmove to the list of objects.
|
||||
@ -2828,18 +2828,18 @@ AC_DEFUN([CF_FUNC_MEMMOVE],
|
||||
AC_CHECK_FUNC(memmove,,[
|
||||
AC_CHECK_FUNC(bcopy,[
|
||||
AC_CACHE_CHECK(if bcopy does overlapping moves,cf_cv_good_bcopy,[
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
$ac_includes_default
|
||||
|
||||
int main(void) {
|
||||
static char data[] = "abcdefghijklmnopqrstuwwxyz";
|
||||
char temp[40];
|
||||
static char data[[]] = "abcdefghijklmnopqrstuwwxyz";
|
||||
char temp[[40]];
|
||||
bcopy(data, temp, sizeof(data));
|
||||
bcopy(temp+10, temp, 15);
|
||||
bcopy(temp+5, temp+15, 10);
|
||||
${cf_cv_main_return:-return} (strcmp(temp, "klmnopqrstuwwxypqrstuwwxyz"));
|
||||
}
|
||||
],
|
||||
])],
|
||||
[cf_cv_good_bcopy=yes],
|
||||
[cf_cv_good_bcopy=no],
|
||||
[cf_cv_good_bcopy=unknown])
|
||||
@ -2852,13 +2852,13 @@ int main(void) {
|
||||
fi
|
||||
])])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_FUNC_NANOSLEEP version: 6 updated: 2023/01/05 18:51:33
|
||||
dnl CF_FUNC_NANOSLEEP version: 7 updated: 2026/01/24 14:15:07
|
||||
dnl -----------------
|
||||
dnl Check for existence of workable nanosleep() function. Some systems, e.g.,
|
||||
dnl AIX 4.x, provide a non-working version.
|
||||
AC_DEFUN([CF_FUNC_NANOSLEEP],[
|
||||
AC_CACHE_CHECK(if nanosleep really works,cf_cv_func_nanosleep,[
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
$ac_includes_default
|
||||
|
||||
#include <errno.h>
|
||||
@ -2879,7 +2879,7 @@ int main(void) {
|
||||
code = nanosleep(&ts1, &ts2); /* on failure errno is ENOSYS. */
|
||||
${cf_cv_main_return:-return}(code != 0);
|
||||
}
|
||||
],
|
||||
])],
|
||||
[cf_cv_func_nanosleep=yes],
|
||||
[cf_cv_func_nanosleep=no],
|
||||
[cf_cv_func_nanosleep=unknown])])
|
||||
@ -2916,14 +2916,14 @@ AC_CACHE_CHECK(for openpty header,cf_cv_func_openpty,[
|
||||
])
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_FUNC_POLL version: 11 updated: 2023/01/05 18:51:40
|
||||
dnl CF_FUNC_POLL version: 12 updated: 2026/01/24 14:15:07
|
||||
dnl ------------
|
||||
dnl See if the poll function really works. Some platforms have poll(), but
|
||||
dnl it does not work for terminals or files.
|
||||
AC_DEFUN([CF_FUNC_POLL],[
|
||||
tty >/dev/null 2>&1 || { AC_CHECK_FUNCS(posix_openpt) }
|
||||
AC_CACHE_CHECK(if poll really works,cf_cv_working_poll,[
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
$ac_includes_default
|
||||
|
||||
#include <fcntl.h>
|
||||
@ -2971,7 +2971,7 @@ int main(void) {
|
||||
}
|
||||
}
|
||||
${cf_cv_main_return:-return}(ret < 0);
|
||||
}],
|
||||
}])],
|
||||
[cf_cv_working_poll=yes],
|
||||
[cf_cv_working_poll=no],
|
||||
[cf_cv_working_poll=unknown])])
|
||||
@ -5564,7 +5564,7 @@ AC_DEFUN([CF_LIB_TYPE],
|
||||
test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}"
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_LINK_DATAONLY version: 17 updated: 2025/12/24 12:27:29
|
||||
dnl CF_LINK_DATAONLY version: 18 updated: 2026/01/24 14:15:07
|
||||
dnl ----------------
|
||||
dnl Some systems have a non-ANSI linker that doesn't pull in modules that have
|
||||
dnl only data (i.e., no functions), for example NeXT. On those systems we'll
|
||||
@ -5610,13 +5610,13 @@ EOF
|
||||
( eval $RANLIB conftest.a ) 2>&AS_MESSAGE_LOG_FD >/dev/null
|
||||
cf_saveLIBS="$LIBS"
|
||||
LIBS="conftest.a $LIBS"
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
extern int testfunc(void);
|
||||
int main(void)
|
||||
{
|
||||
${cf_cv_main_return:-return} (!testfunc());
|
||||
}
|
||||
],
|
||||
])],
|
||||
[cf_cv_link_dataonly=yes],
|
||||
[cf_cv_link_dataonly=no],
|
||||
[cf_cv_link_dataonly=unknown])
|
||||
@ -5632,7 +5632,7 @@ AC_SUBST(BROKEN_LINKER)
|
||||
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_LINK_FUNCS version: 14 updated: 2024/12/14 16:09:34
|
||||
dnl CF_LINK_FUNCS version: 15 updated: 2026/01/24 14:15:07
|
||||
dnl -------------
|
||||
dnl Most Unix systems have both link and symlink, a few don't have symlink.
|
||||
dnl A few non-Unix systems implement symlink, but not link.
|
||||
@ -5657,14 +5657,14 @@ else
|
||||
AC_CACHE_CHECK(if link/symlink functions work,cf_cv_link_funcs,[
|
||||
cf_cv_link_funcs=
|
||||
for cf_func in link symlink ; do
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
$ac_includes_default
|
||||
|
||||
int main(void)
|
||||
{
|
||||
int fail = 0;
|
||||
char src[] = "conftest.tmp";
|
||||
char dst[] = "conftest.chk";
|
||||
char src[[]] = "conftest.tmp";
|
||||
char dst[[]] = "conftest.chk";
|
||||
struct stat src_sb, dst_sb;
|
||||
FILE *fp = fopen(src, "w");
|
||||
if (fp == NULL) { fail = 3; } else {
|
||||
@ -5686,7 +5686,7 @@ int main(void)
|
||||
#endif
|
||||
${cf_cv_main_return:-return} (fail);
|
||||
}
|
||||
],[
|
||||
])],[
|
||||
cf_cv_link_funcs="$cf_cv_link_funcs $cf_func"
|
||||
eval 'ac_cv_func_'$cf_func'=yes'],[
|
||||
eval 'ac_cv_func_'$cf_func'=no'],[
|
||||
@ -5699,7 +5699,7 @@ int main(void)
|
||||
fi
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_MAKE_PHONY version: 4 updated: 2025/12/24 12:27:29
|
||||
dnl CF_MAKE_PHONY version: 5 updated: 2025/12/27 13:03:23
|
||||
dnl -------------
|
||||
dnl Check if the make-program handles a ".PHONY" target, e.g,. a target which
|
||||
dnl acts as a placeholder.
|
||||
@ -5725,7 +5725,7 @@ dnl
|
||||
dnl + Version 3.8 of the dmake program in January 1992 also implemented this
|
||||
dnl GNU make extension, but is less well known than the BSD make.
|
||||
AC_DEFUN([CF_MAKE_PHONY],[
|
||||
AC_CACHE_CHECK(for \".PHONY\" make-support, cf_cv_make_PHONY,[
|
||||
AC_CACHE_CHECK(for ".PHONY" make-support, cf_cv_make_PHONY,[
|
||||
rm -rf conftest*
|
||||
(
|
||||
mkdir conftest || exit 1
|
||||
@ -8773,7 +8773,7 @@ if test "$cf_cv_xopen_source" != no ; then
|
||||
fi
|
||||
])
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_TYPEOF_CHTYPE version: 12 updated: 2024/12/14 16:09:34
|
||||
dnl CF_TYPEOF_CHTYPE version: 13 updated: 2026/01/24 14:15:07
|
||||
dnl ----------------
|
||||
dnl Determine the type we should use for chtype (and attr_t, which is treated
|
||||
dnl as the same thing). We want around 32 bits, so on most machines want a
|
||||
@ -8783,7 +8783,7 @@ AC_DEFUN([CF_TYPEOF_CHTYPE],
|
||||
[
|
||||
AC_MSG_CHECKING([for type of chtype])
|
||||
AC_CACHE_VAL(cf_cv_typeof_chtype,[
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
$ac_includes_default
|
||||
#define WANT_BITS 31
|
||||
int main(void)
|
||||
@ -8813,7 +8813,7 @@ int main(void)
|
||||
}
|
||||
${cf_cv_main_return:-return}(0);
|
||||
}
|
||||
],
|
||||
])],
|
||||
[cf_cv_typeof_chtype=`cat cf_test.out`],
|
||||
[cf_cv_typeof_chtype=long],
|
||||
[cf_cv_typeof_chtype=long])
|
||||
|
||||
63
configure
vendored
63
configure
vendored
@ -1,9 +1,9 @@
|
||||
#! /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.
|
||||
# Generated by Autoconf 2.52.20260118.
|
||||
#
|
||||
# Copyright 2003-2022,2023 Thomas E. Dickey
|
||||
# Copyright 2003-2025,2026 Thomas E. Dickey
|
||||
# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
|
||||
# Free Software Foundation, Inc.
|
||||
# This configure script is free software; the Free Software Foundation
|
||||
@ -942,7 +942,7 @@ test -n "$ac_init_help" && exit 0
|
||||
if "$ac_init_version"; then
|
||||
cat <<\EOF
|
||||
|
||||
Copyright 2003-2022,2023 Thomas E. Dickey
|
||||
Copyright 2003-2025,2026 Thomas E. Dickey
|
||||
Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
|
||||
Free Software Foundation, Inc.
|
||||
This configure script is free software; the Free Software Foundation
|
||||
@ -956,7 +956,7 @@ This file contains any messages produced by compilers while
|
||||
running configure, to aid debugging if configure makes a mistake.
|
||||
|
||||
It was created by $as_me, which was
|
||||
generated by GNU Autoconf 2.52.20250126. Invocation command line was
|
||||
generated by GNU Autoconf 2.52.20260118. Invocation command line was
|
||||
|
||||
$ $0 $@
|
||||
|
||||
@ -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
|
||||
@ -30272,10 +30280,10 @@ EOF
|
||||
cat >>"$CONFIG_STATUS" <<EOF
|
||||
ac_cs_version="\\
|
||||
config.status
|
||||
configured by $0, generated by GNU Autoconf 2.52.20250126,
|
||||
configured by $0, generated by GNU Autoconf 2.52.20260118,
|
||||
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
|
||||
|
||||
Copyright 2003-2022,2023 Thomas E. Dickey
|
||||
Copyright 2003-2023,2025 Thomas E. Dickey
|
||||
Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
|
||||
Free Software Foundation, Inc.
|
||||
This config.status script is free software; the Free Software Foundation
|
||||
@ -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;}
|
||||
@ -30355,7 +30363,7 @@ cat >&5 << _ACEOF
|
||||
## Running config.status. ##
|
||||
## ----------------------- ##
|
||||
|
||||
This file was extended by $as_me 2.52.20250126, executed with
|
||||
This file was extended by $as_me 2.52.20260118, executed with
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
CONFIG_HEADERS = $CONFIG_HEADERS
|
||||
CONFIG_LINKS = $CONFIG_LINKS
|
||||
@ -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
|
||||
;;
|
||||
|
||||
21
configure.in
21
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.827 2026/01/24 18:56:52 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.827 $)
|
||||
AC_INIT
|
||||
AC_CONFIG_SRCDIR([ncurses/base/lib_initscr.c])
|
||||
AC_CONFIG_HEADERS([include/ncurses_cfg.h:include/ncurses_cfg.hin])
|
||||
@ -702,16 +702,16 @@ AC_MSG_CHECKING(if big-core option selected)
|
||||
AC_ARG_ENABLE(big-core,
|
||||
[ --disable-big-core assume machine has little memory],
|
||||
[with_big_core=$enableval],
|
||||
[AC_TRY_RUN([
|
||||
[AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
int main(void) {
|
||||
unsigned long n = 6000000L;
|
||||
char *s = malloc(n);
|
||||
if (s != 0)
|
||||
s[0] = s[n-1] = 0;
|
||||
s[[0]] = s[[n-1]] = 0;
|
||||
${cf_cv_main_return:-return}(s == 0);
|
||||
}],
|
||||
}])],
|
||||
[with_big_core=yes],
|
||||
[with_big_core=no],
|
||||
[with_big_core=no])])
|
||||
@ -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
|
||||
|
||||
|
||||
6
dist.mk
6
dist.mk
@ -1,5 +1,5 @@
|
||||
##############################################################################
|
||||
# Copyright 2018-2024,2025 Thomas E. Dickey #
|
||||
# Copyright 2018-2025,2026 Thomas E. Dickey #
|
||||
# Copyright 1998-2017,2018 Free Software Foundation, Inc. #
|
||||
# #
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a #
|
||||
@ -26,7 +26,7 @@
|
||||
# use or other dealings in this Software without prior written #
|
||||
# authorization. #
|
||||
##############################################################################
|
||||
# $Id: dist.mk,v 1.1709 2025/12/30 20:31:32 tom Exp $
|
||||
# $Id: dist.mk,v 1.1715 2026/01/24 10:50:05 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 = 20251230
|
||||
NCURSES_PATCH = 20260124
|
||||
|
||||
# We don't append the patch to the version, since this only applies to releases
|
||||
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
<!--
|
||||
$Id: announce.html,v 1.71 2025/12/30 20:20:20 tom Exp $
|
||||
$Id: announce.html,v 1.72 2025/12/31 10:26:40 tom Exp $
|
||||
****************************************************************************
|
||||
* Copyright 2018-2024,2025 Thomas E. Dickey *
|
||||
* *
|
||||
@ -33,7 +33,7 @@
|
||||
<head>
|
||||
<meta name="generator" content=
|
||||
"HTML Tidy for HTML5 for Linux version 5.8.0">
|
||||
<title>Announcing ncurses 6.5</title>
|
||||
<title>Announcing ncurses 6.6</title>
|
||||
<link rel="author" href="mailto:bug-ncurses@gnu.org">
|
||||
<meta http-equiv="Content-Type" content=
|
||||
"text/html; charset=us-ascii">
|
||||
@ -56,7 +56,7 @@
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1 class="no-header">Announcing ncurses 6.5</h1>
|
||||
<h1 class="no-header">Announcing ncurses 6.6</h1>
|
||||
|
||||
<h2><a name="h2-overview" id="h2-overview">Overview</a></h2>
|
||||
|
||||
@ -154,7 +154,7 @@
|
||||
Notes</a></h2>
|
||||
|
||||
<p>These notes are for <span class="main-name">ncurses</span>
|
||||
6.5, released <strong>December 30, 2025</strong>.</p>
|
||||
6.6, released <strong>December 30, 2025</strong>.</p>
|
||||
|
||||
<p>This release is designed to be source-compatible with
|
||||
<span class="main-name">ncurses</span> 5.0 through 6.5; providing
|
||||
@ -475,9 +475,9 @@
|
||||
<h3><a name="h3-programs" id="h3-programs">Program
|
||||
improvements</a></h3>
|
||||
|
||||
<h4><a name="h4-utilities">Utilities</a></h4>
|
||||
<p>Several improvements were made to the
|
||||
utility programs.</p>
|
||||
<h4><a name="h4-utilities" id="h4-utilities">Utilities</a></h4>
|
||||
|
||||
<p>Several improvements were made to the utility programs.</p>
|
||||
|
||||
<dl>
|
||||
<dt><span class="part-name"><a href=
|
||||
@ -1848,8 +1848,9 @@
|
||||
|
||||
<li><a href="#h4-config-options">Configuration
|
||||
options</a></li>
|
||||
|
||||
<li><a href="#h4-config-package">Package
|
||||
scripts</a></li>
|
||||
configuration scripts</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
|
||||
@ -59,7 +59,7 @@
|
||||
displays with output optimized to minimize screen updates. <EM>ncurses</EM>
|
||||
replaces the <EM>curses</EM> libraries from System V Release 4 Unix ("SVr4") and
|
||||
4.4BSD Unix, the development of which ceased in the 1990s. This
|
||||
document describes <EM>ncurses</EM> version 6.6 (patch 20251230).
|
||||
document describes <EM>ncurses</EM> version 6.6 (patch 20260117).
|
||||
|
||||
<EM>ncurses</EM> permits control of the terminal screen's contents; abstraction
|
||||
and subdivision thereof with <EM>windows</EM> and <EM>pads</EM>; acquisition of keyboard
|
||||
|
||||
@ -72,7 +72,7 @@
|
||||
have, by specifying how to perform screen operations, and by specifying
|
||||
padding requirements and initialization sequences.
|
||||
|
||||
This document describes <EM>ncurses</EM> version 6.6 (patch 20251230).
|
||||
This document describes <EM>ncurses</EM> version 6.6 (patch 20260117).
|
||||
|
||||
|
||||
</PRE><H3><a name="h3-terminfo-Entry-Syntax"><EM>terminfo</EM> Entry Syntax</a></H3><PRE>
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* t
|
||||
****************************************************************************
|
||||
* Copyright 2018-2024,2025 Thomas E. Dickey *
|
||||
* Copyright 2018-2025,2026 Thomas E. Dickey *
|
||||
* Copyright 2017 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -28,19 +28,19 @@
|
||||
* sale, use or other dealings in this Software without prior written *
|
||||
* authorization. *
|
||||
****************************************************************************
|
||||
* @Id: user_caps.5,v 1.60 2025/11/12 01:01:01 tom Exp @
|
||||
* @Id: user_caps.5,v 1.64 2026/01/11 23:54:16 tom Exp @
|
||||
-->
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
|
||||
<HTML>
|
||||
<HEAD>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
|
||||
<meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
|
||||
<TITLE>user_caps 5 2025-11-11 ncurses 6.6 File formats</TITLE>
|
||||
<TITLE>user_caps 5 2026-01-11 ncurses 6.6 File formats</TITLE>
|
||||
<link rel="author" href="mailto:bug-ncurses@gnu.org">
|
||||
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<H1 class="no-header">user_caps 5 2025-11-11 ncurses 6.6 File formats</H1>
|
||||
<H1 class="no-header">user_caps 5 2026-01-11 ncurses 6.6 File formats</H1>
|
||||
<PRE>
|
||||
<STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG> File formats <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>
|
||||
|
||||
@ -317,6 +317,14 @@
|
||||
%p2%d;
|
||||
%?%p4%tM%em%;,
|
||||
|
||||
Some of these extended capabilities have parameters which <EM>ncurses</EM>
|
||||
may use in the <STRONG>tparm</STRONG>, <STRONG>tiparm</STRONG>, or <STRONG>tiparm_s</STRONG> functions. The <EM>ncurses</EM>
|
||||
library checks to ensure that both standard and extended
|
||||
capabilities have the expected number and type of parameters. The
|
||||
terminfo compiler <EM>tic</EM> has similar checks for these extensions as
|
||||
well as for those which are used by other programs, which include
|
||||
<EM>mintty</EM>, <EM>screen</EM>, <EM>tack</EM>, <EM>tmux</EM>, <EM>vim</EM>, and <EM>xterm</EM>.
|
||||
|
||||
|
||||
</PRE><H3><a name="h3-Extended-Key-Definitions">Extended Key Definitions</a></H3><PRE>
|
||||
Several terminals provide the ability to send distinct strings for
|
||||
@ -406,7 +414,7 @@
|
||||
<EM>XTerm</EM> <EM>Control</EM> <EM>Sequences</EM> provides further information on the <STRONG>xterm(1)</STRONG>
|
||||
features that are used in these extended capabilities.
|
||||
|
||||
ncurses 6.6 2025-11-11 <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>
|
||||
ncurses 6.6 2026-01-11 <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>
|
||||
</PRE>
|
||||
<div class="nav">
|
||||
<ul>
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2018-2024,2025 Thomas E. Dickey *
|
||||
* Copyright 2018-2025,2026 Thomas E. Dickey *
|
||||
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -33,7 +33,7 @@
|
||||
* and: Thomas E. Dickey 1996-on *
|
||||
****************************************************************************/
|
||||
|
||||
/* $Id: curses.h.in,v 1.299 2025/08/08 23:19:21 tom Exp $ */
|
||||
/* $Id: curses.h.in,v 1.300 2026/01/15 00:38:24 tom Exp $ */
|
||||
|
||||
#ifndef __NCURSES_H
|
||||
#define __NCURSES_H
|
||||
@ -944,18 +944,10 @@ extern NCURSES_EXPORT(int) getpary (const WINDOW *); /* generated */
|
||||
#define NCURSES_EXT_FUNCS @NCURSES_PATCH@ /* NCURSES_PATCH */
|
||||
typedef int (*NCURSES_WINDOW_CB)(WINDOW *, void *);
|
||||
typedef int (*NCURSES_SCREEN_CB)(SCREEN *, void *);
|
||||
extern NCURSES_EXPORT(int) alloc_pair (int, int);
|
||||
extern NCURSES_EXPORT(int) assume_default_colors (int, int);
|
||||
extern NCURSES_EXPORT(const char *) curses_version (void);
|
||||
extern NCURSES_EXPORT(int) define_key (const char *, int);
|
||||
extern NCURSES_EXPORT(int) extended_color_content(int, int *, int *, int *);
|
||||
extern NCURSES_EXPORT(int) extended_pair_content(int, int *, int *);
|
||||
extern NCURSES_EXPORT(int) extended_slk_color(int);
|
||||
extern NCURSES_EXPORT(int) find_pair (int, int);
|
||||
extern NCURSES_EXPORT(int) free_pair (int);
|
||||
extern NCURSES_EXPORT(int) get_escdelay (void);
|
||||
extern NCURSES_EXPORT(int) init_extended_color(int, int, int, int);
|
||||
extern NCURSES_EXPORT(int) init_extended_pair(int, int, int);
|
||||
extern NCURSES_EXPORT(int) is_cbreak(void);
|
||||
extern NCURSES_EXPORT(int) is_echo(void);
|
||||
extern NCURSES_EXPORT(int) is_nl(void);
|
||||
@ -965,7 +957,6 @@ extern NCURSES_EXPORT(int) key_defined (const char *);
|
||||
extern NCURSES_EXPORT(char *) keybound (int, int);
|
||||
extern NCURSES_EXPORT(int) keyok (int, bool);
|
||||
extern NCURSES_EXPORT(void) nofilter(void);
|
||||
extern NCURSES_EXPORT(void) reset_color_pairs (void);
|
||||
extern NCURSES_EXPORT(int) resize_term (int, int);
|
||||
extern NCURSES_EXPORT(int) resizeterm (int, int);
|
||||
extern NCURSES_EXPORT(int) set_escdelay (int);
|
||||
@ -976,6 +967,18 @@ extern NCURSES_EXPORT(int) use_screen (SCREEN *, NCURSES_SCREEN_CB, void *);
|
||||
extern NCURSES_EXPORT(int) use_window (WINDOW *, NCURSES_WINDOW_CB, void *);
|
||||
extern NCURSES_EXPORT(int) wresize (WINDOW *, int, int);
|
||||
|
||||
#if @NCURSES_EXT_COLORS@ /* NCURSES_EXT_COLORS */
|
||||
extern NCURSES_EXPORT(int) alloc_pair (int, int);
|
||||
extern NCURSES_EXPORT(int) extended_color_content(int, int *, int *, int *);
|
||||
extern NCURSES_EXPORT(int) extended_pair_content(int, int *, int *);
|
||||
extern NCURSES_EXPORT(int) extended_slk_color(int);
|
||||
extern NCURSES_EXPORT(int) find_pair (int, int);
|
||||
extern NCURSES_EXPORT(int) free_pair (int);
|
||||
extern NCURSES_EXPORT(int) init_extended_color(int, int, int, int);
|
||||
extern NCURSES_EXPORT(int) init_extended_pair(int, int, int);
|
||||
extern NCURSES_EXPORT(void) reset_color_pairs (void);
|
||||
#endif
|
||||
|
||||
#if @NCURSES_XNAMES@ /* NCURSES_XNAMES */
|
||||
#undef NCURSES_XNAMES
|
||||
#define NCURSES_XNAMES @NCURSES_XNAMES@ /* NCURSES_XNAMES */
|
||||
@ -1095,17 +1098,9 @@ extern NCURSES_EXPORT(void) NCURSES_SP_NAME(use_tioctl) (SCREEN*, bool); /* impl
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(vidattr) (SCREEN*, chtype); /* implemented:SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(vidputs) (SCREEN*, chtype, NCURSES_SP_OUTC); /* implemented:SP_FUNC */
|
||||
#if @NCURSES_EXT_FUNCS@ /* NCURSES_EXT_FUNCS */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(alloc_pair) (SCREEN*, int, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(assume_default_colors) (SCREEN*, int, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(define_key) (SCREEN*, const char *, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(extended_color_content) (SCREEN*, int, int *, int *, int *); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(extended_pair_content) (SCREEN*, int, int *, int *); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(extended_slk_color) (SCREEN*, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(find_pair) (SCREEN*, int, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(free_pair) (SCREEN*, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(get_escdelay) (SCREEN*); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(init_extended_color) (SCREEN*, int, int, int, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(init_extended_pair) (SCREEN*, int, int, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(is_cbreak) (SCREEN*); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(is_echo) (SCREEN*); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(is_nl) (SCREEN*); /* implemented:EXT_SP_FUNC */
|
||||
@ -1115,13 +1110,25 @@ extern NCURSES_EXPORT(int) NCURSES_SP_NAME(key_defined) (SCREEN*, const char *);
|
||||
extern NCURSES_EXPORT(char *) NCURSES_SP_NAME(keybound) (SCREEN*, int, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(keyok) (SCREEN*, int, bool); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(void) NCURSES_SP_NAME(nofilter) (SCREEN*); /* implemented */ /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(void) NCURSES_SP_NAME(reset_color_pairs) (SCREEN*); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(resize_term) (SCREEN*, int, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(resizeterm) (SCREEN*, int, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(set_escdelay) (SCREEN*, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(set_tabsize) (SCREEN*, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(use_default_colors) (SCREEN*); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(use_legacy_coding) (SCREEN*, int); /* implemented:EXT_SP_FUNC */
|
||||
|
||||
#if @NCURSES_EXT_COLORS@ /* NCURSES_EXT_COLORS */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(alloc_pair) (SCREEN*, int, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(extended_color_content) (SCREEN*, int, int *, int *, int *); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(extended_pair_content) (SCREEN*, int, int *, int *); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(extended_slk_color) (SCREEN*, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(find_pair) (SCREEN*, int, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(free_pair) (SCREEN*, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(init_extended_color) (SCREEN*, int, int, int, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(init_extended_pair) (SCREEN*, int, int, int); /* implemented:EXT_SP_FUNC */
|
||||
extern NCURSES_EXPORT(void) NCURSES_SP_NAME(reset_color_pairs) (SCREEN*); /* implemented:EXT_SP_FUNC */
|
||||
#endif /* NCURSES_EXT_COLORS */
|
||||
|
||||
#endif /* NCURSES_EXT_FUNCS */
|
||||
#else /* !NCURSES_SP_FUNCS */
|
||||
#undef NCURSES_SP_FUNCS
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
'\" t
|
||||
.\"***************************************************************************
|
||||
.\" Copyright 2018-2024,2025 Thomas E. Dickey *
|
||||
.\" Copyright 2018-2025,2026 Thomas E. Dickey *
|
||||
.\" Copyright 2017 Free Software Foundation, Inc. *
|
||||
.\" *
|
||||
.\" Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -28,8 +28,8 @@
|
||||
.\" authorization. *
|
||||
.\"***************************************************************************
|
||||
.\"
|
||||
.\" $Id: user_caps.5,v 1.60 2025/11/12 01:01:01 tom Exp $
|
||||
.TH user_caps 5 2025-11-11 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "File formats"
|
||||
.\" $Id: user_caps.5,v 1.64 2026/01/11 23:54:16 tom Exp $
|
||||
.TH user_caps 5 2026-01-11 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "File formats"
|
||||
.ie \n(.g \{\
|
||||
.ds `` \(lq
|
||||
.ds '' \(rq
|
||||
@ -545,6 +545,26 @@ mouse protocols.
|
||||
%?%p4%tM%em%;,
|
||||
.fi
|
||||
.EE
|
||||
.PP
|
||||
Some of these extended capabilities have parameters which
|
||||
\fI\%ncurses\fP may use in the
|
||||
.BR \%tparm ","
|
||||
.BR \%tiparm ","
|
||||
or
|
||||
.B \%tiparm_s
|
||||
functions.
|
||||
The \fI\%ncurses\fP library checks to ensure that
|
||||
both standard and extended capabilities have
|
||||
the expected number and type of parameters.
|
||||
The terminfo compiler \fI\%@TIC@\fP has similar checks for these extensions
|
||||
as well as for those which are used by other programs,
|
||||
which include
|
||||
.IR \%mintty ","
|
||||
.IR \%screen ","
|
||||
.IR \%tack ","
|
||||
.IR \%tmux ","
|
||||
.IR \%vim ", and"
|
||||
.IR \%xterm "."
|
||||
.
|
||||
.SS "Extended Key Definitions"
|
||||
Several terminals provide the ability to send distinct strings for
|
||||
|
||||
@ -6,8 +6,8 @@
|
||||
# Report bugs and new terminal descriptions to
|
||||
# bug-ncurses@gnu.org
|
||||
#
|
||||
# $Revision: 1.1200 $
|
||||
# $Date: 2025/11/12 00:52:57 $
|
||||
# $Revision: 1.1216 $
|
||||
# $Date: 2026/01/25 00:46:12 $
|
||||
#
|
||||
# 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
|
||||
@ -484,6 +484,9 @@ ecma+underline|ECMA-48 underline,
|
||||
ecma+sgr|attribute capabilities for true ECMA-48 terminals,
|
||||
use=ecma+underline, use=ecma+standout, use=klone+sgr8,
|
||||
|
||||
ecma+overline|ECMA-48 overlined,
|
||||
Rmol=\E[55m, Smol=\E[53m,
|
||||
|
||||
ecma+strikeout|ECMA-48 strikeout/crossed-out,
|
||||
rmxx=\E[29m, smxx=\E[9m,
|
||||
|
||||
@ -2435,15 +2438,15 @@ vt52+arrows|cursor keys for VT52,
|
||||
# terminfo guidelines. That is a compromise used to assign the remaining
|
||||
# keys on the keypad to kf5-kf0, used on older systems with legacy termcap
|
||||
# support:
|
||||
vt100+keypad|DEC VT100 numeric keypad no fkeys,
|
||||
vt100+keypad-sco|DEC VT100 numeric keypad no fkeys,
|
||||
ka1=\EOq, ka3=\EOs, kb2=\EOr, kc1=\EOp, kc3=\EOn,
|
||||
vt100+pf1-pf4|DEC VT100 PF1-PF4,
|
||||
kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
|
||||
vt100+pfkeys|DEC VT100 numeric keypad (kf1-kf4),
|
||||
kent=\EOM, use=vt100+pf1-pf4, use=vt100+keypad,
|
||||
vt100+fnkeys|DEC VT100 numeric keypad (kf0-kf10),
|
||||
vt100+pfkeys-sco|DEC VT100 numeric keypad (kf1-kf4),
|
||||
kent=\EOM, use=vt100+pf1-pf4, use=vt100+keypad-sco,
|
||||
vt100+fnkeys-sco|DEC VT100 numeric keypad (kf0-kf10),
|
||||
kf0=\EOy, kf10=\EOx, kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl,
|
||||
kf9=\EOw, use=vt100+pfkeys,
|
||||
kf9=\EOw, use=vt100+pfkeys-sco,
|
||||
#
|
||||
# A better adaptation to modern keyboards such as the PC's, which have a dozen
|
||||
# function keys and the keypad 2,4,6,8 keys are labeled with arrows keys, is to
|
||||
@ -2455,20 +2458,30 @@ vt100+fnkeys|DEC VT100 numeric keypad (kf0-kf10),
|
||||
# |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_|
|
||||
# | 7 8 9 - |
|
||||
# | $Ow | $Ox | $Oy | $Om |
|
||||
# |_ka1__K1_|_________|_ka3__K3_|_________|
|
||||
# |_ka1__K1_|_ka2_____|_ka3__K3_|_________|
|
||||
# | 4 | 5 | 6 | , |
|
||||
# | $Ot | $Ou | $Ov | $Ol |
|
||||
# |_________|_kb2__K2_|_________|_________|
|
||||
# |_kb1_____|_kb2__K2_|_kb3_____|_________|
|
||||
# | 1 | 2 | 3 | |
|
||||
# | $Oq | $Or | $Os | enter |
|
||||
# |_kc1__K4_|_________|_kc3__K5_| $OM |
|
||||
# |_kc1__K4_|_kc2_____|_kc3__K5_| $OM |
|
||||
# | 0 | . | |
|
||||
# | $Op | $On | |
|
||||
# |___________________|_________|_kent_@8_|
|
||||
#
|
||||
vt220+keypad|DEC VT220 numeric keypad,
|
||||
ka1=\EOw, ka3=\EOy, kb2=\EOu, kc1=\EOq, kc3=\EOs, ka2=\EOx,
|
||||
kb1=\EOt, kb3=\EOv, kc2=\EOr, use=vt100+pfkeys,
|
||||
# ka2, kb1, kb3 and kc2 are extended key capabilities which have no termcap
|
||||
# equivalent.
|
||||
vt100+keypad|vt220+keypad|DEC numeric keypad,
|
||||
ka1=\EOw, ka3=\EOy, kb2=\EOu, kc1=\EOq, kc3=\EOs, kent=\EOM,
|
||||
ka2=\EOx, kb1=\EOt, kb3=\EOv, kc2=\EOr, use=vt100+pf1-pf4,
|
||||
|
||||
# PC keyboards typically have 12 function keys. Some terminal emulators can
|
||||
# treat the top row of the numeric keypad as function keys. For this special
|
||||
# case, it can be useful to give names to these keys on the top row of the
|
||||
# keypad, to distinguish them from F1-F4.
|
||||
vt100+keypad+emul|DEC VT100/VT220 numeric keypad with PF1-PF4 emulation,
|
||||
kpDIV=\EOQ, kpMUL=\EOR, kpNUM=\EOP, kpSUB=\EOS,
|
||||
use=vt100+keypad,
|
||||
#
|
||||
vt100+enq|ncurses extension for VT100-style ENQ,
|
||||
u8=\E[?1;2c, use=ansi+enq,
|
||||
@ -2519,7 +2532,7 @@ vt100|vt100-am|DEC VT100 (w/advanced video),
|
||||
%;m%?%p9%t\016%e\017%;$<2>,
|
||||
smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m$<2>,
|
||||
use=ansi+csr, use=ansi+pp, use=decid+cpr, use=vt100+4bsd,
|
||||
use=vt100+fnkeys,
|
||||
use=vt100+fnkeys-sco,
|
||||
|
||||
vt100+4bsd|DEC VT100 from 4.0BSD,
|
||||
am, msgr,
|
||||
@ -2858,7 +2871,7 @@ vt320|vt300|DEC VT320 7 bit terminal,
|
||||
use=ansi+csr, use=ansi+cup, use=ansi+enq, use=ansi+erase,
|
||||
use=ansi+idl, use=ansi+local, use=ansi+sgrso,
|
||||
use=ansi+sgrul, use=dec+pp, use=dec+sl, use=vt220+cvis,
|
||||
use=vt220+keypad, use=vt220+sfkeys, use=vt220+ufkeys,
|
||||
use=vt100+keypad, use=vt220+sfkeys, use=vt220+ufkeys,
|
||||
|
||||
vt320-nam|vt300-nam|DEC VT320 7 bit terminal with no am to make SAS happy,
|
||||
am@,
|
||||
@ -3090,10 +3103,10 @@ vt525-w|DEC VT525 in wide mode,
|
||||
#
|
||||
# In trying to get the function keys to work, I had to cobble my own
|
||||
# terminfo.src entry, since the existing vt520 entry doesn't include most of
|
||||
# the function keys. If I blend the entries for "vt420f" and "vt220+keypad"
|
||||
# the function keys. If I blend the entries for "vt420f" and "vt100+keypad"
|
||||
# I seem to get them all -Mike Gran
|
||||
vt520ansi|Boundless VT520 ANSI,
|
||||
use=ansi+rca, use=vt420f, use=vt220+keypad,
|
||||
use=ansi+rca, use=vt420f, use=vt100+keypad,
|
||||
use=ansi+tabs,
|
||||
|
||||
#### VT100 emulations
|
||||
@ -3357,7 +3370,7 @@ nsterm+7|AppKit Terminal.app v41+ basic capabilities w/ASCII charset,
|
||||
sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, tbc=\E[3g,
|
||||
use=ansi+csr, use=ansi+cup, use=ansi+erase, use=ansi+idl,
|
||||
use=ansi+local, use=ansi+sgrbold, use=vt100+enq,
|
||||
use=vt100+pfkeys,
|
||||
use=vt100+pfkeys-sco,
|
||||
|
||||
nsterm+acs|AppKit Terminal.app v41+ basic capabilities w/VT100 alternate-charset,
|
||||
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?
|
||||
@ -3651,9 +3664,9 @@ iTerm.app|iterm|iTerm.app terminal emulator for Mac OS X,
|
||||
use=ansi+csr, use=ansi+enq, use=ansi+erase, use=ansi+idc,
|
||||
use=ansi+idl, use=ansi+local, use=ansi+rca2,
|
||||
use=ansi+sgrso, use=ansi+sgrul, use=vt100+4bsd,
|
||||
use=vt100+keypad, use=vt100+pfkeys, use=xterm+r5+fkeys,
|
||||
use=xterm+alt47, use=xterm+sl-twm, use=xterm+x11mouse,
|
||||
use=xterm+256setaf, use=vt220+cvis,
|
||||
use=vt100+keypad-sco, use=vt100+pfkeys-sco,
|
||||
use=xterm+r5+fkeys, use=xterm+alt47, use=xterm+sl-twm,
|
||||
use=xterm+x11mouse, use=xterm+256setaf, use=vt220+cvis,
|
||||
|
||||
# iTerm2
|
||||
#
|
||||
@ -3764,6 +3777,7 @@ iTerm2.app|iterm2|terminal emulator for Mac OS X,
|
||||
use=report+version, use=report+da2,
|
||||
use=xterm+alt+title, use=ecma+italics, use=iterm,
|
||||
use=bracketed+paste, use=kitty+setal,
|
||||
use=ecma+overline,
|
||||
|
||||
# xnuppc - Darwin PowerPC Console (a.k.a. "darwin")
|
||||
#
|
||||
@ -3871,7 +3885,7 @@ xnuppc+basic|Darwin PowerPC console basic capabilities,
|
||||
sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, tbc=\E[3g,
|
||||
use=ansi+csr, use=ansi+cup, use=ansi+erase,
|
||||
use=ansi+local, use=ansi+sgrso, use=ansi+sgrul,
|
||||
use=vt100+keypad,
|
||||
use=vt100+keypad-sco,
|
||||
|
||||
xnuppc+c|Darwin PowerPC console ANSI color support,
|
||||
ncv#32, use=klone+color,
|
||||
@ -4153,6 +4167,9 @@ absolute|Absolute Telnet emulating xterm,
|
||||
#### PuTTY
|
||||
# http://www.chiark.greenend.org.uk/~sgtatham/putty/
|
||||
#
|
||||
# PuTTY 0.83 (February 2025, tested 03 January 2026)
|
||||
# verified that ncv#22 is no longer needed
|
||||
#
|
||||
# PuTTY 0.78 (September 2020, tested 12 August 2023)
|
||||
# Testing with tack:
|
||||
# implements cross-out text (shortly after 0.74)
|
||||
@ -4206,7 +4223,7 @@ absolute|Absolute Telnet emulating xterm,
|
||||
# http://stackoverflow.com/questions/24613237/terminal-retains-bg-color-after-closing-vim-using-color-scheme-and-putty-256co/37869114#37869114
|
||||
putty|PuTTY terminal emulator,
|
||||
am, bce, bw, ccc, mir, msgr, xenl, xon, XT,
|
||||
it#8, ncv#22, U8#1,
|
||||
it#8, ncv@, U8#1,
|
||||
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
|
||||
bel=^G, cr=\r, cub1=^H, cud1=\ED, cuu1=\EM, dch=\E[%p1%dP,
|
||||
dch1=\E[P,
|
||||
@ -4238,8 +4255,7 @@ putty|PuTTY terminal emulator,
|
||||
use=klone+color, use=klone+sgr, use=putty+cursor,
|
||||
use=putty+fnkeys, use=report+da2, use=vt220+pcedit,
|
||||
use=xterm+alt1049, use=vt102+enq, use=xterm+sm+1006,
|
||||
use=xterm+sl, use=vt100+fnkeys, use=putty+keypad,
|
||||
use=vt220+cvis,
|
||||
use=xterm+sl, use=putty+keypad, use=vt220+cvis,
|
||||
|
||||
# older versions (e.g., before 0.71) of PuTTY used a shift-modifier to toggle
|
||||
# between normal- and application-mode for the cursor-keys. That was dropped,
|
||||
@ -4248,14 +4264,21 @@ putty+cursor|PuTTY modified cursor-keys,
|
||||
kDN5=\E[B, kLFT5=\E[D, kRIT5=\E[C, kUP5=\E[A,
|
||||
putty+keypad|PuTTY numeric keypad,
|
||||
kp1=\EOq, kp2=\EOr, kp3=\EOs, kp4=\EOt, kp5=\EOu, kp6=\EOv,
|
||||
kp7=\EOw, kp8=\EOx, kp9=\EOy, kpADD=\EOl, kpDIV=\EOQ,
|
||||
kpDOT=\EOn, kpMUL=\EOR, kpNUM=\EOP, kpSUB=\EOS, kpZRO=\EOp,
|
||||
kp7=\EOw, kp8=\EOx, kp9=\EOy, kpADD=\EOl, kpDOT=\EOn,
|
||||
kpZRO=\EOp, use=vt100+keypad+emul, use=vt100+keypad,
|
||||
|
||||
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,
|
||||
|
||||
putty-256color|PuTTY 0.58 with xterm 256-colors,
|
||||
use=xterm+256setaf, use=putty,
|
||||
|
||||
putty-direct|PuTTY terminal emulator with direct colors,
|
||||
use=xterm+indirect, use=putty,
|
||||
putty-direct16|PuTTY terminal emulator with direct colors (16 indexed),
|
||||
use=xterm+indirect16, 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=,
|
||||
@ -4361,15 +4384,15 @@ mintty+common|shared capabilities for mintty,
|
||||
kcbt=\E[Z, kent=\EOM, rmm@, rmpch=\E[10m,
|
||||
rs1=\Ec\E]104\007, rshm=\E[22m, rsubm=\E[75m,
|
||||
rsupm=\E[75m, smm@, smpch=\E[11m, sshm=\E[1:2m,
|
||||
ssubm=\E[74m, ssupm=\E[73m, Rmol=\E[55m, Smol=\E[53m,
|
||||
Smulx=\E[4:%p1%dm, blink2=\E[6m, norm=\E[22m,
|
||||
opaq=\E[28m, rv=\E\\[>77;[0-9];0c, smul2=\E[21m,
|
||||
ssubm=\E[74m, ssupm=\E[73m, Smulx=\E[4:%p1%dm,
|
||||
blink2=\E[6m, norm=\E[22m, opaq=\E[28m,
|
||||
rv=\E\\[>77;[0-9];0c, smul2=\E[21m,
|
||||
xr=\EP>\\|mintty ([1-9][.0-9]+)\E\\\\, use=linux+kbs,
|
||||
use=ansi+rep, use=ecma+strikeout, use=ecma+index,
|
||||
use=mintty+keypad, use=vt420+lrmm, use=xterm+focus,
|
||||
use=xterm+sm+1006, use=xterm+pcfkeys, use=xterm+tmux,
|
||||
use=ecma+italics, use=xterm-basic, use=bracketed+paste,
|
||||
use=report+version,
|
||||
use=ansi+rep, use=ecma+overline, use=ecma+strikeout,
|
||||
use=ecma+index, use=mintty+keypad, use=vt420+lrmm,
|
||||
use=xterm+focus, use=xterm+sm+1006, use=xterm+pcfkeys,
|
||||
use=xterm+tmux, use=ecma+italics, use=xterm-basic,
|
||||
use=bracketed+paste, use=report+version,
|
||||
mintty+keypad|mintty special numeric keypad,
|
||||
kbeg=\EOE, kpADD=\EOk, kpDIV=\EOo, kpMUL=\EOj, kpSUB=\EOm,
|
||||
|
||||
@ -4815,10 +4838,10 @@ ms+terminal|building block for Windows terminal,
|
||||
cud1=\E[B, kbeg=\EOE, kcbt=\E[Z, oc@, rmkx=\E[?1l, rmm@,
|
||||
smkx=\E[?1h, smm@, rv=\E\\[>0;10;1c, use=linux+kbs,
|
||||
use=bracketed+paste, use=xterm+pcfkeys, use=ansi+rep,
|
||||
use=xterm+sm+1006, use=ecma+index, use=ecma+italics,
|
||||
use=ecma+strikeout, use=report+da2, use=vt420+lrmm,
|
||||
use=xterm-basic, use=xterm+focus, use=xterm+tmux,
|
||||
use=xterm+sm+1003,
|
||||
use=xterm+sm+1006, use=ecma+overline, use=ecma+index,
|
||||
use=ecma+italics, use=ecma+strikeout, use=report+da2,
|
||||
use=vt420+lrmm, use=xterm-basic, use=xterm+focus,
|
||||
use=xterm+tmux, use=xterm+sm+1003,
|
||||
|
||||
#### Visual Studio
|
||||
# Visual Studio Code 1.45.0 uses xterm.js 12.8.1 (see https://xtermjs.org/).
|
||||
@ -4999,7 +5022,7 @@ xterm-xf86-v32|xterm terminal emulator (XFree86 3.2 Window System),
|
||||
use=ansi+idc, use=ansi+idl, use=ansi+inittabs,
|
||||
use=ansi+local, use=ansi+rca2, use=xterm+alt47,
|
||||
use=xterm+kbs, use=vt100+enq, use=xterm+r5+fkeys,
|
||||
use=ecma+color, use=vt220+cvis, use=vt220+keypad,
|
||||
use=ecma+color, use=vt220+cvis, use=vt100+keypad,
|
||||
use=vt220+pcedit, use=vt220+sfkeys,
|
||||
|
||||
# This is the stock xterm entry supplied with XFree86 3.3, which uses VT100
|
||||
@ -5252,14 +5275,10 @@ xterm+pcf2|fragment with modifyFunctionKeys:2,
|
||||
kf31=\E[18;5~, kf32=\E[19;5~, kf33=\E[20;5~,
|
||||
kf34=\E[21;5~, kf35=\E[23;5~, kf36=\E[24;5~,
|
||||
kf37=\E[1;6P, kf38=\E[1;6Q, kf39=\E[1;6R, kf40=\E[1;6S,
|
||||
kf41=\E[15;6~, kf42=\E[17;6~, kf43=\E[18;6~,
|
||||
kf44=\E[19;6~, kf45=\E[20;6~, kf46=\E[21;6~,
|
||||
kf47=\E[23;6~, kf48=\E[24;6~, kf49=\E[1;3P, kf50=\E[1;3Q,
|
||||
kf51=\E[1;3R, kf52=\E[1;3S, kf53=\E[15;3~, kf54=\E[17;3~,
|
||||
kf55=\E[18;3~, kf56=\E[19;3~, kf57=\E[20;3~,
|
||||
kf58=\E[21;3~, kf59=\E[23;3~, kf60=\E[24;3~,
|
||||
kf61=\E[1;4P, kf62=\E[1;4Q, kf63=\E[1;4R,
|
||||
use=vt100+pf1-pf4, use=xterm+nopcfkeys,
|
||||
kf41=\E[15;6~, kf42=\E[17;6~, kf49=\E[1;3P, kf50=\E[1;3Q,
|
||||
kf51=\E[1;3R, kf52=\E[1;3S, kf61=\E[1;4P, kf62=\E[1;4Q,
|
||||
kf63=\E[1;4R, use=vt100+pf1-pf4, use=xterm+nopcfkeys,
|
||||
use=xterm+pcf0,
|
||||
#
|
||||
# Chunks from xterm #230:
|
||||
xterm+pce2|fragment with modifyCursorKeys:2 editing-keys,
|
||||
@ -5346,7 +5365,7 @@ xterm+alt+title|xterm 90 and 251 features combined,
|
||||
xterm+keypad|xterm emulating VT100/VT220 numeric keypad,
|
||||
kbeg=\EOE, kp5=\EOE, kpADD=\EOk, kpCMA=\EOl, kpDIV=\EOo,
|
||||
kpDOT=\EOn, kpMUL=\EOj, kpSUB=\EOm, kpZRO=\EOp,
|
||||
use=vt220+keypad,
|
||||
use=vt100+keypad,
|
||||
#
|
||||
# Those chunks use the new-style (the xterm oldFunctionKeys resource is false).
|
||||
# Alternatively, the same scheme with old-style function keys as in xterm-r6
|
||||
@ -5588,6 +5607,16 @@ xterm+direct16|xterm with direct-color indexing (16-color building-block),
|
||||
%;%;m,
|
||||
setb@, setf@, use=xterm+direct,
|
||||
|
||||
xterm+indirect16|xterm with direct-color indexing (16-color old legacy b-b),
|
||||
CO#16,
|
||||
setab=\E[%?%p1%{8}%<%t4%p1%d%e%?%p1%{16}%<%t%p1%{92}%+%d%e48
|
||||
;2;%p1%{65536}%/%d;%p1%{256}%/%{255}%&%d;%p1%{255}%&%d
|
||||
%;%;m,
|
||||
setaf=\E[%?%p1%{8}%<%t3%p1%d%e%?%p1%{16}%<%t%p1%'R'%+%d%e38;
|
||||
2;%p1%{65536}%/%d;%p1%{256}%/%{255}%&%d;%p1%{255}%&%d
|
||||
%;%;m,
|
||||
setb@, setf@, use=xterm+direct,
|
||||
|
||||
xterm-direct16|xterm with direct-colors and 16 indexed colors,
|
||||
use=xterm+direct16, use=xterm,
|
||||
|
||||
@ -5732,7 +5761,7 @@ xterm-sco|xterm with SCO function keys,
|
||||
xterm-vt220|xterm emulating VT220,
|
||||
npc,
|
||||
kcbt=\E[Z, kend=\E[4~, khome=\E[1~, kmous=\E[M, nel=\EE,
|
||||
use=xterm+app, use=xterm+edit, use=vt220+keypad,
|
||||
use=xterm+app, use=xterm+edit, use=vt100+keypad,
|
||||
use=ecma+italics, use=ecma+index, use=ansi+rep,
|
||||
use=ecma+strikeout, use=vt220+sfkeys,
|
||||
use=xterm+r5+fkeys, use=xterm+focus, use=xterm+sm+1006,
|
||||
@ -6069,7 +6098,7 @@ xtermm|xterm terminal emulator (monochrome),
|
||||
tbc=\E[3g, use=ansi+apparrows, use=ansi+csr,
|
||||
use=ansi+cup, use=ansi+erase, use=ansi+idl,
|
||||
use=ansi+local, use=ansi+sgrso, use=decid+cpr,
|
||||
use=vt100+fnkeys,
|
||||
use=vt100+fnkeys-sco,
|
||||
|
||||
xtermc|xterm terminal emulator (color),
|
||||
ncv#7,
|
||||
@ -6134,7 +6163,7 @@ color_xterm|cx|cx100|color_xterm color terminal emulator for X,
|
||||
use=ecma+underline, use=ecma+standout,
|
||||
use=xterm+r5+fkeys, use=ansi+apparrows, use=ansi+csr,
|
||||
use=ansi+cup, use=ansi+idl, use=ansi+local,
|
||||
use=decid+cpr, use=ecma+color, use=vt220+keypad,
|
||||
use=decid+cpr, use=ecma+color, use=vt100+keypad,
|
||||
|
||||
# The IRAF source has a terminfo using "xterm-r5", but line-drawing does not
|
||||
# work in that case. This entry uses xterm+acs, to work around that problem.
|
||||
@ -6387,9 +6416,9 @@ vte-2018|VTE 0.51.2,
|
||||
rep=%p1%c\E[%p2%{1}%-%db,
|
||||
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;
|
||||
8%;%?%p1%p3%|%t;7%;m%?%p9%t\016%e\017%;,
|
||||
Rmol=\E[55m, Se=\E[1 q, Smol=\E[53m, Smulx=\E[4:%p1%dm,
|
||||
use=xterm+alt+title, use=xterm+tmux, use=kitty+setal,
|
||||
use=vte-2017,
|
||||
Se=\E[1 q, Smulx=\E[4:%p1%dm, use=xterm+alt+title,
|
||||
use=xterm+tmux, use=kitty+setal, use=vte-2017,
|
||||
use=ecma+overline,
|
||||
|
||||
# Summarizing as of March 2022, these terminfo-capabilities of xterm are
|
||||
# absent from VTE:
|
||||
@ -6497,7 +6526,7 @@ mgt|Multi GNOME Terminal,
|
||||
# or not is debatable).
|
||||
kvt|KDE terminal,
|
||||
bce, km@,
|
||||
kdch1=^?, kend=\E[F, khome=\E[H, use=linux+kbs,
|
||||
kdch1=^?, use=linux+kbs, use=vt100+noapp+pc,
|
||||
use=xterm-color,
|
||||
|
||||
# Konsole 1.0.1 (2001/11/25)
|
||||
@ -6565,11 +6594,11 @@ konsole-base|KDE console window (common),
|
||||
%p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
|
||||
sgr0=\E[0m\017, smam=\E[?7h, rv=\E\\[>1;115;0c,
|
||||
xr=\EP>\\|Konsole ([1-9][.0-9])\E\\\\,
|
||||
use=ecma+underline, use=ecma+standout, use=ansi+rca2,
|
||||
use=ansi+sgrdim, use=ecma+index, use=xterm+focus,
|
||||
use=xterm+sm+1006, use=ecma+strikeout,
|
||||
use=ecma+italics, use=ecma+color, use=xterm-r6,
|
||||
use=vt220+cvis, use=bracketed+paste,
|
||||
use=ecma+overline, use=ecma+underline,
|
||||
use=ecma+standout, use=ansi+rca2, use=ansi+sgrdim,
|
||||
use=ecma+index, use=xterm+focus, use=xterm+sm+1006,
|
||||
use=ecma+strikeout, use=ecma+italics, use=ecma+color,
|
||||
use=xterm-r6, use=vt220+cvis, use=bracketed+paste,
|
||||
use=report+version, use=xterm+pc+edit,
|
||||
|
||||
# The keytab feature was introduced in 0.9.12 (February 2000) with "linux" and
|
||||
@ -6730,7 +6759,7 @@ mlterm3|multi lingual terminal emulator 3.x,
|
||||
use=ecma+strikeout, use=xterm+app, use=xterm+pcf2,
|
||||
use=xterm+pcc2, use=xterm+pce2, use=xterm+meta,
|
||||
use=xterm+alt+title, use=xterm+sm+1006,
|
||||
use=vt100+pfkeys, use=bracketed+paste, use=mlterm2,
|
||||
use=vt100+pfkeys-sco, use=bracketed+paste, use=mlterm2,
|
||||
use=report+version,
|
||||
|
||||
# This is mlterm 2.9.3's mlterm.ti, with some additions/corrections -TD
|
||||
@ -6834,7 +6863,7 @@ rxvt-basic|rxvt terminal base (X Window System),
|
||||
use=ecma+underline, use=ecma+standout, use=ansi+csr,
|
||||
use=ansi+idl, use=ansi+local, use=xterm+alt47,
|
||||
use=vt100+enq, use=vt100+4bsd, use=rxvt+pcfkeys,
|
||||
use=vt220+cvis, use=vt220+keypad,
|
||||
use=vt220+cvis, use=vt100+keypad,
|
||||
|
||||
# Key Codes from rxvt reference:
|
||||
#
|
||||
@ -7264,7 +7293,7 @@ mvterm|vv100|SwitchTerm aka mvTERM,
|
||||
%;m%?%p9%t\016%e\017%;,
|
||||
sgr0=\E[m\017, smkx=\E[?1h\E=, smso=\E[7m, use=ansi+csr,
|
||||
use=ansi+idl, use=ansi+local, use=ansi+sgrul,
|
||||
use=xterm+alt47, use=vt100+fnkeys, use=vt100+4bsd,
|
||||
use=xterm+alt47, use=vt100+fnkeys-sco, use=vt100+4bsd,
|
||||
use=x10term+sl,
|
||||
|
||||
#### MTERM
|
||||
@ -7493,7 +7522,7 @@ st-0.6|simpleterm 0.6,
|
||||
use=ecma+standout, use=ansi+apparrows, use=ansi+csr,
|
||||
use=ansi+enq, use=ansi+idl, use=ansi+inittabs,
|
||||
use=ansi+local, use=ansi+rca2, use=ansi+sgrbold,
|
||||
use=vt100+4bsd, use=vt100+pfkeys, use=vt220+pcedit,
|
||||
use=vt100+4bsd, use=vt100+pfkeys-sco, use=vt220+pcedit,
|
||||
use=ecma+index, use=xterm+alt1049, use=vt220+cvis,
|
||||
use=xterm+sl, use=ecma+italics, use=ecma+strikeout,
|
||||
use=bracketed+paste, use=xterm+pcf2,
|
||||
@ -8305,6 +8334,10 @@ wezterm|Wez's Terminal Emulator,
|
||||
use=xterm+alt+title, use=xterm+focus, use=xterm+pcc2,
|
||||
use=xterm+pce2, use=xterm+pcf2, use=xterm+sl-alt,
|
||||
use=xterm+sm+1006, use=xterm+tmux,
|
||||
wezterm-direct|Wez's Terminal Emulator with direct colors,
|
||||
use=xterm+direct, use=wezterm,
|
||||
wezterm-direct16|Wez's Terminal Emulator with direct colors (16 indexed),
|
||||
use=xterm+direct16, use=wezterm,
|
||||
|
||||
#### Contour
|
||||
# https://github.com/contour-terminal/contour
|
||||
@ -8390,18 +8423,18 @@ contour|contour-latest|Contour Terminal Emulator,
|
||||
sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p5%t;2%;
|
||||
%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m,
|
||||
sgr0=\E(B\E[m, smam=\E[?7h, smkx=\E[?1h,
|
||||
Cs=\E]12;%p1%s\E\\, E3=\E[3J, Rmol=\E[55m, Se=\E[ q,
|
||||
Smol=\E[53m, Smulx=\E[4:%p1%dm, Ss=\E[%p1%d q,
|
||||
Cs=\E]12;%p1%s\E\\, E3=\E[3J, Se=\E[ q,
|
||||
Smulx=\E[4:%p1%dm, Ss=\E[%p1%d q,
|
||||
xr=\EP>\\|contour ([0-9]\\.[0-9]\\.[0-9])\E\\\\,
|
||||
use=ecma+underline, use=ecma+standout,
|
||||
use=ansi+apparrows, use=ansi+cup, use=ansi+csr,
|
||||
use=ansi+enq, use=ansi+erase, use=ansi+idc, use=ansi+idl,
|
||||
use=ansi+inittabs, use=ansi+local, use=ansi+rca2,
|
||||
use=ansi+sgrbold, use=bracketed+paste, use=dec+sl,
|
||||
use=ecma+index, use=vt220+cvis, use=ecma+strikeout,
|
||||
use=xterm+256color, use=xterm+acs, use=xterm+alt1049,
|
||||
use=xterm+pcc2, use=xterm+pce2, use=xterm+pcf2,
|
||||
use=report+version,
|
||||
use=ecma+index, use=ecma+overline, use=vt220+cvis,
|
||||
use=ecma+strikeout, use=xterm+256color, use=xterm+acs,
|
||||
use=xterm+alt1049, use=xterm+pcc2, use=xterm+pce2,
|
||||
use=xterm+pcf2, use=report+version,
|
||||
|
||||
contour-direct|Contour terminal with direct colors,
|
||||
use=xterm+direct, use=contour,
|
||||
@ -8866,7 +8899,7 @@ screen.rxvt|screen in rxvt,
|
||||
bw, XT,
|
||||
cvvis@, flash@, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
|
||||
kcuu1=\EOA, use=screen+fkeys, use=vt100+enq,
|
||||
use=rxvt+pcfkeys, use=xterm+x11mouse, use=vt220+keypad,
|
||||
use=rxvt+pcfkeys, use=xterm+x11mouse, use=vt100+keypad,
|
||||
use=screen,
|
||||
screen.Eterm|screen in Eterm,
|
||||
use=xterm+x11mouse, use=screen+fkeys, use=Eterm,
|
||||
@ -12493,7 +12526,7 @@ tvi9065|TeleVideo 9065,
|
||||
dl=\E[%p1%dM, dl1=\ER, dsl=\E_30\r, ech=\E[%p1%d@, ed=\EY,
|
||||
el=\ET, flash=\Eb$<15>\Ed, fsl=\r, home=^^, ht=^I, hts=\E1,
|
||||
ich=\E[%p1%d@, if=/usr/share/tabset/stdcrt,
|
||||
il=\E[%p1%dL, il1=\EE, ind=\n, invis=\EG1, ip=$<3>,
|
||||
il=\E[%p1%dL, il1=\EE, ind=\n, ip=$<3>,
|
||||
is1=\E"\E%\E'\E(\EG@\EO\EX\E[=5l\E[=6l\E[=7h\Ed\Er,
|
||||
is2=\EF2\EG0\E\\L, is3=\E<\E[=4l\E[=8h, kHOM=\E\s\s\s,
|
||||
kbs=^H, kcbt=\EI, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K,
|
||||
@ -12505,10 +12538,10 @@ tvi9065|TeleVideo 9065,
|
||||
pfloc=\E|%p1%{48}%+%c2%p2%s\031,
|
||||
pfx=\E|%p1%{48}%+%c1%p2%s\031,
|
||||
pln=\E_%p1%{63}%+%c%p2%s\r, prot=\E&,
|
||||
rep=\E[%p2%db%p1%c, rev=\EG4,
|
||||
rf=/usr/share/tabset/stdcrt, ri=\Ej, rmacs=\E%%,
|
||||
rmam=\E[=7l, rmcup=\E.3\Er\E[1;25r\E[25;0H, rmdc=\0,
|
||||
rmir=\Er, rmln=\E[4;1v, rmso=\EG0, rmul=\EG0, rmxon=^N,
|
||||
rep=\E[%p2%db%p1%c, rf=/usr/share/tabset/stdcrt,
|
||||
ri=\Ej, rmacs=\E%%, rmam=\E[=7l,
|
||||
rmcup=\E.3\Er\E[1;25r\E[25;0H, rmdc=\0, rmir=\Er,
|
||||
rmln=\E[4;1v, rmso=\EG0, rmxon=^N,
|
||||
rs1=\EC\EDF\E[0;0v\E[8;1v\E[=65l,
|
||||
rs2=\E.b\E[10;20v\E[14;1v\E[3;0v\E[7;0v\E[=11.h\E[=12.h\E[=1
|
||||
3.h\E[=14.h\E[=15l\E[=20h\E[=60l\E[=61h\E[=9l\E[=10l\E[=
|
||||
@ -12520,9 +12553,9 @@ tvi9065|TeleVideo 9065,
|
||||
%?%p5%t\EGp%;%?%p6%t\EG\,%;%?%p7%t\EG1%;%?%p8%t\E&%;%?
|
||||
%p9%t\E$%e\E%%%;,
|
||||
sgr0=\EG0\E%, smacs=\E$, smam=\E=7h, smcup=\E.2, smdc=\Er,
|
||||
smir=\Eq, smln=\E[4;2v, smso=\EGt, smul=\EG8, smxon=^O,
|
||||
tbc=\E3, tsl=\E[4;1v\E_30, uc=\EG8\EG0, use=ansi+local,
|
||||
use=ecma+index,
|
||||
smir=\Eq, smln=\E[4;2v, smso=\EGt, smxon=^O, tbc=\E3,
|
||||
tsl=\E[4;1v\E_30, uc=\EG8\EG0, use=adm+sgr,
|
||||
use=ansi+local, use=ecma+index,
|
||||
|
||||
#### Visual (vi)
|
||||
#
|
||||
@ -13324,7 +13357,7 @@ wy75|wyse75|Wyse 75,
|
||||
smkx=\E[?1l\E[?7h\E=, smso=\E[1t\E[7m, smul=\E[2t\E[4m,
|
||||
tsl=\E[>\,\001, use=ansi+arrows, use=ansi+cup,
|
||||
use=ansi+local, use=ansi+pp, use=ansi+tabs,
|
||||
use=decid+cpr, use=vt220+cvis, use=vt220+keypad,
|
||||
use=decid+cpr, use=vt220+cvis, use=vt100+keypad,
|
||||
use=vt220+sfkeys, use=vt220+ufkeys,
|
||||
#
|
||||
# This terminal description uses the non-hidden attribute mode
|
||||
@ -13385,7 +13418,7 @@ wy85|wyse85|Wyse 85,
|
||||
use=ansi+csr, use=ansi+inittabs, use=ansi+local,
|
||||
use=ansi+pp, use=ansi+sgrbold, use=decid+cpr,
|
||||
use=vt100+4bsd, use=vt220+vtedit, use=vt220+cvis,
|
||||
use=vt220+keypad, use=vt220+sfkeys, use=vt220+ufkeys,
|
||||
use=vt100+keypad, use=vt220+sfkeys, use=vt220+ufkeys,
|
||||
#
|
||||
# Wyse 85 with visual bell.
|
||||
wy85-vb|wyse85-vb|Wyse 85 with visible bell,
|
||||
@ -13439,7 +13472,7 @@ wy85-8bit|wyse85-8bit|Wyse 85 in 8-bit mode,
|
||||
tsl=\E[40h\E7\E[25;%i%p1%dH, use=ansi+csr,
|
||||
use=ansi+inittabs, use=ansi+local, use=ansi+pp,
|
||||
use=ansi+sgrbold, use=decid+cpr, use=vt100+4bsd,
|
||||
use=vt100+pfkeys, use=vt220+cvis,
|
||||
use=vt100+pfkeys-sco, use=vt220+cvis,
|
||||
#
|
||||
# Wyse 185 emulating a VT320 7 bit mode.
|
||||
#
|
||||
@ -13476,7 +13509,7 @@ wy185|wyse185|Wyse 185,
|
||||
use=ecma+underline, use=ecma+standout, use=ansi+arrows,
|
||||
use=ansi+inittabs, use=ansi+local, use=ansi+pp,
|
||||
use=ansi+sgrbold, use=decid+cpr, use=vt100+4bsd,
|
||||
use=vt220+vtedit, use=vt220+keypad, use=vt220+sfkeys,
|
||||
use=vt220+vtedit, use=vt100+keypad, use=vt220+sfkeys,
|
||||
use=vt220+ufkeys, use=wyse+cvis,
|
||||
#
|
||||
# Wyse 185 with 24 data lines and top status (terminal status)
|
||||
@ -13675,7 +13708,7 @@ wy370|wyse370|wy370-101k|Wyse 370 with 101 key keyboard,
|
||||
wy370-105k|Wyse 370 with 105 key keyboard,
|
||||
kfnd=\E[1~, khlp=\E[28~, khome=\E[26~, lf1=PF1, lf2=PF2,
|
||||
lf3=PF3, lf4=PF4, use=ansi+arrows, use=vt220+vtedit,
|
||||
use=wy370-nk, use=vt220+keypad, use=vt220+sfkeys,
|
||||
use=wy370-nk, use=vt100+keypad, use=vt220+sfkeys,
|
||||
use=vt220+ufkeys,
|
||||
#
|
||||
# Function key set for the PC compatible keyboard
|
||||
@ -13801,7 +13834,7 @@ wy520|wyse520|Wyse 520,
|
||||
use=ecma+underline, use=ansi+arrows, use=ansi+csr,
|
||||
use=ansi+cup, use=ansi+local, use=ansi+pp,
|
||||
use=ansi+sgrbold, use=ansi+tabs, use=decid+cpr,
|
||||
use=vt220+vtedit, use=vt220+keypad, use=vt220+sfkeys,
|
||||
use=vt220+vtedit, use=vt100+keypad, use=vt220+sfkeys,
|
||||
use=vt220+ufkeys, use=wyse+cvis,
|
||||
#
|
||||
# Wyse 520 with 24 data lines and status (terminal status)
|
||||
@ -14342,7 +14375,7 @@ v5410|att5410 in terms of a VT100,
|
||||
sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=,
|
||||
smso=\E[1;7m$<2>, smul=\E[4m$<2>, tbc=\E[3g,
|
||||
use=ansi+csr, use=ansi+idl1, use=decid+cpr,
|
||||
use=vt100+fnkeys,
|
||||
use=vt100+fnkeys-sco,
|
||||
|
||||
#
|
||||
# Teletype Model 5420 -- A souped up 5410, with multiple windows,
|
||||
@ -17791,7 +17824,7 @@ ts100|ts100-sp|Falco ts100-sp,
|
||||
rmkx=\E[?1l\E>,
|
||||
rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, smam=\E[?7h,
|
||||
smkx=\E[?1h\E=, use=ansi+csr, use=ansi+local,
|
||||
use=decid+cpr, use=vt100+4bsd, use=vt100+fnkeys,
|
||||
use=decid+cpr, use=vt100+4bsd, use=vt100+fnkeys-sco,
|
||||
|
||||
ts100-ctxt|Falco ts-100 saving context,
|
||||
rmcup=\E~_b, smcup=\E~_d\E[2J, use=ts100,
|
||||
@ -19573,7 +19606,7 @@ ncr260vppp|NCR 2900/260 viewpoint,
|
||||
cup=\EY%p1%{32}%+%c%p2%{32}%+%c$<5>, cuu1=\032$<2>,
|
||||
dch1=\EW$<2>, dim=\EGp, dl1=\El$<2>, ed=\Ek$<2>,
|
||||
el=\EK$<2>, home=\036$<2>, ht=^I, hts=\E1, il1=\EM$<2>,
|
||||
ind=\n$<2>, invis=\EG1,
|
||||
ind=\n$<2>,
|
||||
is2=\Ee6\E~%$<100>\E+\E`:\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0
|
||||
\EcC1\Ee7$<100>,
|
||||
kDC=\El, kEND=\Ek, kHOM=^A, kPRT=\E7, kRIT=^F, ka1=^A, ka3=\EJ,
|
||||
@ -19588,12 +19621,12 @@ ncr260vppp|NCR 2900/260 viewpoint,
|
||||
kf9=^B9\r, khome=^A, kich1=\Eq, knp=\EJ, kpp=\EJ, kprt=\EP,
|
||||
ll=\001$<5>, mc0=\EP$<100>, mc4=^T, mc5=^R,
|
||||
mrcup=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<5>,
|
||||
nel=\037$<2>, rev=\EG4, ri=\Ej$<2>, rmacs=\EcB0\EH\003,
|
||||
rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20,
|
||||
nel=\037$<2>, ri=\Ej$<2>, rmacs=\EcB0\EH\003, rmir=\Er,
|
||||
rmxon=\Ec20,
|
||||
rs2=\Ee6\E~%$<100>\E+\E`:\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0
|
||||
\EcC1\Ee7$<100>,
|
||||
sgr0=\EG0\EH\003, smacs=\EcB1\EH\002, smir=\Eq,
|
||||
smso=\EG4, smul=\EG8, smxon=\Ec21, use=ncr260vp+sl,
|
||||
smxon=\Ec21, use=adm+sgr, use=ncr260vp+sl,
|
||||
|
||||
ncr260vp+sl|NCR 2900/260 viewpoint with status-line,
|
||||
hs,
|
||||
@ -19636,7 +19669,7 @@ ncr260vt100an|NCR 2900/260 VT100 with ANSI keyboard,
|
||||
smkx=\E[?1h\E=, smso=\E[1;7m, tbc=\E[3g,
|
||||
vpa=\E[%p1%dd$<40>, use=ansi+csr, use=ansi+sgrbold,
|
||||
use=decid+cpr, use=vt220+vtedit, use=vt220+cvis,
|
||||
use=vt220+keypad, use=ncr260vt+sl,
|
||||
use=vt100+keypad, use=ncr260vt+sl,
|
||||
|
||||
ncr260vt+sl|NCR 2900/260 VT100 status line,
|
||||
hs,
|
||||
@ -19697,7 +19730,7 @@ ncr260vt200an|NCR 2900/260 VT200 with ANSI keyboard,
|
||||
smir=\E[4h, smkx=\E[?1h\E=, tbc=\E[3g,
|
||||
vpa=\E[%p1%dd$<40>, use=ecma+underline,
|
||||
use=ecma+standout, use=ansi+sgrbold, use=decid+cpr,
|
||||
use=vt220+vtedit, use=vt220+cvis, use=vt220+keypad,
|
||||
use=vt220+vtedit, use=vt220+cvis, use=vt100+keypad,
|
||||
use=ncr260vt+sl, use=vt220+sfkeys, use=vt220+ufkeys,
|
||||
|
||||
ncr260vt200wan|NCR 2900/260 VT200 wide mode ANSI keyboard,
|
||||
@ -19752,7 +19785,7 @@ ncr260vt300an|NCR 2900/260 VT300 with ANSI keyboard,
|
||||
smir=\E[4h, smkx=\E[?1h\E=, tbc=\E[3g,
|
||||
vpa=\E[%p1%dd$<40>, use=ecma+underline,
|
||||
use=ecma+standout, use=ansi+sgrbold, use=decid+cpr,
|
||||
use=vt220+vtedit, use=vt220+cvis, use=vt220+keypad,
|
||||
use=vt220+vtedit, use=vt220+cvis, use=vt100+keypad,
|
||||
use=ncr260vt+sl, use=vt220+sfkeys, use=vt220+ufkeys,
|
||||
|
||||
ncr260vt300wan|NCR 2900/260 VT300 wide mode ANSI keyboard,
|
||||
@ -19799,7 +19832,7 @@ ncr260wy325pp|NCR 2900/260 Wyse 325,
|
||||
cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<10>, cuu1=\013$<5>,
|
||||
cvvis=\E`5, dch1=\EW$<50>, dl1=\ER$<5>, ed=\Ey$<5>,
|
||||
el=\Et$<5>, home=\036$<5>, ht=^I, hts=\E1, il1=\EE$<5>,
|
||||
ind=\n$<5>, invis=\EG1,
|
||||
ind=\n$<5>,
|
||||
is2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`:\E`@\E~!\E"\Ee4\Ex@\E`9
|
||||
\Ee7$<100>,
|
||||
kDC=\ER, kEND=\EY, kHOM=\E{, kNXT=\EK, kPRT=\E7, kPRV=\EJ,
|
||||
@ -19812,8 +19845,8 @@ ncr260wy325pp|NCR 2900/260 Wyse 325,
|
||||
kf32=^Ao\r, khome=^^, kich1=\Eq, knp=\EK, kpp=\EJ, kprt=\EP,
|
||||
mc0=\EP, mc4=^T, mc5=^R,
|
||||
mrcup=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<10>,
|
||||
nel=\037$<5>, rev=\EG4, ri=\Ej$<5>, rmacs=\EH\003\EcB0,
|
||||
rmam=\Ed., rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20,
|
||||
nel=\037$<5>, ri=\Ej$<5>, rmacs=\EH\003\EcB0, rmam=\Ed.,
|
||||
rmir=\Er, rmxon=\Ec20,
|
||||
rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`:\E`@\E~!\E"\Ee4\Ex@\E`9
|
||||
\Ee7$<100>,
|
||||
setb=\s,
|
||||
@ -19824,7 +19857,7 @@ ncr260wy325pp|NCR 2900/260 Wyse 325,
|
||||
%{60}%e%p1%{12}%=%t%{61}%e%p1%{13}%=%t%{62}%e%p1%{14}%=
|
||||
%t%{63}%e%p1%{15}%=%t%{56}%;\Edy%c11$<100>,
|
||||
sgr0=\EG0\EcB0\EcD$<15>, smacs=\EH\002\EcB1, smam=\Ed/,
|
||||
smir=\Eq, smso=\EGt, smul=\EG8, smxon=\Ec21, tbc=\E0,
|
||||
smir=\Eq, smso=\EGt, smxon=\Ec21, tbc=\E0, use=adm+sgr,
|
||||
use=ncr260vp+sl, use=tvi920b+fn, use=ansi+arrows,
|
||||
use=ansi+apparrows,
|
||||
ncr260wy325wpp|NCR 2900/260 Wyse 325 wide mode,
|
||||
@ -19898,7 +19931,7 @@ ncr260wy50+pp|NCR 2900/260 Wyse 50+,
|
||||
cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<30>, cuu1=\013$<5>,
|
||||
cvvis=\E`5, dch1=\EW$<50>, dim=\EGp, dl1=\ER$<5>,
|
||||
ed=\EY$<5>, el=\ET$<5>, home=\036$<10>, ht=\011$<5>,
|
||||
hts=\E1$<5>, il1=\EE$<5>, ind=\n$<5>, invis=\EG1,
|
||||
hts=\E1$<5>, il1=\EE$<5>, ind=\n$<5>,
|
||||
is2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`:\E`@\E~!\E"
|
||||
\Ee4\Ex@\E`9\Ee7$<100>,
|
||||
kDC=\ER, kEND=\EY, kHOM=\E{, kPRT=\E7, kRIT=^L, ka1=^^, kbs=^H,
|
||||
@ -19913,12 +19946,12 @@ ncr260wy50+pp|NCR 2900/260 Wyse 50+,
|
||||
khome=^^, kich1=\Eq, knp=\EK, kpp=\EJ, kprt=\EP,
|
||||
mc0=\EP$<10>, mc4=^T, mc5=^R,
|
||||
mrcup=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<10>,
|
||||
nel=\037$<5>, rev=\EG4, ri=\Ej$<5>, rmacs=\EH^C, rmam=\Ed.,
|
||||
rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20,
|
||||
nel=\037$<5>, ri=\Ej$<5>, rmacs=\EH^C, rmam=\Ed., rmir=\Er,
|
||||
rmxon=\Ec20,
|
||||
rs2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`:\E`@\E~!\E"
|
||||
\Ee4\Ex@\E`9\Ee7$<100>,
|
||||
sgr0=\EG0\EH\003$<15>, smacs=\EH^B, smam=\Ed/, smir=\Eq,
|
||||
smso=\EGt, smul=\EG8, smxon=\Ec21, tbc=\E0$<5>,
|
||||
smso=\EGt, smxon=\Ec21, tbc=\E0$<5>, use=adm+sgr,
|
||||
use=ncr260vp+sl,
|
||||
ncr260wy50+wpp|NCR 2900/260 Wyse 50+ wide mode,
|
||||
cols#132,
|
||||
@ -19937,7 +19970,7 @@ ncr260wy60pp|NCR 2900/260 Wyse 60,
|
||||
cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<10>, cuu1=\013$<5>,
|
||||
cvvis=\E`5, dch1=\EW$<50>, dl1=\ER$<5>, ed=\Ey$<5>,
|
||||
el=\Et$<5>, home=\036$<25>, ht=\011$<15>, hts=\E1$<15>,
|
||||
il1=\EE$<5>, ind=\n$<5>, invis=\EG1,
|
||||
il1=\EE$<5>, ind=\n$<5>,
|
||||
is2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`:\E`@\E~!\E"
|
||||
\Ee4\Ex@\E`9\Ee7$<100>,
|
||||
kDC=\ER, kEND=\EY, kHOM=\E{, kNXT=\EK, kPRT=\E7, kPRV=\EJ,
|
||||
@ -19952,13 +19985,13 @@ ncr260wy60pp|NCR 2900/260 Wyse 60,
|
||||
kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^,
|
||||
kich1=\Eq, knp=\EK, kpp=\EJ, kprt=\EP, mc0=\EP, mc4=^T, mc5=^R,
|
||||
mrcup=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<30>,
|
||||
nel=\037$<5>, rev=\EG4, ri=\Ej$<5>, rmacs=\EH^C, rmam=\Ed.,
|
||||
rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20,
|
||||
nel=\037$<5>, ri=\Ej$<5>, rmacs=\EH^C, rmam=\Ed., rmir=\Er,
|
||||
rmxon=\Ec20,
|
||||
rs2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`:\E`@\E~!\E"
|
||||
\Ee4\Ex@\E`9\Ee7$<100>,
|
||||
sgr0=\EG0\EcB0\EcD$<15>, smacs=\EH^B, smam=\Ed/,
|
||||
smir=\Eq, smso=\EGt, smul=\EG8, smxon=\Ec21, tbc=\E0$<15>,
|
||||
use=ncr260vp+sl,
|
||||
smir=\Eq, smso=\EGt, smxon=\Ec21, tbc=\E0$<15>,
|
||||
use=adm+sgr, use=ncr260vp+sl,
|
||||
ncr260wy60wpp|NCR 2900/260 Wyse 60 wide mode,
|
||||
cols#132,
|
||||
cup=\Ea%i%p1%dR%p2%dC$<30>,
|
||||
@ -20194,10 +20227,10 @@ ndr9500-25-nl|NDR 9500 with 25 lines and no status line,
|
||||
ndr9500-mc|NDR 9500 with magic cookies (enables underline inverse video invisible and blink),
|
||||
msgr@,
|
||||
xmc#1,
|
||||
blink=\EG2, invis=\EG1, rev=\EG4, rmso=\EG0, rmul=\EG0,
|
||||
blink=\EG2, rmso=\EG0,
|
||||
sgr=\E%%\E(%?%p5%p8%|%t\E)%;%?%p9%t\E$%;\EG%{48}%?%p7%t%{1}
|
||||
%+%;%?%p4%t%{2}%+%;%?%p3%p1%|%t%{4}%+%;%?%p2%t%{8}%+%;%c,
|
||||
smso=\EG4, smul=\EG8, use=ndr9500,
|
||||
smso=\EG4, use=ndr9500, use=adm+sgr,
|
||||
|
||||
ndr9500-25-mc|NDR 500 with 25 lines and magic cookies,
|
||||
lines#25, use=ndr9500-mc,
|
||||
@ -20531,7 +20564,7 @@ tek4105-30|Tektronix 4015 emulating 30 line VT100,
|
||||
kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rmam=\E[?7l,
|
||||
rmkx=\E[?1l\E>, rmso=\E[m$<2>, smam=\E[?7h,
|
||||
smkx=\E[?1h\E=, use=ansi+csr, use=ansi+local,
|
||||
use=vt100+4bsd, use=vt100+fnkeys,
|
||||
use=vt100+4bsd, use=vt100+fnkeys-sco,
|
||||
|
||||
# Tektronix 4105 from BRL
|
||||
# The following setup modes are assumed for normal operation:
|
||||
@ -24446,7 +24479,7 @@ xtalk|IBM PC with xtalk communication program (versions up to 3.4),
|
||||
rmkx=\E[?1l\E>, rmso=\E[m\s,
|
||||
rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sgr0=\E[m,
|
||||
smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m\s,
|
||||
tbc=\E[3g, use=ansi+local, use=vt100+fnkeys,
|
||||
tbc=\E[3g, use=ansi+local, use=vt100+fnkeys-sco,
|
||||
|
||||
# The official PC terminal emulator program of the AT&T Product Centers.
|
||||
# Note - insert mode commented out - doesn't seem to work on AT&T PC.
|
||||
@ -25499,7 +25532,7 @@ v3220|LANPAR Vision II model 3220/3221/3222,
|
||||
# https://invisible-island.net/ncurses/ncurses-netbsd.html
|
||||
#
|
||||
# ncurses makes explicit checks for a few user-definable capabilities: AX, E3,
|
||||
# RGB, U8, XM, which are documented in the user_caps(5) manual page.
|
||||
# NQ, RGB, U8, XM, xm, which are documented in the user_caps(5) manual page.
|
||||
#
|
||||
#### SCREEN Extensions:
|
||||
#
|
||||
@ -25575,11 +25608,36 @@ v3220|LANPAR Vision II model 3220/3221/3222,
|
||||
#
|
||||
# These are the extended keys defined in this file:
|
||||
#
|
||||
# kDC3 kDC4 kDC5 kDC6 kDC7 kDN kDN3 kDN4 kDN5 kDN6 kDN7 kEND3 kEND4 kEND5 kEND6
|
||||
# kEND7 kHOM3 kHOM4 kHOM5 kHOM6 kHOM7 kIC3 kIC4 kIC5 kIC6 kIC7 kLFT3 kLFT4
|
||||
# kLFT5 kLFT6 kLFT7 kNXT3 kNXT4 kNXT5 kNXT6 kNXT7 kPRV3 kPRV4 kPRV5 kPRV6 kPRV7
|
||||
# kRIT3 kRIT4 kRIT5 kRIT6 kRIT7 kUP kUP3 kUP4 kUP5 kUP6 kUP7 kxIN kxOUT ka2 kb1
|
||||
# kb3 kc2
|
||||
# alt_{A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z} Alt + key
|
||||
# kDC{3|4|5|6|7} modifier + delete-character
|
||||
# kDN shifted cursor-down
|
||||
# kDN{3|4|5|6|7} modifier + cursor-down
|
||||
# kEND{3|4|5|6|7|8} modifier + end
|
||||
# kF{1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16} shifted function-key
|
||||
# kHOM{3|4|5|6|7|8} modifier + home
|
||||
# kIC{3|4|5|6|7} modifier + insert-character
|
||||
# kLFT{3|4|5|6|7} modifier + cursor-left
|
||||
# kNXT{3|4|5|6|7} modifier + next
|
||||
# kPRV{3|4|5|6|7} modifier + previous
|
||||
# kRIT{3|4|5|6|7} modifier + cursor-right
|
||||
# kUP shifted cursor-up
|
||||
# kUP{3|4|5|6|7} modifier + cursor-up
|
||||
# ka2 keypad key between ka1 and ka3
|
||||
# kb1 keypad key left of kb2
|
||||
# kb3 keypad key right of kb2
|
||||
# kc2 keypad key between kc1 and kc3
|
||||
# kcbt{2} modifier + tab-key
|
||||
# kp{1|2|3|4|5|6|7|8|9} numbered keypad keys
|
||||
# kpADD keypad "+"
|
||||
# kpCMA keypad ","
|
||||
# kpDIV keypad "/"
|
||||
# kpDOT keypad "."
|
||||
# kpMUL keypad "*"
|
||||
# kpNUM keypad NumLock
|
||||
# kpSUB keypad "-"
|
||||
# kpZRO keypad "0"
|
||||
# kxIN xterm focus-in
|
||||
# kxOUT xterm focus-out
|
||||
#
|
||||
# Bracketed paste is described with these capabilities in vim:
|
||||
#
|
||||
@ -27998,4 +28056,27 @@ v3220|LANPAR Vision II model 3220/3221/3222,
|
||||
# 2025-07-19
|
||||
# + add xterm+keypad to pccon+base -TD
|
||||
#
|
||||
# 2026-01-03
|
||||
# + cancel ncv in putty (patch by Jakub Horky)
|
||||
# + add NQ to list of user-definable capabilities in user_caps(5) (patch
|
||||
# by Jakub Horky)
|
||||
#
|
||||
# 2026-01-17
|
||||
# + 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
|
||||
#
|
||||
# 2026-01-24
|
||||
# + add xterm+indirect16, vt100+keypad+emul, putty-direct,
|
||||
# putty-direct16, wezterm-direct, wezterm-direct16
|
||||
# (patch by Jakub Horky)
|
||||
# + add Smol/Rmol to ms-terminal, konsole, iTerm2 (report by Jared
|
||||
# Finder)
|
||||
# + add ecma+overline -TD
|
||||
#
|
||||
######## SHANTIH! SHANTIH! SHANTIH!
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# $Id: Makefile.in,v 1.194 2025/10/25 17:29:43 tom Exp $
|
||||
# $Id: Makefile.in,v 1.198 2026/01/14 08:52:45 tom Exp $
|
||||
##############################################################################
|
||||
# Copyright 2018-2024,2025 Thomas E. Dickey #
|
||||
# Copyright 2018-2025,2026 Thomas E. Dickey #
|
||||
# Copyright 1998-2017,2018 Free Software Foundation, Inc. #
|
||||
# #
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a #
|
||||
@ -201,14 +201,18 @@ TEST_DEPS = ../lib/@LIB_PREFIX@ncurses@DFT_DEP_SUFFIX@
|
||||
TEST_ARGS = @LDFLAGS_STATIC@ @TEST_ARGS@ @LDFLAGS_SHARED@
|
||||
TEST_LDFLAGS = @LD_MODEL@ $(TEST_ARGS) @LIBS@ @LOCAL_LDFLAGS@ @LDFLAGS@
|
||||
|
||||
# Unlike the other test-programs, lib_mvcur uses internal functions which
|
||||
# are not exported when using versioned symbols, as well as objects from
|
||||
# the progs directory.
|
||||
TEST_INTERNALS = lib_mvcur$x
|
||||
|
||||
TEST_PROGS = \
|
||||
captoinfo$x \
|
||||
hardscroll$x \
|
||||
hashmap$x \
|
||||
lib_mvcur$x \
|
||||
link_test$x \
|
||||
report_ctype$x \
|
||||
report_hashing$x
|
||||
report_hashing$x @NO_SHARED@ $(TEST_INTERNALS)
|
||||
|
||||
LOCAL_LIBDIR = @top_builddir@/lib
|
||||
|
||||
@ -342,12 +346,24 @@ realclean :: distclean
|
||||
# These rules build test-programs for the modules that have test-drivers
|
||||
@MAKE_PHONY@.PHONY : test_progs
|
||||
test_progs : $(TEST_PROGS)
|
||||
test_clean :
|
||||
-rm -f $(TEST_PROGS)
|
||||
|
||||
CAPTOINFO_DEPS = \
|
||||
../@DFT_OBJ_SUBDIR@/comp_scan$o
|
||||
|
||||
MVCUR_DEPS = \
|
||||
../@DFT_OBJ_SUBDIR@/captoinfo$o \
|
||||
../@DFT_OBJ_SUBDIR@/comp_expand$o \
|
||||
../@DFT_OBJ_SUBDIR@/comp_scan$o \
|
||||
../@DFT_OBJ_SUBDIR@/dump_entry$o \
|
||||
../@DFT_OBJ_SUBDIR@/write_entry$o
|
||||
|
||||
./link_test.c : $(base)/MKlib_gen.sh ../include/curses.h
|
||||
FGREP="@FGREP@" $(SHELL) -e $(base)/MKlib_gen.sh "$(CPP) $(CPPFLAGS)" "$(AWK)" implemented <../include/curses.h >$@
|
||||
|
||||
captoinfo$x : $(tinfo)/captoinfo.c $(TEST_DEPS)
|
||||
@ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DMAIN $(tinfo)/captoinfo.c $(TEST_LDFLAGS)
|
||||
captoinfo$x : $(tinfo)/captoinfo.c $(CAPTOINFO_DEPS) $(TEST_DEPS)
|
||||
@ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DMAIN $(tinfo)/captoinfo.c $(CAPTOINFO_DEPS) $(TEST_LDFLAGS)
|
||||
|
||||
hardscroll$x : $(serial)/hardscroll.c $(TEST_DEPS)
|
||||
@ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DSCROLLDEBUG $(serial)/hardscroll.c $(TEST_LDFLAGS)
|
||||
@ -355,13 +371,14 @@ hardscroll$x : $(serial)/hardscroll.c $(TEST_DEPS)
|
||||
hashmap$x : $(serial)/hashmap.c $(serial)/hardscroll.c $(TEST_DEPS)
|
||||
@ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DHASHDEBUG $(serial)/hashmap.c $(serial)/hardscroll.c $(TEST_LDFLAGS)
|
||||
|
||||
lib_mvcur$x : $(serial)/lib_mvcur.c $(TEST_DEPS) \
|
||||
../@DFT_OBJ_SUBDIR@/dump_entry$o
|
||||
@ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DNCURSES_TEST -I$(serial)/../../progs $(serial)/lib_mvcur.c ../@DFT_OBJ_SUBDIR@/dump_entry$o $(TEST_LDFLAGS)
|
||||
lib_mvcur$x : $(serial)/lib_mvcur.c $(MVCUR_DEPS) $(TEST_DEPS) \
|
||||
$(INCDIR)/tic.h \
|
||||
$(srcdir)/../progs/dump_entry.h
|
||||
@ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DNCURSES_TEST -I$(serial)/../../progs $(serial)/lib_mvcur.c $(MVCUR_DEPS) $(TEST_LDFLAGS)
|
||||
|
||||
link_test$x : ./link_test.c $(TEST_DEPS) \
|
||||
../@DFT_OBJ_SUBDIR@/link_test$o
|
||||
@ECHO_LD@ $(CC) -o $@ $(CFLAGS_DEFAULT) ../@DFT_OBJ_SUBDIR@/link_test$o $(TEST_LDFLAGS)
|
||||
@ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) ../@DFT_OBJ_SUBDIR@/link_test$o $(TEST_LDFLAGS)
|
||||
|
||||
../@DFT_OBJ_SUBDIR@/dump_entry$o:
|
||||
( cd ../progs && $(MAKE) ../@DFT_OBJ_SUBDIR@/dump_entry$o )
|
||||
@ -369,14 +386,14 @@ link_test$x : ./link_test.c $(TEST_DEPS) \
|
||||
report_ctype$x : \
|
||||
$(srcdir)/curses.priv.h \
|
||||
$(srcdir)/report_ctype.c $(TEST_DEPS)
|
||||
@ECHO_LD@ $(CC) -o $@ $(CFLAGS_DEFAULT) $(srcdir)/report_ctype.c $(TEST_LDFLAGS)
|
||||
@ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) $(srcdir)/report_ctype.c $(TEST_LDFLAGS)
|
||||
@echo "... made $@"
|
||||
./report_ctype$x
|
||||
|
||||
report_hashing$x : \
|
||||
$(srcdir)/curses.priv.h \
|
||||
$(srcdir)/report_hashing.c $(TEST_DEPS)
|
||||
@ECHO_LD@ $(CC) -o $@ $(CFLAGS_DEFAULT) $(srcdir)/report_hashing.c $(TEST_LDFLAGS)
|
||||
@ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) $(srcdir)/report_hashing.c $(TEST_LDFLAGS)
|
||||
|
||||
# Verify that each header-file can be compiled without including another.
|
||||
@MAKE_PHONY@.PHONY : check_headers
|
||||
|
||||
@ -2,10 +2,10 @@
|
||||
#
|
||||
# MKlib_gen.sh -- generate sources from curses.h macro definitions
|
||||
#
|
||||
# ($Id: MKlib_gen.sh,v 1.79 2025/02/23 01:55:06 tom Exp $)
|
||||
# ($Id: MKlib_gen.sh,v 1.80 2026/01/15 00:40:09 tom Exp $)
|
||||
#
|
||||
##############################################################################
|
||||
# Copyright 2018-2024,2025 Thomas E. Dickey #
|
||||
# Copyright 2018-2025,2026 Thomas E. Dickey #
|
||||
# Copyright 1998-2016,2017 Free Software Foundation, Inc. #
|
||||
# #
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a #
|
||||
@ -532,6 +532,53 @@ DECLARATIONS
|
||||
|
||||
EOF
|
||||
|
||||
# stack values:
|
||||
# 1 = constant-enabled
|
||||
# 0 = default enabled (either top-level or non-constant #if/#ifdef)
|
||||
# -1 = constant-disabled
|
||||
$AWK 'BEGIN{
|
||||
level = 0;
|
||||
stack[level] = 0;
|
||||
}
|
||||
/^#ifdef/{
|
||||
stack[++level] = 0;
|
||||
print;
|
||||
next;
|
||||
}
|
||||
/^#elif/{
|
||||
print;
|
||||
next;
|
||||
}
|
||||
/^#if/{
|
||||
level++;
|
||||
sub("[ \t]/[*].*","");
|
||||
if (match($0,"#if[ \t]*1$") > 0)
|
||||
stack[level] = 1;
|
||||
else if (match($0,"#if[ \t]*0$") > 0)
|
||||
stack[level] = -1;
|
||||
else
|
||||
stack[level] = 0;
|
||||
print;
|
||||
next;
|
||||
}
|
||||
/^#else/{
|
||||
if (stack[level] == 1) {
|
||||
stack[level] = -1;
|
||||
} else if (stack[level] == -1) {
|
||||
stack[level] = 1;
|
||||
}
|
||||
print;
|
||||
next;
|
||||
}
|
||||
/^#endif/{
|
||||
--level;
|
||||
print;
|
||||
next;
|
||||
}
|
||||
{
|
||||
if (stack[level] >= 0)
|
||||
print;
|
||||
}' | \
|
||||
sed -n -f $ED1 \
|
||||
| sed -e 's/NCURSES_EXPORT(\(.*\)) \(.*\) (\(.*\))/\1 \2(\3)/' \
|
||||
| sed -f $ED2 \
|
||||
|
||||
@ -84,7 +84,7 @@
|
||||
#define CUR SP_TERMTYPE
|
||||
#endif
|
||||
|
||||
MODULE_ID("$Id: lib_mouse.c,v 1.219 2025/12/30 17:23:24 tom Exp $")
|
||||
MODULE_ID("$Id: lib_mouse.c,v 1.220 2025/12/31 11:45:37 tom Exp $")
|
||||
|
||||
#include <tic.h>
|
||||
|
||||
@ -389,11 +389,11 @@ init_xterm_mouse(SCREEN *sp)
|
||||
sp->_mouse_format = MF_X10;
|
||||
sp->_mouse_xtermcap = tigetstr(UserCap(XM));
|
||||
if (VALID_STRING(sp->_mouse_xtermcap)) {
|
||||
char *code = strstr(sp->_mouse_xtermcap, "[?");
|
||||
const char *code = strstr(sp->_mouse_xtermcap, "[?");
|
||||
if (code != NULL) {
|
||||
code += 2;
|
||||
while ((*code >= '0') && (*code <= '9')) {
|
||||
char *next = code;
|
||||
const char *next = code;
|
||||
while ((*next >= '0') && (*next <= '9')) {
|
||||
++next;
|
||||
}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2018-2024,2025 Thomas E. Dickey *
|
||||
* Copyright 2018-2025,2026 Thomas E. Dickey *
|
||||
* Copyright 1998-2017,2018 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -35,7 +35,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* $Id: curses.priv.h,v 1.741 2025/12/27 21:46:04 tom Exp $
|
||||
* $Id: curses.priv.h,v 1.744 2026/01/13 08:51:14 tom Exp $
|
||||
*
|
||||
* curses.priv.h
|
||||
*
|
||||
@ -956,11 +956,14 @@ typedef int (*TYPE_Gpm_GetEvent) (Gpm_Event *);
|
||||
* the converted path with the MinGW32 base directory.
|
||||
*/
|
||||
#if MIXEDCASE_FILENAMES
|
||||
#define LEAF_FMT "./%c"
|
||||
#define LEAF_LEN 3
|
||||
#else
|
||||
#define LEAF_FMT "%c"
|
||||
#define LEAF_LEN 1
|
||||
#elif USE_DOS_PATHS
|
||||
#define LEAF_FMT "./%02x"
|
||||
#define LEAF_LEN 4
|
||||
#else
|
||||
#define LEAF_FMT "%02x"
|
||||
#define LEAF_LEN 2
|
||||
#endif
|
||||
|
||||
/*
|
||||
@ -1833,6 +1836,8 @@ extern NCURSES_EXPORT(const char *) _nc_viscbuf (const NCURSES_CH_T *, int);
|
||||
|
||||
#define START_TRACE() /* nothing */
|
||||
|
||||
#define USE_TRACEF(mask) 0
|
||||
|
||||
#define T(a)
|
||||
#define TR(n, a)
|
||||
#define TPUTS_TRACE(s)
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# $Id: modules,v 1.133 2025/12/30 15:13:55 tom Exp $
|
||||
# $Id: modules,v 1.134 2026/01/14 01:21:25 tom Exp $
|
||||
##############################################################################
|
||||
# Copyright 2019-2020,2025 Thomas E. Dickey #
|
||||
# Copyright 2019-2025,2026 Thomas E. Dickey #
|
||||
# Copyright 1998-2013,2017 Free Software Foundation, Inc. #
|
||||
# #
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a #
|
||||
@ -68,7 +68,7 @@ lib_isendwin lib $(base) $(HEADER_DEPS)
|
||||
lib_leaveok lib $(base) $(HEADER_DEPS)
|
||||
lib_mouse lib $(base) $(HEADER_DEPS) $(INCDIR)/tic.h
|
||||
lib_move lib $(base) $(HEADER_DEPS)
|
||||
lib_mvcur lib $(serial) $(HEADER_DEPS) $(INCDIR)/tic.h $(srcdir)/../progs/dump_entry.h
|
||||
lib_mvcur lib $(serial) $(HEADER_DEPS)
|
||||
lib_mvwin lib $(base) $(HEADER_DEPS)
|
||||
lib_newterm lib $(base) $(HEADER_DEPS) $(INCDIR)/tic.h
|
||||
lib_newwin lib $(base) $(HEADER_DEPS)
|
||||
|
||||
@ -98,7 +98,7 @@
|
||||
#include <ctype.h>
|
||||
#include <tic.h>
|
||||
|
||||
MODULE_ID("$Id: captoinfo.c,v 1.109 2025/11/23 20:22:38 tom Exp $")
|
||||
MODULE_ID("$Id: captoinfo.c,v 1.110 2025/12/31 11:46:29 tom Exp $")
|
||||
|
||||
#if 0
|
||||
#define DEBUG_THIS(p) DEBUG(9, p)
|
||||
@ -657,7 +657,7 @@ _nc_infotocap(const char *cap GCC_UNUSED, const char *str, int const parameteriz
|
||||
*str &&
|
||||
((trimmed == NULL) || (str < trimmed)); str++) {
|
||||
int c1, c2;
|
||||
char *cp = NULL;
|
||||
const char *cp = NULL;
|
||||
|
||||
if (str[0] == '^') {
|
||||
if (str[1] == '\0' || (str + 1) == trimmed) {
|
||||
|
||||
@ -48,7 +48,7 @@
|
||||
|
||||
#include <tic.h>
|
||||
|
||||
MODULE_ID("$Id: comp_parse.c,v 1.141 2025/12/27 12:33:34 tom Exp $")
|
||||
MODULE_ID("$Id: comp_parse.c,v 1.142 2025/12/31 11:46:54 tom Exp $")
|
||||
|
||||
static void sanity_check2(TERMTYPE2 *, bool);
|
||||
NCURSES_IMPEXP void (NCURSES_API *_nc_check_termtype2) (TERMTYPE2 *, bool) = sanity_check2;
|
||||
@ -111,7 +111,7 @@ check_collisions(char *n1, char *n2, int counter)
|
||||
{
|
||||
const char *pstart;
|
||||
const char *qstart;
|
||||
char *pend, *qend;
|
||||
const char *pend, *qend;
|
||||
char nc1[NAMEBUFFER_SIZE];
|
||||
char nc2[NAMEBUFFER_SIZE];
|
||||
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2020-2023,2024 Thomas E. Dickey *
|
||||
* Copyright 2020-2024,2026 Thomas E. Dickey *
|
||||
* Copyright 1999-2010,2016 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -30,7 +30,7 @@
|
||||
#include <curses.priv.h>
|
||||
#include <tic.h> /* struct tinfo_fkeys */
|
||||
|
||||
MODULE_ID("$Id: init_keytry.c,v 1.22 2024/12/07 18:14:49 tom Exp $")
|
||||
MODULE_ID("$Id: init_keytry.c,v 1.24 2026/01/18 00:53:15 tom Exp $")
|
||||
|
||||
/*
|
||||
** _nc_init_keytry()
|
||||
@ -89,6 +89,8 @@ _nc_init_keytry(SCREEN *sp)
|
||||
* Add any of the extended strings to the tries if their name begins
|
||||
* with 'k', i.e., they follow the convention of other terminfo key
|
||||
* names.
|
||||
*
|
||||
* The "alt_" is a special case, for djgpp.
|
||||
*/
|
||||
{
|
||||
TERMTYPE *tp = &(sp->_term->type);
|
||||
@ -96,7 +98,7 @@ _nc_init_keytry(SCREEN *sp)
|
||||
const char *name = ExtStrname(tp, (int) n, strnames);
|
||||
const char *value = tp->Strings[n];
|
||||
if (name != NULL
|
||||
&& *name == 'k'
|
||||
&& ((*name == 'k') || !strncmp(name, "alt_", 4))
|
||||
&& VALID_STRING(value)
|
||||
&& NCURSES_SP_NAME(key_defined) (NCURSES_SP_ARGx
|
||||
value) == 0) {
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2018-2024,2025 Thomas E. Dickey *
|
||||
* Copyright 2018-2025,2026 Thomas E. Dickey *
|
||||
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -160,7 +160,7 @@
|
||||
#define CUR SP_TERMTYPE
|
||||
#endif
|
||||
|
||||
MODULE_ID("$Id: lib_mvcur.c,v 1.167 2025/12/27 12:34:03 tom Exp $")
|
||||
MODULE_ID("$Id: lib_mvcur.c,v 1.168 2026/01/13 08:43:39 tom Exp $")
|
||||
|
||||
#define WANT_CHAR(sp, y, x) NewScreen(sp)->_line[y].text[x] /* desired state */
|
||||
|
||||
@ -175,6 +175,29 @@ MODULE_ID("$Id: lib_mvcur.c,v 1.167 2025/12/27 12:34:03 tom Exp $")
|
||||
|
||||
static bool profiling = FALSE;
|
||||
static float diff;
|
||||
|
||||
#define tputs TestTPUTS
|
||||
#define tputs_sp TestTPUTS_sp
|
||||
#define putp TestPUTP
|
||||
|
||||
static unsigned long xmits;
|
||||
|
||||
/* these override lib_tputs.c */
|
||||
static int
|
||||
NCURSES_SP_NAME(TestTPUTS)(NCURSES_SP_DCLx
|
||||
const char *string,
|
||||
int affcnt GCC_UNUSED,
|
||||
NCURSES_SP_OUTC outc)
|
||||
/* stub tputs() that dumps sequences in a visible form */
|
||||
{
|
||||
(void) SP_PARM;
|
||||
(void) outc;
|
||||
if (profiling)
|
||||
xmits += strlen(string);
|
||||
else
|
||||
(void) fputs(_nc_visbuf(string), stdout);
|
||||
return (OK);
|
||||
}
|
||||
#endif /* MAIN */
|
||||
|
||||
#undef NCURSES_OUTC_FUNC
|
||||
@ -1154,39 +1177,6 @@ NCURSES_EXPORT_VAR(int) _nc_optimize_enable = OPTIMIZE_ALL;
|
||||
|
||||
NCURSES_EXPORT_VAR(const char *) _nc_progname = "mvcur";
|
||||
|
||||
static unsigned long xmits;
|
||||
|
||||
/* these override lib_tputs.c */
|
||||
NCURSES_EXPORT(int)
|
||||
tputs(const char *string, int affcnt GCC_UNUSED, int (*outc) (int) GCC_UNUSED)
|
||||
/* stub tputs() that dumps sequences in a visible form */
|
||||
{
|
||||
if (profiling)
|
||||
xmits += strlen(string);
|
||||
else
|
||||
(void) fputs(_nc_visbuf(string), stdout);
|
||||
return (OK);
|
||||
}
|
||||
|
||||
NCURSES_EXPORT(int)
|
||||
putp(const char *string)
|
||||
{
|
||||
return (tputs(string, 1, _nc_outch));
|
||||
}
|
||||
|
||||
NCURSES_EXPORT(int)
|
||||
_nc_outch(int ch)
|
||||
{
|
||||
putc(ch, stdout);
|
||||
return OK;
|
||||
}
|
||||
|
||||
NCURSES_EXPORT(int)
|
||||
delay_output(int ms GCC_UNUSED)
|
||||
{
|
||||
return OK;
|
||||
}
|
||||
|
||||
static char tname[PATH_MAX];
|
||||
|
||||
static void
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2020,2024 Thomas E. Dickey *
|
||||
* Copyright 2020-2024,2026 Thomas E. Dickey
|
||||
* Copyright 2010 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -28,7 +28,7 @@
|
||||
****************************************************************************/
|
||||
#include <curses.priv.h>
|
||||
|
||||
MODULE_ID("$Id: wcwidth.c,v 1.5 2024/05/04 18:31:39 tom Exp $")
|
||||
MODULE_ID("$Id: wcwidth.c,v 1.6 2026/01/03 11:43:50 tom Exp $")
|
||||
|
||||
#if USE_WIDEC_SUPPORT
|
||||
#define mk_wcwidth(ucs) _nc_wcwidth(ucs)
|
||||
@ -36,11 +36,21 @@ MODULE_ID("$Id: wcwidth.c,v 1.5 2024/05/04 18:31:39 tom Exp $")
|
||||
#define mk_wcwidth_cjk(ucs) _nc_wcwidth_cjk(ucs)
|
||||
#define mk_wcswidth_cjk(pwcs, n) _nc_wcswidth_cjk(pwcs, n)
|
||||
|
||||
NCURSES_EXPORT(void) mk_wcwidth_init(int);
|
||||
#include <stddef.h>
|
||||
|
||||
typedef enum {
|
||||
WcUnknown = 0
|
||||
,WcSoftHyphen = 1 /* soft-hyphen is spacing, e.g., Latin-1 */
|
||||
,WcPrivateFullwidth = 2 /* private-use codes can be fullwidth in CJK */
|
||||
,WcEmojiFullwidth = 4 /* Emojis are fullwidth */
|
||||
} WcModes;
|
||||
|
||||
NCURSES_EXPORT(int) mk_wcwidth_init(int);
|
||||
NCURSES_EXPORT(int) mk_wcwidth(uint32_t);
|
||||
NCURSES_EXPORT(int) mk_wcswidth(const uint32_t *, size_t);
|
||||
NCURSES_EXPORT(int) mk_wcwidth_cjk(uint32_t);
|
||||
NCURSES_EXPORT(int) mk_wcswidth_cjk(const uint32_t *, size_t);
|
||||
NCURSES_EXPORT(int) mk_is_emoji(wchar_t ucs);
|
||||
|
||||
#include <wcwidth.h>
|
||||
#else
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
ncurses6td (6.6+20251230) unstable; urgency=low
|
||||
ncurses6td (6.6+20260124) unstable; urgency=low
|
||||
|
||||
* latest weekly patch
|
||||
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Tue, 30 Dec 2025 15:44:53 -0500
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 24 Jan 2026 05:50:05 -0500
|
||||
|
||||
ncurses6 (5.9+20131005) unstable; urgency=low
|
||||
|
||||
|
||||
@ -4,7 +4,7 @@ Upstream-Contact: Thomas E. Dickey <dickey@invisible-island.net>
|
||||
Source: https://invisible-island.net/ncurses/ncurses.html
|
||||
|
||||
Files: *
|
||||
Copyright: 2017-2024,2025 by Thomas E. Dickey
|
||||
Copyright: 2017-2025,2026 by Thomas E. Dickey
|
||||
1998-2016,2017 Free Software Foundation, Inc.
|
||||
License: X11 License Distribution Modification Variant
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
@ -34,7 +34,7 @@ Comment:
|
||||
https://invisible-island.net/ncurses/ncurses-license.html
|
||||
|
||||
Files: aclocal.m4 package
|
||||
Copyright: 1996-2024,2025 by Thomas E. Dickey
|
||||
Copyright: 1996-2025,2026 by Thomas E. Dickey
|
||||
License: X11 License Distribution Modification Variant
|
||||
|
||||
Files: doc/html/NCURSES-Programming-HOWTO.html
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
ncurses6td (6.6+20251230) unstable; urgency=low
|
||||
ncurses6td (6.6+20260124) unstable; urgency=low
|
||||
|
||||
* latest weekly patch
|
||||
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Tue, 30 Dec 2025 15:44:53 -0500
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 24 Jan 2026 05:50:05 -0500
|
||||
|
||||
ncurses6 (5.9+20131005) unstable; urgency=low
|
||||
|
||||
|
||||
@ -4,7 +4,7 @@ Upstream-Contact: Thomas E. Dickey <dickey@invisible-island.net>
|
||||
Source: https://invisible-island.net/ncurses/ncurses.html
|
||||
|
||||
Files: *
|
||||
Copyright: 2017-2024,2025 by Thomas E. Dickey
|
||||
Copyright: 2017-2025,2026 by Thomas E. Dickey
|
||||
1998-2016,2017 Free Software Foundation, Inc.
|
||||
License: X11 License Distribution Modification Variant
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
@ -34,7 +34,7 @@ Comment:
|
||||
https://invisible-island.net/ncurses/ncurses-license.html
|
||||
|
||||
Files: aclocal.m4 package
|
||||
Copyright: 1996-2024,2025 by Thomas E. Dickey
|
||||
Copyright: 1996-2025,2026 by Thomas E. Dickey
|
||||
License: X11 License Distribution Modification Variant
|
||||
|
||||
Files: doc/html/NCURSES-Programming-HOWTO.html
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
ncurses6td (6.6+20251230) unstable; urgency=low
|
||||
ncurses6td (6.6+20260124) unstable; urgency=low
|
||||
|
||||
* latest weekly patch
|
||||
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Tue, 30 Dec 2025 15:44:53 -0500
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 24 Jan 2026 05:50:05 -0500
|
||||
|
||||
ncurses6 (5.9+20120608) unstable; urgency=low
|
||||
|
||||
|
||||
@ -4,7 +4,7 @@ Upstream-Contact: Thomas E. Dickey <dickey@invisible-island.net>
|
||||
Source: https://invisible-island.net/ncurses/ncurses.html
|
||||
|
||||
Files: *
|
||||
Copyright: 2017-2024,2025 by Thomas E. Dickey
|
||||
Copyright: 2017-2025,2026 by Thomas E. Dickey
|
||||
1998-2016,2017 Free Software Foundation, Inc.
|
||||
License: X11 License Distribution Modification Variant
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
@ -34,7 +34,7 @@ Comment:
|
||||
https://invisible-island.net/ncurses/ncurses-license.html
|
||||
|
||||
Files: aclocal.m4 package
|
||||
Copyright: 1996-2024,2025 by Thomas E. Dickey
|
||||
Copyright: 1996-2025,2026 by Thomas E. Dickey
|
||||
License: X11 License Distribution Modification Variant
|
||||
|
||||
Files: doc/html/NCURSES-Programming-HOWTO.html
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
# $Id: ncurses6td.lintian-overrides,v 1.3 2025/06/14 19:43:41 tom Exp $
|
||||
# $Id: ncurses6td.lintian-overrides,v 1.4 2026/01/14 09:51:05 tom Exp $
|
||||
|
||||
# This is intentional.
|
||||
ncurses6td: package-name-doesnt-match-sonames libformw6-6 libmenuw6-6 libncurses++w6-6 libncursesw6-6 libpanelw6-6 libticw6-6 libtinfow6-6
|
||||
@ -6,6 +6,6 @@ ncurses6td: package-name-doesnt-match-sonames libformw6-6 libmenuw6-6 libncurses
|
||||
# This is intentional.
|
||||
ncurses6td: no-manual-page
|
||||
ncurses6td: non-dev-pkg-with-shlib-symlink
|
||||
ncurses6td: embedded-library ncurses [usr/lib/x86_64-linux-gnu/libtinfow6.so.6.5]
|
||||
ncurses6td: embedded-library ncurses [usr/lib/x86_64-linux-gnu/libtinfow6.so.6.6]
|
||||
|
||||
# vile: confmode
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
# $Id: ncursest6td.lintian-overrides,v 1.3 2025/06/14 19:43:41 tom Exp $
|
||||
# $Id: ncursest6td.lintian-overrides,v 1.4 2026/01/14 09:51:13 tom Exp $
|
||||
|
||||
# This is intentional.
|
||||
ncursest6td: package-name-doesnt-match-sonames libformtw6-6 libmenutw6-6 libncurses++tw6-6 libncursestw6-6 libpaneltw6-6 libtictw6-6 libtinfotw6-6
|
||||
@ -6,6 +6,6 @@ ncursest6td: package-name-doesnt-match-sonames libformtw6-6 libmenutw6-6 libncur
|
||||
# This is intentional.
|
||||
ncursest6td: no-manual-page
|
||||
ncursest6td: non-dev-pkg-with-shlib-symlink
|
||||
ncursest6td: embedded-library ncurses [usr/lib/x86_64-linux-gnu/libtinfotw6.so.6.5]
|
||||
ncursest6td: embedded-library ncurses [usr/lib/x86_64-linux-gnu/libtinfotw6.so.6.6]
|
||||
|
||||
# vile: confmode
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
; $Id: mingw-ncurses.nsi,v 1.740 2025/12/30 20:44:53 tom Exp $
|
||||
; $Id: mingw-ncurses.nsi,v 1.745 2026/01/24 10:50:05 tom Exp $
|
||||
|
||||
; TODO add examples
|
||||
; TODO bump ABI to 6
|
||||
@ -9,8 +9,8 @@
|
||||
|
||||
!define VERSION_MAJOR "6"
|
||||
!define VERSION_MINOR "6"
|
||||
!define VERSION_YYYY "2025"
|
||||
!define VERSION_MMDD "1230"
|
||||
!define VERSION_YYYY "2026"
|
||||
!define VERSION_MMDD "0124"
|
||||
!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
|
||||
|
||||
!define MY_ABI "5"
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
Summary: shared libraries for terminal handling
|
||||
Name: mingw32-ncurses6
|
||||
Version: 6.6
|
||||
Release: 20251230
|
||||
Release: 20260124
|
||||
License: X11 License Distribution Modification Variant
|
||||
Group: Development/Libraries
|
||||
URL: https://invisible-island.net/ncurses/
|
||||
@ -144,8 +144,8 @@ popd
|
||||
|
||||
%changelog
|
||||
|
||||
* Tue Dec 30 2025 Thomas E. Dickey
|
||||
- testing ncurses 6.6-20251230
|
||||
* Sat Jan 24 2026 Thomas E. Dickey
|
||||
- testing ncurses 6.6-20260124
|
||||
|
||||
* Sat Feb 25 2023 Thomas Dickey
|
||||
- amend URLs per rpmlint
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
Summary: shared libraries for terminal handling
|
||||
Name: ncurses6
|
||||
Version: 6.6
|
||||
Release: 20251230
|
||||
Release: 20260124
|
||||
License: X11 License Distribution Modification Variant
|
||||
Group: Development/Libraries
|
||||
URL: https://invisible-island.net/ncurses/
|
||||
@ -134,8 +134,8 @@ rm -f test/ncurses
|
||||
|
||||
%changelog
|
||||
|
||||
* Tue Dec 30 2025 Thomas E. Dickey
|
||||
- testing ncurses 6.6-20251230
|
||||
* Sat Jan 24 2026 Thomas E. Dickey
|
||||
- testing ncurses 6.6-20260124
|
||||
|
||||
* Sat Feb 25 2023 Thomas Dickey
|
||||
- amend URLs per rpmlint
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
Summary: Curses library with POSIX thread support.
|
||||
Name: ncursest6
|
||||
Version: 6.6
|
||||
Release: 20251230
|
||||
Release: 20260124
|
||||
License: X11 License Distribution Modification Variant
|
||||
Group: Development/Libraries
|
||||
Source: ncurses-%{version}-%{release}.tgz
|
||||
@ -142,8 +142,8 @@ exit 0
|
||||
|
||||
%changelog
|
||||
|
||||
* Tue Dec 30 2025 Thomas E. Dickey
|
||||
- testing ncurses 6.6-20251230
|
||||
* Sat Jan 24 2026 Thomas E. Dickey
|
||||
- testing ncurses 6.6-20260124
|
||||
|
||||
* Tue Dec 24 2019 Thomas Dickey
|
||||
- drop custom CC_NORMAL warning flags because setting CFLAGS interferes with
|
||||
|
||||
@ -49,7 +49,7 @@
|
||||
#include <parametrized.h>
|
||||
#include <transform.h>
|
||||
|
||||
MODULE_ID("$Id: tic.c,v 1.334 2025/12/25 21:27:48 tom Exp $")
|
||||
MODULE_ID("$Id: tic.c,v 1.335 2025/12/31 12:03:37 tom Exp $")
|
||||
|
||||
#define STDIN_NAME "<stdin>"
|
||||
|
||||
@ -619,7 +619,7 @@ valid_db_path(const char *nominal)
|
||||
if (leaf) {
|
||||
char save = result[leaf];
|
||||
result[leaf] = 0;
|
||||
if (_nc_is_path_found(result, &sb)
|
||||
if (_nc_is_path_found(result, &sb)
|
||||
&& S_ISDIR(sb.st_mode)
|
||||
&& access(result, R_OK | W_OK | X_OK) == 0) {
|
||||
result[leaf] = save;
|
||||
|
||||
42
test/aclocal.m4
vendored
42
test/aclocal.m4
vendored
@ -27,7 +27,7 @@ dnl sale, use or other dealings in this Software without prior written *
|
||||
dnl authorization. *
|
||||
dnl***************************************************************************
|
||||
dnl
|
||||
dnl $Id: aclocal.m4,v 1.245 2025/12/25 23:50:50 tom Exp $
|
||||
dnl $Id: aclocal.m4,v 1.248 2026/01/24 19:31:26 tom Exp $
|
||||
dnl
|
||||
dnl Author: Thomas E. Dickey
|
||||
dnl
|
||||
@ -604,7 +604,7 @@ AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <stdio.h>],[printf("Hello world");])],
|
||||
fi
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_CHECK_CURSES_LIB version: 5 updated: 2025/12/24 13:18:10
|
||||
dnl CF_CHECK_CURSES_LIB version: 6 updated: 2026/01/24 14:31:00
|
||||
dnl -------------------
|
||||
dnl $1 = nominal library name, used also for header lookup
|
||||
dnl $2 = suffix to append to library name
|
||||
@ -635,9 +635,9 @@ elif test "x${PKG_CONFIG:=none}" != xnone; then
|
||||
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <$1.h>],
|
||||
[(void) $3 ( ]ifelse([$4],,,[[$4]])[ );])],
|
||||
[AC_TRY_RUN([#include <$1.h>
|
||||
[AC_RUN_IFELSE([AC_LANG_SOURCE([#include <$1.h>
|
||||
int main(void)
|
||||
{ (void) $3 ( ]ifelse([$4],,,[[$4]])[ ); return 0; }],
|
||||
{ (void) $3 ( ]ifelse([$4],,,[[$4]])[ ); return 0; }])],
|
||||
[cf_have_curses_lib=yes],
|
||||
[cf_have_curses_lib=no],
|
||||
[cf_have_curses_lib=maybe])],
|
||||
@ -813,7 +813,7 @@ done
|
||||
test "$cf_cv_curses_acs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_ACS_ARRAY,$cf_cv_curses_acs_map,[Define as needed to override ncurses prefix _nc_])
|
||||
])
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_CURSES_CHECK_DATA version: 10 updated: 2021/01/04 19:45:09
|
||||
dnl CF_CURSES_CHECK_DATA version: 12 updated: 2026/01/24 14:31:00
|
||||
dnl --------------------
|
||||
dnl Check if curses.h defines the given data/variable.
|
||||
dnl Use this after CF_NCURSES_CONFIG or CF_CURSES_CONFIG.
|
||||
@ -839,14 +839,14 @@ if test "$cf_result" = yes ; then
|
||||
else
|
||||
AC_MSG_CHECKING(for data $cf_data in library)
|
||||
# BSD linkers insist on making weak linkage, but resolve at runtime.
|
||||
AC_TRY_RUN(CF__CURSES_HEAD
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE(CF__CURSES_HEAD
|
||||
[
|
||||
extern char $cf_data;
|
||||
int main(void)
|
||||
{
|
||||
]CF__CURSES_DATA(foo,$cf_data)[
|
||||
${cf_cv_main_return:-return}(foo == 0);
|
||||
}],[cf_result=yes
|
||||
}])],[cf_result=yes
|
||||
],[cf_result=no],[
|
||||
# cross-compiling
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM(CF__CURSES_HEAD
|
||||
@ -1701,24 +1701,24 @@ fi
|
||||
AC_SUBST(EXTRA_CFLAGS)
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_FUNC_CURSES_VERSION version: 9 updated: 2023/01/05 18:06:10
|
||||
dnl CF_FUNC_CURSES_VERSION version: 10 updated: 2026/01/24 14:31:00
|
||||
dnl ----------------------
|
||||
dnl Solaris has a data item 'curses_version', which confuses AC_CHECK_FUNCS.
|
||||
dnl It's a character string "SVR4", not documented.
|
||||
AC_DEFUN([CF_FUNC_CURSES_VERSION],
|
||||
[
|
||||
AC_CACHE_CHECK(for function curses_version, cf_cv_func_curses_version,[
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
$ac_includes_default
|
||||
|
||||
#include <${cf_cv_ncurses_header:-curses.h}>
|
||||
|
||||
int main(void)
|
||||
{
|
||||
char temp[1024];
|
||||
char temp[[1024]];
|
||||
sprintf(temp, "%.999s\\n", curses_version());
|
||||
${cf_cv_main_return:-return}(0);
|
||||
}]
|
||||
}])]
|
||||
,[cf_cv_func_curses_version=yes]
|
||||
,[cf_cv_func_curses_version=no]
|
||||
,[cf_cv_func_curses_version=unknown])
|
||||
@ -2589,7 +2589,7 @@ CF_SUBDIR_PATH($1,$2,lib)
|
||||
$1="$cf_library_path_list [$]$1"
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_MAKE_PHONY version: 4 updated: 2025/12/24 12:27:29
|
||||
dnl CF_MAKE_PHONY version: 5 updated: 2025/12/27 13:03:23
|
||||
dnl -------------
|
||||
dnl Check if the make-program handles a ".PHONY" target, e.g,. a target which
|
||||
dnl acts as a placeholder.
|
||||
@ -2615,7 +2615,7 @@ dnl
|
||||
dnl + Version 3.8 of the dmake program in January 1992 also implemented this
|
||||
dnl GNU make extension, but is less well known than the BSD make.
|
||||
AC_DEFUN([CF_MAKE_PHONY],[
|
||||
AC_CACHE_CHECK(for \".PHONY\" make-support, cf_cv_make_PHONY,[
|
||||
AC_CACHE_CHECK(for ".PHONY" make-support, cf_cv_make_PHONY,[
|
||||
rm -rf conftest*
|
||||
(
|
||||
mkdir conftest || exit 1
|
||||
@ -2829,7 +2829,7 @@ printf("old\\n");
|
||||
,[$1=no])
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_NCURSES_CONFIG version: 30 updated: 2025/12/22 04:16:14
|
||||
dnl CF_NCURSES_CONFIG version: 31 updated: 2026/01/18 10:40:15
|
||||
dnl -----------------
|
||||
dnl Tie together the configure-script macros for ncurses, preferring these in
|
||||
dnl order:
|
||||
@ -2869,9 +2869,9 @@ if test "x${PKG_CONFIG:=none}" != xnone; then
|
||||
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <${cf_cv_ncurses_header:-curses.h}>],
|
||||
[initscr(); mousemask(0,0); tigetstr((char *)0);])],
|
||||
[AC_TRY_RUN([#include <${cf_cv_ncurses_header:-curses.h}>
|
||||
[AC_RUN_IFELSE([AC_LANG_SOURCE([#include <${cf_cv_ncurses_header:-curses.h}>
|
||||
int main(void)
|
||||
{ const char *xx = curses_version(); return (xx == 0); }],
|
||||
{ const char *xx = curses_version(); return (xx == 0); }])],
|
||||
[cf_test_ncuconfig=yes],
|
||||
[cf_test_ncuconfig=no],
|
||||
[cf_test_ncuconfig=maybe])],
|
||||
@ -2896,9 +2896,9 @@ if test "x${PKG_CONFIG:=none}" != xnone; then
|
||||
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <${cf_cv_ncurses_header:-curses.h}>],
|
||||
[initscr(); mousemask(0,0); tigetstr((char *)0);])],
|
||||
[AC_TRY_RUN([#include <${cf_cv_ncurses_header:-curses.h}>
|
||||
[AC_RUN_IFELSE([AC_LANG_SOURCE([#include <${cf_cv_ncurses_header:-curses.h}>
|
||||
int main(void)
|
||||
{ const char *xx = curses_version(); return (xx == 0); }],
|
||||
{ const char *xx = curses_version(); return (xx == 0); }])],
|
||||
[cf_have_ncuconfig=yes],
|
||||
[cf_have_ncuconfig=no],
|
||||
[cf_have_ncuconfig=maybe])],
|
||||
@ -3194,7 +3194,7 @@ then
|
||||
fi
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_NCURSES_VERSION version: 19 updated: 2025/12/22 04:16:14
|
||||
dnl CF_NCURSES_VERSION version: 20 updated: 2026/01/18 10:40:15
|
||||
dnl ------------------
|
||||
dnl Check for the version of ncurses, to aid in reporting bugs, etc.
|
||||
dnl Call CF_CURSES_CPPFLAGS first, or CF_NCURSES_CPPFLAGS. We don't use
|
||||
@ -3206,7 +3206,7 @@ AC_CACHE_CHECK(for ncurses version, cf_cv_ncurses_version,[
|
||||
cf_cv_ncurses_version=no
|
||||
cf_tempfile=out$$
|
||||
rm -f "$cf_tempfile"
|
||||
AC_TRY_RUN([
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
$ac_includes_default
|
||||
|
||||
#include <${cf_cv_ncurses_header:-curses.h}>
|
||||
@ -3228,7 +3228,7 @@ int main(void)
|
||||
# endif
|
||||
#endif
|
||||
${cf_cv_main_return:-return}(0);
|
||||
}],[
|
||||
}])],[
|
||||
cf_cv_ncurses_version=`cat $cf_tempfile`],,[
|
||||
|
||||
# This will not work if the preprocessor splits the line after the
|
||||
|
||||
14
test/configure
vendored
14
test/configure
vendored
@ -1,8 +1,8 @@
|
||||
#! /bin/sh
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by Autoconf 2.52.20250126.
|
||||
# Generated by Autoconf 2.52.20260118.
|
||||
#
|
||||
# Copyright 2003-2022,2023 Thomas E. Dickey
|
||||
# Copyright 2003-2025,2026 Thomas E. Dickey
|
||||
# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
|
||||
# Free Software Foundation, Inc.
|
||||
# This configure script is free software; the Free Software Foundation
|
||||
@ -798,7 +798,7 @@ test -n "$ac_init_help" && exit 0
|
||||
if "$ac_init_version"; then
|
||||
cat <<\EOF
|
||||
|
||||
Copyright 2003-2022,2023 Thomas E. Dickey
|
||||
Copyright 2003-2025,2026 Thomas E. Dickey
|
||||
Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
|
||||
Free Software Foundation, Inc.
|
||||
This configure script is free software; the Free Software Foundation
|
||||
@ -812,7 +812,7 @@ This file contains any messages produced by compilers while
|
||||
running configure, to aid debugging if configure makes a mistake.
|
||||
|
||||
It was created by $as_me, which was
|
||||
generated by GNU Autoconf 2.52.20250126. Invocation command line was
|
||||
generated by GNU Autoconf 2.52.20260118. Invocation command line was
|
||||
|
||||
$ $0 $@
|
||||
|
||||
@ -24656,10 +24656,10 @@ EOF
|
||||
cat >>"$CONFIG_STATUS" <<EOF
|
||||
ac_cs_version="\\
|
||||
config.status
|
||||
configured by $0, generated by GNU Autoconf 2.52.20250126,
|
||||
configured by $0, generated by GNU Autoconf 2.52.20260118,
|
||||
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
|
||||
|
||||
Copyright 2003-2022,2023 Thomas E. Dickey
|
||||
Copyright 2003-2023,2025 Thomas E. Dickey
|
||||
Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
|
||||
Free Software Foundation, Inc.
|
||||
This config.status script is free software; the Free Software Foundation
|
||||
@ -24739,7 +24739,7 @@ cat >&5 << _ACEOF
|
||||
## Running config.status. ##
|
||||
## ----------------------- ##
|
||||
|
||||
This file was extended by $as_me 2.52.20250126, executed with
|
||||
This file was extended by $as_me 2.52.20260118, executed with
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
CONFIG_HEADERS = $CONFIG_HEADERS
|
||||
CONFIG_LINKS = $CONFIG_LINKS
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2018-2024,2025 Thomas E. Dickey *
|
||||
* Copyright 2018-2025,2026 Thomas E. Dickey *
|
||||
* Copyright 2017 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -27,7 +27,7 @@
|
||||
* authorization. *
|
||||
****************************************************************************/
|
||||
/*
|
||||
* $Id: demo_new_pair.c,v 1.34 2025/08/08 15:47:32 tom Exp $
|
||||
* $Id: demo_new_pair.c,v 1.35 2026/01/10 20:36:29 tom Exp $
|
||||
*
|
||||
* Demonstrate the alloc_pair() function.
|
||||
*/
|
||||
@ -167,7 +167,7 @@ VERSION_COMMON()
|
||||
int
|
||||
main(int argc, char *argv[])
|
||||
{
|
||||
static const char *help[] =
|
||||
static NCURSES_CONST char *help[] =
|
||||
{
|
||||
"This program iterates over the possible color combinations,",
|
||||
"allocating or initializing color pairs. For best results,",
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2019-2024,2025 Thomas E. Dickey *
|
||||
* Copyright 2019-2025,2026 Thomas E. Dickey *
|
||||
* Copyright 2005-2016,2017 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -30,7 +30,7 @@
|
||||
/*
|
||||
* Author: Thomas E. Dickey
|
||||
*
|
||||
* $Id: demo_termcap.c,v 1.75 2025/07/05 15:11:35 tom Exp $
|
||||
* $Id: demo_termcap.c,v 1.76 2026/01/11 12:03:22 tom Exp $
|
||||
*
|
||||
* A simple demo of the termcap interface.
|
||||
*/
|
||||
@ -867,7 +867,7 @@ main(int argc, char *argv[])
|
||||
} else if ((name = getenv("TERM")) != NULL) {
|
||||
brute_force(name);
|
||||
} else {
|
||||
static NCURSES_CONST char dumb[] = "dumb";
|
||||
static NCURSES_CONST char dumb[] = DEFAULT_TERM_ENV;
|
||||
brute_force(dumb);
|
||||
}
|
||||
}
|
||||
@ -894,7 +894,7 @@ main(int argc, char *argv[])
|
||||
} else if ((name = getenv("TERM")) != NULL) {
|
||||
demo_termcap(name);
|
||||
} else {
|
||||
static NCURSES_CONST char dumb[] = "dumb";
|
||||
static NCURSES_CONST char dumb[] = DEFAULT_TERM_ENV;
|
||||
demo_termcap(dumb);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2019-2024,2025 Thomas E. Dickey *
|
||||
* Copyright 2019-2025,2026 Thomas E. Dickey *
|
||||
* Copyright 2009-2016,2017 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -30,7 +30,7 @@
|
||||
/*
|
||||
* Author: Thomas E. Dickey
|
||||
*
|
||||
* $Id: demo_terminfo.c,v 1.64 2025/07/05 15:11:35 tom Exp $
|
||||
* $Id: demo_terminfo.c,v 1.65 2026/01/11 12:03:22 tom Exp $
|
||||
*
|
||||
* A simple demo of the terminfo interface.
|
||||
*/
|
||||
@ -891,7 +891,7 @@ main(int argc, char *argv[])
|
||||
} else if ((name = getenv("TERM")) != NULL) {
|
||||
brute_force(name);
|
||||
} else {
|
||||
static NCURSES_CONST char dumb[] = "dumb";
|
||||
static NCURSES_CONST char dumb[] = DEFAULT_TERM_ENV;
|
||||
brute_force(dumb);
|
||||
}
|
||||
}
|
||||
@ -918,7 +918,7 @@ main(int argc, char *argv[])
|
||||
} else if ((name = getenv("TERM")) != NULL) {
|
||||
demo_terminfo(name);
|
||||
} else {
|
||||
static NCURSES_CONST char dumb[] = "dumb";
|
||||
static NCURSES_CONST char dumb[] = DEFAULT_TERM_ENV;
|
||||
demo_terminfo(dumb);
|
||||
}
|
||||
}
|
||||
|
||||
@ -4,7 +4,7 @@ Upstream-Contact: Thomas E. Dickey <dickey@invisible-island.net>
|
||||
Source: https://invisible-island.net/ncurses/ncurses-examples.html
|
||||
|
||||
Files: *
|
||||
Copyright: 2017-2024,2025 by Thomas E. Dickey
|
||||
Copyright: 2017-2025,2026 by Thomas E. Dickey
|
||||
1998-2016,2017 Free Software Foundation, Inc.
|
||||
License: X11 License Distribution Modification Variant
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
@ -34,7 +34,7 @@ Comment:
|
||||
https://invisible-island.net/ncurses/ncurses-license.html
|
||||
|
||||
Files: aclocal.m4 package
|
||||
Copyright: 2003-2024,2025 by Thomas E. Dickey
|
||||
Copyright: 2003-2025,2026 by Thomas E. Dickey
|
||||
License: X11 License Distribution Modification Variant
|
||||
|
||||
Files: install-sh
|
||||
|
||||
@ -4,7 +4,7 @@ Upstream-Contact: Thomas E. Dickey <dickey@invisible-island.net>
|
||||
Source: https://invisible-island.net/ncurses/ncurses-examples.html
|
||||
|
||||
Files: *
|
||||
Copyright: 2017-2024,2025 by Thomas E. Dickey
|
||||
Copyright: 2017-2025,2026 by Thomas E. Dickey
|
||||
1998-2016,2017 Free Software Foundation, Inc.
|
||||
License: X11 License Distribution Modification Variant
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
@ -34,7 +34,7 @@ Comment:
|
||||
https://invisible-island.net/ncurses/ncurses-license.html
|
||||
|
||||
Files: aclocal.m4 package
|
||||
Copyright: 2003-2024,2025 by Thomas E. Dickey
|
||||
Copyright: 2003-2025,2026 by Thomas E. Dickey
|
||||
License: X11 License Distribution Modification Variant
|
||||
|
||||
Files: install-sh
|
||||
|
||||
@ -4,7 +4,7 @@ Upstream-Contact: Thomas E. Dickey <dickey@invisible-island.net>
|
||||
Source: https://invisible-island.net/ncurses/ncurses-examples.html
|
||||
|
||||
Files: *
|
||||
Copyright: 2017-2024,2025 by Thomas E. Dickey
|
||||
Copyright: 2017-2025,2026 by Thomas E. Dickey
|
||||
1998-2016,2017 Free Software Foundation, Inc.
|
||||
License: X11 License Distribution Modification Variant
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
@ -34,7 +34,7 @@ Comment:
|
||||
https://invisible-island.net/ncurses/ncurses-license.html
|
||||
|
||||
Files: aclocal.m4 package
|
||||
Copyright: 2003-2024,2025 by Thomas E. Dickey
|
||||
Copyright: 2003-2025,2026 by Thomas E. Dickey
|
||||
License: X11 License Distribution Modification Variant
|
||||
|
||||
Files: install-sh
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2019-2024,2025 Thomas E. Dickey *
|
||||
* Copyright 2019-2025,2026 Thomas E. Dickey *
|
||||
* Copyright 2000-2013,2017 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -30,7 +30,7 @@
|
||||
/*
|
||||
* Author: Thomas E. Dickey - 2000
|
||||
*
|
||||
* $Id: railroad.c,v 1.31 2025/12/14 10:58:45 tom Exp $
|
||||
* $Id: railroad.c,v 1.32 2026/01/11 12:03:22 tom Exp $
|
||||
*
|
||||
* A simple demo of the termcap interface.
|
||||
*/
|
||||
@ -185,17 +185,13 @@ onsig(int n GCC_UNUSED)
|
||||
static void
|
||||
railroad(char **args)
|
||||
{
|
||||
NCURSES_CONST char *name = getenv("TERM");
|
||||
NCURSES_CONST char *name;
|
||||
char buffer[1024];
|
||||
char area[1024], *ap = area;
|
||||
int z;
|
||||
|
||||
if (name == NULL)
|
||||
#ifdef DEFAULT_TERM_ENV
|
||||
if ((name = getenv("TERM")) == NULL)
|
||||
name = DEFAULT_TERM_ENV;
|
||||
#else
|
||||
name = "dumb";
|
||||
#endif
|
||||
|
||||
InitAndCatch(z = tgetent(buffer, name), onsig);
|
||||
if (z >= 0) {
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2018-2024,2025 Thomas E. Dickey *
|
||||
* Copyright 2018-2025,2026 Thomas E. Dickey *
|
||||
* Copyright 1998-2017,2018 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -30,7 +30,7 @@
|
||||
/****************************************************************************
|
||||
* Author: Thomas E. Dickey 1996-on *
|
||||
****************************************************************************/
|
||||
/* $Id: test.priv.h,v 1.229 2025/12/06 21:21:06 tom Exp $ */
|
||||
/* $Id: test.priv.h,v 1.230 2026/01/11 12:03:22 tom Exp $ */
|
||||
|
||||
#ifndef __TEST_PRIV_H
|
||||
#define __TEST_PRIV_H 1
|
||||
@ -782,6 +782,10 @@ extern int optind;
|
||||
#define HELP_KEY_1 '?'
|
||||
#define HELP_KEY_2 KEY_F(1)
|
||||
|
||||
#ifndef DEFAULT_TERM_ENV
|
||||
#define DEFAULT_TERM_ENV "dumb"
|
||||
#endif
|
||||
|
||||
/* our "standard" options for getopt, needed for help2man */
|
||||
#define OPTS_COMMAND 'c'
|
||||
#define OPTS_LOGGING 'l'
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2020-2024,2025 Thomas E. Dickey *
|
||||
* Copyright 2020-2025,2026 Thomas E. Dickey *
|
||||
* Copyright 2015,2016 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -30,7 +30,7 @@
|
||||
/*
|
||||
* Author: Thomas E. Dickey
|
||||
*
|
||||
* $Id: test_setupterm.c,v 1.19 2025/07/05 15:21:56 tom Exp $
|
||||
* $Id: test_setupterm.c,v 1.20 2026/01/11 12:03:22 tom Exp $
|
||||
*
|
||||
* A simple demo of setupterm/restartterm.
|
||||
*/
|
||||
@ -242,7 +242,7 @@ main(int argc, char *argv[])
|
||||
|
||||
if (a_opt) {
|
||||
static char predef[][12] =
|
||||
{"vt100", "dumb", "lpr", "unknown", "none-such"};
|
||||
{"vt100", DEFAULT_TERM_ENV, "lpr", "unknown", "none-such"};
|
||||
if (optind < argc) {
|
||||
usage(FALSE);
|
||||
}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2019-2024,2025 Thomas E. Dickey *
|
||||
* Copyright 2019-2025,2026 Thomas E. Dickey *
|
||||
* Copyright 2015-2016,2017 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -30,7 +30,7 @@
|
||||
/*
|
||||
* Author: Thomas E. Dickey
|
||||
*
|
||||
* $Id: test_sgr.c,v 1.28 2025/07/05 15:11:35 tom Exp $
|
||||
* $Id: test_sgr.c,v 1.29 2026/01/11 12:03:22 tom Exp $
|
||||
*
|
||||
* A simple demo of the sgr/sgr0 terminal capabilities.
|
||||
*/
|
||||
@ -369,7 +369,7 @@ main(int argc, char *argv[])
|
||||
} else if ((name = getenv("TERM")) != NULL) {
|
||||
brute_force(name);
|
||||
} else {
|
||||
static const char dumb[] = "dumb";
|
||||
static const char dumb[] = DEFAULT_TERM_ENV;
|
||||
brute_force(dumb);
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user